2017-01-30 7 views
-2

私はOpenGLを初めて使っています。私は基本を学びたいと思っています。私は立方体の頂点とそれらのEBOのインデックスを作成しました。それは完璧な立方体であるはずです。つまり、すべての面で同じ長さです。しかし、私はこれを得る: https://i.gyazo.com/1fb82be379da9b18133a0ab0da8ccbf4.png この種の長方形、正方形の顔のistead。OpenGLが完璧な立方体を作っていない

頂点とインデックスは次のとおりです。

std::vector<GLfloat> _Vertices = { 
    // Positions   // Colors   // Texture Coords 
                  //Front 
    0.5f, 0.5f, 0.0f, 1.0f, 0.0f, 0.0f, 1.0f, 1.0f, //0 Top Right 
    0.5f, -0.5f, 0.0f, 0.0f, 1.0f, 0.0f, 1.0f, 0.0f, //1 Bottom Right 
    -0.5f, -0.5f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, //2 Bottom Left 
    -0.5f, 0.5f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 1.0f, //3 Top Left 
                  //Right 
    0.5f, 0.5f, 0.0f, 1.0f, 0.0f, 0.0f, 1.0f, 1.0f, //4 Top left 
    0.5f, 0.5f, -0.5f, 0.0f, 1.0f, 0.0f, 1.0f, 0.0f, //5 Top right 
    0.5f, -0.5f, -0.5f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, //6 Bottom right 
    0.5f, -0.5f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 1.0f, //7 Buttom left 
                  //Left 
    -0.5f, 0.5f, 0.0f, 1.0f, 0.0f, 0.0f, 1.0f, 1.0f, //8 Top Right 
    -0.5f, 0.5f,-0.5f, 0.0f, 1.0f, 0.0f, 1.0f, 0.0f, //9 Buttom Right 
    -0.5f, -0.5f,-0.5f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, //10 Buttom Leff 
    -0.5f, -0.5f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 1.0f, //11 Top Left 

                  //Top 
    -0.5f, 0.5f, 0.0f, 1.0f, 0.0f, 0.0f, 1.0f, 1.0f, //12 Buttom Left 
    -0.5f, 0.5f,-0.5f, 0.0f, 1.0f, 0.0f, 1.0f, 0.0f, //13 Top Left 
    0.5f, 0.5f,-0.5f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, //14 Top Right 
    0.5f, 0.5f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 1.0f, //15 Buttom right 

                  //Back 
    0.5f, 0.5f,-0.5f, 1.0f, 0.0f, 0.0f, 1.0f, 1.0f, //16 Top Right 
    0.5f, -0.5f,-0.5f, 0.0f, 1.0f, 0.0f, 1.0f, 0.0f, //17 Bottom Right 
    -0.5f, -0.5f,-0.5f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, //18 Bottom Left 
    -0.5f, 0.5f,-0.5f, 1.0f, 1.0f, 0.0f, 0.0f, 1.0f, //19 Top Left 

                  //Buttom 
    -0.5f, -0.5f,-0.0f, 1.0f, 0.0f, 0.0f, 1.0f, 1.0f, //20 Top left 
    0.5f, -0.5f, 0.0f, 0.0f, 1.0f, 0.0f, 1.0f, 0.0f, //21 Top Right 
    0.5f, -0.5f,-0.5f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, //22 Buttom Right 
    -0.5f, -0.5f,-0.5f, 1.0f, 1.0f, 0.0f, 0.0f, 1.0f //23 Buttom Lrft 


}; 






    std::vector<GLuint> Indices = { 
    0, 1, 2, // Firs square 
    2, 3, 0, 

    4, 5, 6, 
    6, 7, 4, 

    8, 9, 10, 
    10, 11, 8, 

    12, 13, 14, 
    14, 15, 12, 

    16, 17, 18, 
    18, 19, 16, 

    20, 21, 22, 
    22, 23, 20 
}; 

あなたは、コードの一部が必要な場合は、コメント欄にお問い合わせください。ありがとう。

+0

どのように投影行列を設定しましたか? –

答えて

5

XとY座標は-0.5から0.5までですが、Zは-0.5-0.

+0

ああ、どうしたらいい?どうもありがとう! – Hirosam

関連する問題