2013-07-31 5 views
-1

큐브를 만들기 위해 x, y, z, sizeX, sizeY, sizeZ 값을 꼭지점에 넣는 방법은 무엇입니까?OpenGL에서 큐브를 만드는 방법

public static void cube(float x, float y, float z, float sx, float sy, float sz){  
glPushMatrix(); 
    { 
     glTranslatef(x, y, z); 

//Just one side of the cube is given due to too much unnecessary code. 
     glBegin(GL_QUADS); 
      glVertex3f(-1, -1, 1); 
      glVertex3f(1, -1, 1); 
      glVertex3f(1, 1, 1); 
      glVertex3f(-1, 1, 1); 
     glEnd(); 
    } 
    glPopMatrix(); 
} 

감사합니다.

답변

0

코드에서 어디서나 사용할 수 있습니다. glVertex3f(-1, -1, 1);은 sx, sy, sz의 상응하는 값을 2로 나눈 값과 함께 이들을 다중화한다. glVertex3f(-sx/2, -sy/2, sz/2);

위치의 경우 큐브를 그리기 전에 glTranslatef(x, y, z)을 발행 할 수 있습니다. 이것을 정점에 하드 코딩하려고한다면 위의 문장을 glVertex3f(x - sx/2, y - sy/2, z + sz/2);

으로 작성해야합니다
관련 문제