193{
194 currType = MeshType::Icosphere;
195 glm::vec3 vertis[] =
196 {
197 glm::vec3(0, -1, 0),
198 glm::vec3(0, 0, 1),
199 glm::vec3(1, 0, 0),
200 glm::vec3(0, 0, -1),
201 glm::vec3(-1, 0, 0),
202 glm::vec3(0, 1, 0)
203 };
204 int triangles[] =
205 {
206 0, 1, 2,
207 0, 2, 3,
208 0, 3, 4,
209 0, 4, 1,
210
211 5, 2, 1,
212 5, 3, 2,
213 5, 4, 3,
214 5, 1, 4
215 };
216
217 for (int i = 0; i < sizeof(vertis)/sizeof(glm::vec3); i++)
218 {
219 vertis[i] *= radius;
220 }
221
222 vertexCount = sizeof(vertis)/sizeof(int);
223 vert =
new Vert[
sizeof(vertis) /
sizeof(
int)];
224 memset(vert, 0,
sizeof(
Vert) * vertexCount);
225
226 for (int i = 0; i < vertexCount; i++)
227 {
229 vert[i].position = glm::vec4(vertis[i], 1);
230 }
231
232 indexCount = sizeof(triangles)/sizeof(int);
233 indices = new int[indexCount];
234 memcpy(indices, triangles, sizeof(int) * indexCount);
235}