INNER CODE UNIT · C++
lightSource
vectozavr/3dzavr · engine/Engine.cpp:53
auto lightSource = obj->getComponent<LightSource>();
if(lightSource) {
_lightSources.emplace_back(lightSource);
}
}
}
void Engine::drawProjectedTriangles() {
Time::startTimer("d sort triangles");
std::sort(_projectedTranspTriangles.begin(), _projectedTranspTriangles.end(), [](const auto& e1, const auto& e2){
const auto& [projT1, t1, material1] = e1;
const auto& [projT2, t2, material2] = e2;
double z1 = projT1[0].z() + projT1[1].z() + projT1[2].z();
double z2 = projT2[0].z() + projT2[1].z() + projT2[2].z();
return z1 > z2;
});