提示コードの二つ目が宣言で初期化が一番目のコードで、構造体の中身が三つ目のコードです。VertexUV_2D型です。
staticの構造体の初期化の方法がわかりません。色々試しましたが配列のサイズは0より大きくなければなりませんというエラーが出る原因がわかりません。
エラー[ E0094 配列のサイズは 0 より大きくなければなりません ]
cpp
1 2FrameWork::Vertex::VertexUV_2D FrameWork::Camera_2D::vertex[0] = { -0.5f, 0.5f, 0.0f, 1.0f }; 3FrameWork::Vertex::VertexUV_2D FrameWork::Camera_2D::vertex[1] = { -0.5f,-0.5f, 0.0f,0.0f }; 4FrameWork::Vertex::VertexUV_2D FrameWork::Camera_2D::vertex[2] = { 0.5f,0.5f, 1.0f,1.0f }; 5FrameWork::Vertex::VertexUV_2D FrameWork::Camera_2D::vertex[3] = { 0.5f,0.5f, 1.0f,1.0f }; 6FrameWork::Vertex::VertexUV_2D FrameWork::Camera_2D::vertex[4] = { -0.5f,-0.5f, 0.0f,0.0f }; 7FrameWork::Vertex::VertexUV_2D FrameWork::Camera_2D::vertex[5] = { 0.5f,-0.5f, 1.0f,0.0f }; 8 9 10
cpp
1 private: 2 3 static FrameWork::Vertex::VertexUV_2D vertex[6]; 4 5
cpp
1#ifndef VERTEX_DATA_HPP_ 2#define VERTEX_DATA_HPP_ 3 4/*######################################################################### 5# Vertex 6 7説明 8 頂点情報 9###########################################################################*/ 10 11namespace FrameWork 12{ 13 class Vertex 14 { 15 16 public: 17 18 //頂点座標とUV 19 typedef struct 20 { 21 GLfloat position[2]; 22 GLfloat uv[2]; 23 24 }VertexUV_2D; 25 26 //頂点座標 27 typedef struct 28 { 29 GLfloat position[2]; 30 }Vertex_2D; 31 32 //頂点座標と頂点カラー 33 typedef struct 34 { 35 GLfloat position[2]; 36 GLfloat color[4]; 37 }VertexColor_2D; 38 39 typedef struct 40 { 41 GLfloat position[2]; 42 GLfloat uv[2]; 43 GLfloat normal[3]; 44 }VertexNormal; 45 46 }; 47} 48#endif 49 50
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。