Skip to content
Snippets Groups Projects
Commit 93028eb4 authored by ganthern's avatar ganthern
Browse files

clean up splat rendering

parent 368f716e
No related branches found
No related tags found
No related merge requests found
...@@ -461,7 +461,6 @@ void CgSceneControl::setRenderer(CgBaseRenderer* r) { ...@@ -461,7 +461,6 @@ void CgSceneControl::setRenderer(CgBaseRenderer* r) {
if(m_triangle_mesh != nullptr) m_renderer->init(m_triangle_mesh); if(m_triangle_mesh != nullptr) m_renderer->init(m_triangle_mesh);
} }
void CgSceneControl::renderObjects() { void CgSceneControl::renderObjects() {
// Materialeigenschaften setzen // Materialeigenschaften setzen
...@@ -484,6 +483,7 @@ void CgSceneControl::renderObjects() { ...@@ -484,6 +483,7 @@ void CgSceneControl::renderObjects() {
} }
if((m_pointcloud != nullptr)&& !m_show_splats) { if((m_pointcloud != nullptr)&& !m_show_splats) {
m_renderer->setUniformValue("rendersplats", 0);
m_current_transformation = glm::translate(m_current_transformation, -m_center); m_current_transformation = glm::translate(m_current_transformation, -m_center);
glm::mat4 mv_matrix = m_lookAt_matrix * m_current_transformation; glm::mat4 mv_matrix = m_lookAt_matrix * m_current_transformation;
m_renderer->render(m_pointcloud, mv_matrix, m_proj_matrix); m_renderer->render(m_pointcloud, mv_matrix, m_proj_matrix);
...@@ -521,20 +521,22 @@ void CgSceneControl::renderObjects() { ...@@ -521,20 +521,22 @@ void CgSceneControl::renderObjects() {
glm::mat4 mv_matrix; glm::mat4 mv_matrix;
for(unsigned int i = 0; i < splat_indices.size(); i++) { for(unsigned int i = 0; i < splat_indices.size(); i++) {
//m_renderer->setUniformValue("mycolor",glm::vec4(vertex_colors[splat_indices[i]],1.0)); unsigned int splat_index = splat_indices[i];
glm::mat4 splat_orientation = orientations[splat_index];
glm::vec2 splat_scaling = scalings[splat_index];
m_current_transformation = glm::translate(m_current_transformation, -m_center); m_current_transformation = glm::translate(m_current_transformation, -m_center);
m_current_transformation = m_current_transformation * glm::inverse(orientations[splat_indices[i]]); m_current_transformation = m_current_transformation * glm::inverse(splat_orientation);
m_current_transformation = glm::scale(m_current_transformation, glm::vec3(
m_current_transformation=glm::scale(m_current_transformation,glm::vec3(scalings[splat_indices[i]][0],scalings[splat_indices[i]][1],1.0)); splat_scaling.x,
splat_scaling.y,
mv_matrix = m_lookAt_matrix * m_current_rotation* m_current_transformation ; 1.0)
);
mv_matrix = m_lookAt_matrix * m_current_transformation ;
if(m_disc != nullptr) m_renderer->render(m_disc, mv_matrix, m_proj_matrix); if(m_disc != nullptr) m_renderer->render(m_disc, mv_matrix, m_proj_matrix);
glm::vec3 scale_vec = glm::vec3(1.0 / splat_scaling.x, 1.0 / splat_scaling.y, 1.0);
m_current_transformation=glm::scale(m_current_transformation,glm::vec3(1.0/scalings[splat_indices[i]][0],1.0/scalings[splat_indices[i]][1],1.0)); m_current_transformation = glm::scale(m_current_transformation, scale_vec);
m_current_transformation = m_current_transformation * splat_orientation;
m_current_transformation = m_current_transformation * orientations[splat_indices[i]];
m_current_transformation = glm::translate(m_current_transformation, m_center); m_current_transformation = glm::translate(m_current_transformation, m_center);
} }
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment