def render_texture(self): bind_texture(self.flat_type.texture) glBegin(GL_QUADS) glNormal3dv( (0.0, +1.0, 0.0) ) v1, v2, v3, v4 = self.vertices glTexCoord2fv(self.t_index[0]) glVertex( v1 ) glTexCoord2fv(self.t_index[1]) glVertex( v2 ) glTexCoord2fv(self.t_index[2]) glVertex( v3 ) glTexCoord2fv(self.t_index[3]) glVertex( v4 ) glEnd()
def render_texture(self): #Load dark texture bind_texture(self.wall_type.texture1) vertices = [tuple(Vector3(v) + self.position) for v in self.vertices] glBegin(GL_QUADS) #Draw the 4 textured sides for face_no in self.light_faces: if(face_no != self.top_face and face_no in self.rendered_normals): glNormal3dv( self.normals[face_no] ) v1, v2, v3, v4 = self.vertex_indices[face_no] glTexCoord2fv(self.t_index[0]) glVertex( vertices[v1] ) glTexCoord2fv(self.t_index[1]) glVertex( vertices[v2] ) glTexCoord2fv(self.t_index[2]) glVertex( vertices[v3] ) glTexCoord2fv(self.t_index[3]) glVertex( vertices[v4] ) glEnd() #Now the dark faces bind_texture(self.wall_type.texture2) glBegin(GL_QUADS) for face_no in self.dark_faces: if(face_no != self.top_face and face_no in self.rendered_normals): glNormal3dv( self.normals[face_no] ) v1, v2, v3, v4 = self.vertex_indices[face_no] glTexCoord2fv(self.t_index[0]) glVertex( vertices[v1] ) glTexCoord2fv(self.t_index[1]) glVertex( vertices[v2] ) glTexCoord2fv(self.t_index[2]) glVertex( vertices[v3] ) glTexCoord2fv(self.t_index[3]) glVertex( vertices[v4] ) glEnd()
def render(self,camera_vector): '''In wolf3d sprites always faced the player we can't do that nicely here, so we have to render a texture that always faces the camera this will render the object so that it faces the camera coordinates''' bind_texture(self.sprite['texture']) glBegin(GL_QUADS) glNormal3dv( (0.0, +1.0, 0.0) ) vertices = remap_to_camera(camera_vector,self.vertices,(self.x,self.y)) v1, v2, v3, v4 = vertices glTexCoord2fv(self.t_index[0]) glVertex( v1 ) glTexCoord2fv(self.t_index[1]) glVertex( v2 ) glTexCoord2fv(self.t_index[2]) glVertex( v3 ) glTexCoord2fv(self.t_index[3]) glVertex( v4 ) glEnd()
def render_texture(self): bind_texture(self.door_type.side_texture) vertices = [tuple(Vector3(v) + self.position) for v in self.vertices] glBegin(GL_QUADS) for face_no in self.side_faces: glNormal3dv( self.normals[face_no] ) v1, v2, v3, v4 = self.vertex_indices[face_no] glTexCoord2fv(self.t_index[0]) glVertex( vertices[v1] ) glTexCoord2fv(self.t_index[1]) glVertex( vertices[v2] ) glTexCoord2fv(self.t_index[2]) glVertex( vertices[v3] ) glTexCoord2fv(self.t_index[3]) glVertex( vertices[v4] ) glEnd() #Now render the door vertices = [tuple(Vector3(v) + self.position - self.door_offset) for v in self.door_vertices] bind_texture(self.door_type.door_texture) #print self.door_faces[0] glBegin(GL_QUADS) glNormal3dv( self.normals[self.door_faces[0]] ) v1, v2, v3, v4 = self.vertex_indices[self.door_faces[0]] glTexCoord2fv(self.t_index[0]) glVertex( vertices[v1] ) glTexCoord2fv(self.t_index[1]) glVertex( vertices[v2] ) glTexCoord2fv(self.t_index[2]) glVertex( vertices[v3] ) glTexCoord2fv(self.t_index[3]) glVertex( vertices[v4] ) glEnd()