mirror of
https://github.com/Open-Cascade-SAS/OCCT.git
synced 2026-07-17 11:51:22 +08:00
This patch eliminates 3 samplers used in ray-tracing mode: //! Texture buffer of data records of bottom-level BVH nodes. Handle(OpenGl_TextureBufferArb) myObjectNodeInfoTexture; //! Texture buffer of minimum points of bottom-level BVH nodes. Handle(OpenGl_TextureBufferArb) myObjectMinPointTexture; //! Texture buffer of maximum points of bottom-level BVH nodes. Handle(OpenGl_TextureBufferArb) myObjectMaxPointTexture; Serialized data contained in corresponding texture buffers were added to global scene buffers: //! Texture buffer of data records of high-level BVH nodes. Handle(OpenGl_TextureBufferArb) mySceneNodeInfoTexture; //! Texture buffer of minimum points of high-level BVH nodes. Handle(OpenGl_TextureBufferArb) mySceneMinPointTexture; //! Texture buffer of maximum points of high-level BVH nodes. Handle(OpenGl_TextureBufferArb) mySceneMaxPointTexture; This modifications leads also to small performance improvement (~2%) due to higher texture cache efficiency. Some modifications in traversal function (GLSL code) also improve performance (~3%).