| 1014 | } |
| 1015 | |
| 1016 | void Tr2RaytracingGeometry::AddGeometry( Tr2RaytracingMesh& mesh, Tr2RaytracingMeshArea& area, Tr2Material* material, const Tr2ConstantBufferAL* perObjectData, const Tr2ConstantBufferAL* vertexBufferData, const Matrix& worldTransform, uint32_t bakedMorphOffset ) |
| 1017 | { |
| 1018 | if( !mesh.IsGoodForArea( area.GetAreaIndex() ) ) |
| 1019 | { |
| 1020 | return; |
| 1021 | } |
| 1022 | |
| 1023 | GeometryData obj; |
| 1024 | obj.mesh = &mesh; |
| 1025 | obj.area = &area; |
| 1026 | obj.material = material; |
| 1027 | obj.perObjectData = perObjectData; |
| 1028 | obj.vertexBufferData = vertexBufferData; |
| 1029 | obj.worldTransform = worldTransform; |
| 1030 | obj.materialIndex = INVALID_MATERIAL; |
| 1031 | obj.isTransparent = false; |
| 1032 | obj.bakedMorphOffset = bakedMorphOffset; |
| 1033 | m_threadLocalGeometryData.local().push_back( obj ); |
| 1034 | } |
| 1035 | |
| 1036 | void Tr2RaytracingGeometry::AddGeometry( Tr2RaytracingMesh& mesh, Tr2RaytracingMeshArea& area, Tr2Material* material, const Tr2ConstantBufferAL* perObjectData, const Tr2ConstantBufferAL* vertexBufferData, const Float4x3* worldTransforms, size_t instanceCount, uint32_t bakedMorphOffset ) |
| 1037 | { |
no test coverage detected