Find Jobs
Hire Freelancers

Computer Graphics Rubik's Cube with OpenGL

$30-5000 USD

Cerrado
Publicado hace más de 8 años

$30-5000 USD

Pagado a la entrega
*Rubik's cube* consists of 27 (sub)cubes arranged to form a larger 3?-3?-3 cube. Each of the subcubes has sides colored as red, green, blue, white, yellow and magenta. The same-colored faces of the subcubes are initially aligned so that the larger cube appears as if it had six solid differently colored [login to view URL] can move the Rubik's cube by rotating any plane of 9 subcubes by 90 degrees. The usual way to play with Rubik's cube is that one person distorts the original configuration by making a series of 90 degree rotations and the other tries to return the cube to its original state. The first part of this assignment is to construct a Rubik's cube and to display it. Since we will manipulate the cube in the second part, you should give some thought to how to represent the cube in order to emphasize that it includes 27 instances of a simple cube. The second part of the project involves manipulating the Rubik's cube. That would be great if you can put it in some random configuration by having the computer perform a random series of rotations of various faces. Once the cube is initialized, the user should be able to manipulate it. The user should be able to look at the cube from different angles to decide on a move. Thus, the user should be able to rotate the large cube as a whole any time she wishes. You should give some thought to what kind of user interface you want for the user to specify how she wants to look at the cube and what move she would like to perform. You are recommended to use glut functions (e.g. gluPickMatrix) to implement a picking mechanism to decide on which face to rotate. continues in deliverables part... ## Deliverables Your program is not expected to know how to solve Rubik's cube for any initial [login to view URL] we are just beginning to talk about viewing, you may simply use orthographic viewing so the viewing procedures in the simple sample programs should suffice. Your grade will depend on how nicely you model the Rubik's cube, both statically and dynamically, the quality of your user interface, and the quality of your display. You should consider things like whether or not you want to display edges of the subcubes in addition to the face colors and whether you want to show a move as simply the cube in its final position or as a continuous rotation of smaller angles. However, simply showing the cube without the animation can be done very trivially and will not necessarily demonstrate the understanding of transformations that is key goal of this project. Implementation hints: • The most difficult part of this assignment is to be able to keep track of the position of each subcube as the user applies a series of rotations of the faces. If you specify an index *i* (*i* =0,1,…,5) for each face, and an index *j* (*j* = 0,1,…,26) for each subcube, then the indices {*i*} of the 6 cubes belonging to each face *j* change each time a rotation is applied, depending on which face is rotated. • Once you determine which face, thus which subcubes to rotate, with picking, the next task is to be able perform this rotation properly. For that, you may need to store 28 different modelview matrices, one matrix to store the global view angle, and 27 matrices for the subcubes (that is, one for each subcube). • For smooth rotations, you may need glut timer functions to adjust the speed of the rotation. • You are also required to provide a help interface that instructs the user how to use input devices for interaction. The simplest way is to define a keyboard callback function that prints a description to the command line window. just the .c files are enough for me. ** ** ## Platform windows xp, program must be written in C language. Because it is an undergraduate computer graphics course assignment, it shouldn't be coded in a sophisticated and complex way. it will be better if it is coded in a simplest way.
ID del proyecto: 9131608

Información sobre el proyecto

5 propuestas
Proyecto remoto
Activo hace 8 años

¿Buscas ganar dinero?

Beneficios de presentar ofertas en Freelancer

Fija tu plazo y presupuesto
Cobra por tu trabajo
Describe tu propuesta
Es gratis registrarse y presentar ofertas en los trabajos
5 freelancers están ofertando un promedio de $2.518 USD por este trabajo
Avatar del usuario
Hello, We are a team with more than 12 years of experience in 3D design and 3D photorealistic visualization. Check out our portfolio here: https://www.freelancer.com/u/kingjoon.html Please give me more details about your project so I can give you an exact quote to do the project. Looking forward to hearing from you, please let me know if you have any questions. Best regards, Mohsen
$3.500 USD en 30 días
5,0 (527 comentarios)
9,6
9,6
Avatar del usuario
Hello...this is a very interesting program. I am totally sure that I can do it. I love this kind of graphics problems... I have master and PhD in computer graphics... so, I should be a good option for this project. Look at my profile and previous works. Best regards!
$2.000 USD en 30 días
0,0 (0 comentarios)
2,8
2,8

Sobre este cliente

Bandera de JORDAN
Jordan
0,0
0
Miembro desde dic 16, 2015

Verificación del cliente

¡Gracias! Te hemos enviado un enlace para reclamar tu crédito gratuito.
Algo salió mal al enviar tu correo electrónico. Por favor, intenta de nuevo.
Usuarios registrados Total de empleos publicados
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Cargando visualización previa
Permiso concedido para Geolocalización.
Tu sesión de acceso ha expirado y has sido desconectado. Por favor, inica sesión nuevamente.