(this frees the xml property loader from keeping track of the number of
nodes with the same name that have already been added to the property
tree).
* make some small code cleanups at the core of the property tree.
- turn four #include paths from the "foo" form to <foo>
The quotes form is normally only used for headers with path relative
to the including file's path, though the standard doesn't strictly
mandate this. This is consistent with the rest of sg, it makes the
code's intent clearer and helps to find headers. (And it's a few
milliseconds faster, too.)
This patch changes the shader so the diffuse light element is applied based on the co-linearity of the light vector and the viewing vector. I think this makes sense, as the tree textures don't represent a surface themselves.
set_bucket computed false left border, if the span was greater than 1, longitudes were less than zero
and longitudes were within SG_EPSILON on a full degree. Example: -179.0, +87.5 returned -176, 87
but should return -180, 87.
Discovered by Brian Schack
... I (Mathias Froehlich), believe that it is more performant (for the GPU) to
build the biggest indexed sets possible at the expense of tight culling.
I (Mathias Froehlich) also know that the CPU is more performant on smaller chunks
building the old flat groundcache on such tiles. :)
So this code *was* to balance these two contrary requirements to some degree.
Now we have optimized datastructures for drawing and differently optimized
datastructures for intersection tests.
Modified Files:
simgear/scene/tgdb/obj.cxx
This way the bounding boxes for this geometry is slightly smaller.
Helps ground intersection stuff to avoid the ocean triangles earlier.
Modified Files:
simgear/scene/tgdb/SGOceanTile.cxx
Refactor common code in the BoundingVolumeBuildVisitor.hxx.
Modified Files:
simgear/scene/model/BoundingVolumeBuildVisitor.hxx
simgear/scene/model/ModelRegistry.cxx
simgear/scene/model/ModelRegistry.hxx
Have a more general timestamp implementation.
Very useful for higher accuracy timings.
Modified Files:
simgear/structure/subsystem_mgr.cxx
simgear/structure/subsystem_mgr.hxx
simgear/timing/testtimestamp.cxx simgear/timing/timestamp.cxx
simgear/timing/timestamp.hxx
Add an id field to identify BVHMotionTransforms.
Provide a factory for ids.
Use that to identify velocity data.
Track the lowermost id in the visitors.
Modified Files:
simgear/scene/bvh/BVHLineSegmentVisitor.cxx
simgear/scene/bvh/BVHLineSegmentVisitor.hxx
simgear/scene/bvh/BVHMotionTransform.cxx
simgear/scene/bvh/BVHMotionTransform.hxx
simgear/scene/bvh/BVHNearestPointVisitor.hxx
simgear/scene/bvh/BVHNode.cxx simgear/scene/bvh/BVHNode.hxx
simgear/scene/util/SGSceneUserData.cxx
simgear/scene/util/SGSceneUserData.hxx