INNER CODE UNIT · C++
triangleMesh
vectozavr/3dzavr · engine/Engine.cpp:28
auto triangleMesh = obj->getComponent<TriangleMesh>();
if(triangleMesh) {
auto projected = camera->project(*triangleMesh);
std::shared_ptr<Material> material = triangleMesh->getMaterial();
bool isTransparent = material->isTransparent();
if(!isTransparent) {
for(const auto& [projectedTriangle, triangle]: projected) {
_projectedOpaqueTriangles.emplace_back(projectedTriangle, triangle, material.get());
}
} else {
for(const auto& [projectedTriangle, triangle]: projected) {
_projectedTranspTriangles.emplace_back(projectedTriangle, triangle, material.get());
}
}
}
auto lineMesh = obj->getComponent<LineMesh>();