Ignore:
Timestamp:
01/19/08 05:28:24 (16 years ago)
Author:
mattausch
Message:

did some stuff for the visualization

File:
1 edited

Legend:

Unmodified
Added
Removed
  • GTP/trunk/Lib/Vis/Preprocessing/src/GlRenderer.cpp

    r2614 r2615  
    471471 
    472472 
     473void GlRenderer::_RenderDynamicObject(SceneGraphLeaf *leaf) 
     474{ 
     475        // apply world transform before rendering 
     476        Matrix4x4 m; 
     477        leaf->GetTransform(m); 
     478 
     479        glPushMatrix(); 
     480        glMultMatrixf((float *)m.x); 
     481 
     482        glBegin(GL_TRIANGLES); 
     483 
     484        ObjectContainer::const_iterator oi = leaf->mGeometry.begin(); 
     485        for (; oi != leaf->mGeometry.end(); oi++)  
     486        { 
     487                TriangleIntersectable *object = (TriangleIntersectable *)*oi; 
     488                Triangle3 *t = &(object->GetItem()); 
     489 
     490                Vector3 normal = t->GetNormal(); 
     491                glNormal3f(normal.x, normal.y, normal.z); 
     492 
     493                glVertex3f(t->mVertices[0].x, t->mVertices[0].y, t->mVertices[0].z); 
     494                glVertex3f(t->mVertices[1].x, t->mVertices[1].y, t->mVertices[1].z); 
     495                glVertex3f(t->mVertices[2].x, t->mVertices[2].y, t->mVertices[2].z); 
     496 
     497        } 
     498 
     499        glEnd(); 
     500 
     501        glPopMatrix(); 
     502} 
     503 
     504 
     505 
    473506void GlRenderer::_RenderSceneTriangles() 
    474507{ 
     
    499532{ 
    500533        Intersectable::NewMail(); 
    501  
     534#if DYNAMIC_OBJECTS_HACK 
    502535        Preprocessor *p = mViewCellsManager->GetPreprocessor(); 
    503536        // handle dynamic objects 
     
    506539        for (dit = p->mDynamicObjects.begin(); dit != dit_end; ++ dit) 
    507540        { 
    508                 RenderIntersectable(*dit); 
    509         } 
    510  
     541#if USE_TRANSFORMED_MESH_INSTANCE_HACK 
     542        RenderIntersectable(*dit); 
     543#else 
     544                _RenderDynamicObject(*dit); 
     545#endif 
     546        } 
     547#endif 
    511548#if 1 
    512549        _RenderSceneTrianglesWithDrawArrays(); 
Note: See TracChangeset for help on using the changeset viewer.