Showing the changes to libraries/render/src/render/DrawSceneOctree.cpp (1 of 13 files). Show all
Unified · Split
| @@ -30,7 +30,10 @@ gpu::PipelinePointer DrawSceneOctree::_drawItemBoundPipeline; · 29 unmodified lines | |||
| 30 | gpu::Stream::FormatPointer DrawSceneOctree::_cellBoundsFormat = std::make_shared<gpu::Stream::Format>(); | 30 | gpu::Stream::FormatPointer DrawSceneOctree::_cellBoundsFormat = std::make_shared<gpu::Stream::Format>(); |
| 31 | 31 | ||
| 32 | DrawSceneOctree::DrawSceneOctree() { | 32 | DrawSceneOctree::DrawSceneOctree() { |
| 33 | _cellBoundsFormat->setAttribute(0, 0, gpu::Element(gpu::VEC4, gpu::INT32, gpu::XYZW), 0, gpu::Stream::PER_INSTANCE); | 33 | std::once_flag once; |
| 34 | std::call_once(once, [] { | ||
| 35 | _cellBoundsFormat->setAttribute(0, 0, gpu::Element(gpu::VEC4, gpu::INT32, gpu::XYZW), 0, gpu::Stream::PER_INSTANCE); | ||
| 36 | }); | ||
| 34 | } | 37 | } |
| 35 | 38 | ||
| 36 | const gpu::PipelinePointer DrawSceneOctree::getDrawCellBoundsPipeline() { | 39 | const gpu::PipelinePointer DrawSceneOctree::getDrawCellBoundsPipeline() { |