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>();

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…