]> git.mxchange.org Git - simgear.git/blobdiff - simgear/scene/model/shadowvolume.hxx
Modified Files:
[simgear.git] / simgear / scene / model / shadowvolume.hxx
index 11fc71fd28a8ff2f025e5e218094dbb7e409d4b6..8f5ebcde51d8589a128994b6d3c5aaec187315d0 100644 (file)
@@ -23,8 +23,9 @@
 #ifndef _SHADOWVOLUME_HXX
 #define _SHADOWVOLUME_HXX
 
+#include <simgear/compiler.h>
+#include <simgear/props/props.hxx>
 
-#include <plib/sg.h>
 #include <vector>
 #include <map>
 
@@ -72,10 +73,10 @@ private:
                        bool isFacingLight;
                } triData;
 
-               ssgBranch *geometry_leaf;
-               ssgBranch *scenery_object;
-               ssgBranch *lib_object;
-               ssgBranch *first_select;
+               ssgSharedPtr<ssgBranch> geometry_leaf;
+               ssgSharedPtr<ssgBranch> scenery_object;
+               ssgSharedPtr<ssgBranch> lib_object;
+               ssgSharedPtr<ssgBranch> first_select;
                sgVec3 last_lightpos;
                sgMat4 last_transform;
                int frameNumber;
@@ -110,14 +111,14 @@ private:
                void computeShadows(void);
                void traverseTree(ssgBranch *branch);
                void find_trans(void);
-               ssgBranch *scenery_object;
-               ssgBranch *lib_object;
-               ssgBranch *pending_object;
-               ssgBranch *tile;
+               ssgSharedPtr<ssgBranch> scenery_object;
+               ssgSharedPtr<ssgBranch> lib_object;
+               ssgSharedPtr<ssgBranch> pending_object;
+               ssgSharedPtr<ssgBranch> tile;
                ShadowCaster_list parts;
                OccluderType occluder_type;
        };
-       typedef map<ssgBranch *, SceneryObject *> SceneryObject_map;
+       typedef map<ssgSharedPtr<ssgBranch>, SceneryObject *> SceneryObject_map;
 
 
 private:
@@ -130,7 +131,7 @@ private:
        bool    shadowsAC_transp_enabled;
        bool    use_alpha;
        bool    canDoAlpha, canDoStencil;
-       SGPropertyNode *sim_rendering;
+       SGPropertyNode_ptr sim_rendering;
 
        sgVec3 sunPos;
        int frameNumber;
@@ -138,7 +139,7 @@ private:
        sgMat4 CameraViewM;
        double  sun_angle;
        SceneryObject_map sceneryObjects;
-       ssgBranch *ssg_root;
+       ssgSharedPtr<ssgBranch> ssg_root;
        bool shadows_rendered;
 };