34 wxASSERT( t >= 0.0f );
38 const float u = 1.0f / 6.0f;
40 vertexPointer[0] =
SFVEC3F( ( -3.0f + t ) * u, -2.0f * u, 0.0f );
41 vertexPointer[1] =
SFVEC3F( ( -3.0f + t ) * u, 2.0f * u, 0.0f );
42 vertexPointer[2] =
SFVEC3F( ( -1.0f + t ) * u, 0.0f * u, 0.0f );
44 vertexPointer[3] =
SFVEC3F( -2.0f * u, ( -3.0f + t ) * u, 0.0f );
45 vertexPointer[4] =
SFVEC3F( 2.0f * u, ( -3.0f + t ) * u, 0.0f );
46 vertexPointer[5] =
SFVEC3F( 0.0f * u, ( -1.0f + t ) * u, 0.0f );
48 vertexPointer[6] =
SFVEC3F( ( 3.0f - t ) * u, -2.0f * u, 0.0f );
49 vertexPointer[7] =
SFVEC3F( ( 3.0f - t ) * u, 2.0f * u, 0.0f );
50 vertexPointer[8] =
SFVEC3F( ( 1.0f - t ) * u, 0.0f * u, 0.0f );
52 vertexPointer[9] =
SFVEC3F( 2.0f * u, ( 3.0f - t ) * u, 0.0f );
53 vertexPointer[10] =
SFVEC3F( -2.0f * u, ( 3.0f - t ) * u, 0.0f );
54 vertexPointer[11] =
SFVEC3F( 0.0f * u, ( 1.0f - t ) * u, 0.0f );
56 glDisableClientState( GL_TEXTURE_COORD_ARRAY );
57 glDisableClientState( GL_COLOR_ARRAY );
58 glDisableClientState( GL_NORMAL_ARRAY );
59 glEnableClientState( GL_VERTEX_ARRAY );
60 glVertexPointer( 3, GL_FLOAT, 0, vertexPointer );
63 glBlendFunc( GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA );
65 glDrawArrays( GL_TRIANGLES, 0, 4 * 3 );
67 glDisable( GL_BLEND );
69 glDisableClientState( GL_VERTEX_ARRAY );
75 wxASSERT( aScale >= 0.0f );
76 wxASSERT( t >= 0.0f );
83 glDisable( GL_LIGHTING );
84 glDisable( GL_DEPTH_TEST );
85 glDisable( GL_CULL_FACE );
88 glMatrixMode( GL_PROJECTION );
89 glLoadMatrixf( glm::value_ptr(
m_camera.GetProjectionMatrix() ) );
91 glMatrixMode( GL_MODELVIEW );
93 glLoadMatrixf( glm::value_ptr(
m_camera.GetViewMatrix() ) );
95 glEnable( GL_COLOR_MATERIAL );
96 glColor4f( 0.0f, 1.0f, 0.0f, 0.75f - t * 0.75f );
99 glTranslatef( lookAtPos.x, lookAtPos.y, lookAtPos.z );
101 glScalef( aScale, aScale, aScale );
105 glScalef( 1.0f - t, 1.0f - t, 1.0f - t );
106 glColor4f( 0.0f, 1.0f, 0.0f, 0.8f - t );
109 glRotatef( t * 90.0f, 0.0f, 0.0f, 1.0f );
114 glRotatef( -t * 90.0f, 0.0f, 0.0f, 1.0f );
122 wxASSERT( aScale >= 0.0f );
124 glDisable( GL_LIGHTING );
125 glDisable( GL_DEPTH_TEST );
126 glDisable( GL_CULL_FACE );
129 glMatrixMode( GL_PROJECTION );
130 glLoadMatrixf( glm::value_ptr(
m_camera.GetProjectionMatrix() ) );
132 glMatrixMode( GL_MODELVIEW );
134 glLoadMatrixf( glm::value_ptr(
m_camera.GetViewMatrix() ) );
136 glEnable( GL_COLOR_MATERIAL );
137 glColor4f( 0.0f, 0.667f, 0.902f, 0.75f );
142 glPointSize( 16.0f );
143 glEnable( GL_POINT_SMOOTH );
144 glHint( GL_POINT_SMOOTH_HINT, GL_NICEST );
146 glEnable( GL_BLEND );
147 glBlendFunc( GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA );
149 glScalef( aScale, aScale, aScale );
152 glBegin( GL_POINTS );
153 glVertex3f( 0, 0, 0 );
156 glDisable( GL_BLEND );
157 glDisable( GL_POINT_SMOOTH );