feat: scale down sphere
This commit is contained in:
		
							parent
							
								
									fdabe9aadd
								
							
						
					
					
						commit
						c161f3e54a
					
				@ -150,7 +150,7 @@ int main()
 | 
				
			|||||||
        return -1;
 | 
					        return -1;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    GLuint shaderProgram = compileShaderProgram();
 | 
					    GLuint shaderProgram = compileShaderProgram();
 | 
				
			||||||
    //Icosphere sphere(0.5, 2);
 | 
					    Icosphere sphere(0.5, 2);
 | 
				
			||||||
    Orbit orbit(30, glm::vec3(.5, .5, 0));
 | 
					    Orbit orbit(30, glm::vec3(.5, .5, 0));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    glEnable(GL_DEPTH_TEST);
 | 
					    glEnable(GL_DEPTH_TEST);
 | 
				
			||||||
@ -168,7 +168,7 @@ int main()
 | 
				
			|||||||
        updateModelViewProjectionMatrix(shaderProgram, glfwGetTime());
 | 
					        updateModelViewProjectionMatrix(shaderProgram, glfwGetTime());
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        // Render objects
 | 
					        // Render objects
 | 
				
			||||||
        //sphere.render();
 | 
					        sphere.render();
 | 
				
			||||||
        orbit.render();
 | 
					        orbit.render();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        glfwSwapBuffers(window);
 | 
					        glfwSwapBuffers(window);
 | 
				
			||||||
 | 
				
			|||||||
@ -3,7 +3,7 @@
 | 
				
			|||||||
#include <iostream>
 | 
					#include <iostream>
 | 
				
			||||||
#include <array>
 | 
					#include <array>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Icosphere::Icosphere(int subdivisions)
 | 
					Icosphere::Icosphere(float radius, int subdivisions)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    VertexList vertices = _isocahedronVertices;
 | 
					    VertexList vertices = _isocahedronVertices;
 | 
				
			||||||
    TriangleList triangles = _isocahedronTriangles;
 | 
					    TriangleList triangles = _isocahedronTriangles;
 | 
				
			||||||
@ -16,6 +16,13 @@ Icosphere::Icosphere(int subdivisions)
 | 
				
			|||||||
        " vertices: " << vertices.size() <<
 | 
					        " vertices: " << vertices.size() <<
 | 
				
			||||||
        " triangles: " << triangles.size() << std::endl;
 | 
					        " triangles: " << triangles.size() << std::endl;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    // Scale vertices by radius after subdivision as subdivision happens on a
 | 
				
			||||||
 | 
					    // unit sphere
 | 
				
			||||||
 | 
					    for (int i = 0; i < vertices.size(); i++)
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        vertices[i] *= radius;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	glGenVertexArrays(1, &_vao);
 | 
						glGenVertexArrays(1, &_vao);
 | 
				
			||||||
	glGenBuffers(1, &_vbo);
 | 
						glGenBuffers(1, &_vbo);
 | 
				
			||||||
	glGenBuffers(1, &_ebo);
 | 
						glGenBuffers(1, &_ebo);
 | 
				
			||||||
 | 
				
			|||||||
@ -10,7 +10,7 @@
 | 
				
			|||||||
class Icosphere
 | 
					class Icosphere
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
	Icosphere(int subdividision);
 | 
						Icosphere(float radius, int subdividision);
 | 
				
			||||||
	void render();
 | 
						void render();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	~Icosphere();
 | 
						~Icosphere();
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user