Find Jobs
Hire Freelancers

3D Viewing {Interactive}

$10-30 USD

Avslutat
Publicerad ungefär sju år sedan

$10-30 USD

Betalning vid leverans
Implement an interactive system for viewing a 3D object. The implementation will let you get more familar with the theories of 3D transformation and camera manipulation and the use of the two OpenGL stacks, GL MODELVIEW and GL PROJECTION, with relevant gl or glu functions. Camera manipulation includes two steps. The first step is to setup the location and orientation of a camera, which aims to build a rigid 3D transformation between the world coordinate system and the camera coordinate system. This is also called external parameter setup. The GLU function gluLookAt() can be used to form the rigid transformation matrix.s. Note that the stack that gluLookAt() manipulates is GL MODELVIEW because it is about a 3D transformation rather than a projection. You will need to implement a function called myCameraLookAt() as an alternative of gluLookAt(). As described in the lecture slides, you can first compute the u, v, n axes and translation vector t, and then construct the rigid transformation matrix ( ux uy uz tx vx vy vz ty nx ny nz tz 0 0 0 1 ) The second step of the camera manipulation is to decide a viewing volume, equivalently, a projection matrix. This is also called internal parameter setup. There are two popular projection modes— orthographic and perspective. In this project, we assume that the camera is a perspective (pinhole) camera. You can use gluPerspective() to setup internal parameters. The system allows a user to use the keyboard to change the camera coordinate system and the projection matrix. Specifically, four keys are used to change the input of gluLookAt() or myCameraLookAt() as follows: • i – move the camera toward the object • m – move the camera against the object • j – move the camera to its left • l – move the camera to its right The amount of a movement can be set as the 20% of the length of an object. For example, is the length of an object is 10, you can set each movement in the unit of 2. Two keys are used to change the input of gluPerspective() as follows: • d – increase the fovy 10 degrees • s – decrease the fovy 10 degrees The glut library provides the implementation of drawing of a few of 3D objects. For example, you can draw a solid or wire cube using the following glut functions: void glutSolidCube(GLdouble size); void glutWireCube(GLdouble size); To have the focus on the 3D viewing, you can start this project using the glut 3D object cube. But the number of glut 3D objects is limited, and the access methods of these objects are also limited. In general, a programmer defines a 3D object as a collection of faces (i.e., polygons), where each face consists of a number of vertices. With such a definition of an object, a programmer can manipulate every face of the object. So, after you pass the test of your code based on the glut 3D object cube, you will need to define an 3D object and test the code on the programmer-defined object.
Project ID: 13476814

Om projektet

6 anbud
Distansprojekt
Senaste aktivitet sju år sedan

Ute efter att tjäna lite pengar?

Fördelar med att lägga anbud hos Freelancer

Ange budget och tidsram
Få betalt för ditt arbete
Beskriv ditt förslag
Det är gratis att registrera sig och att lägga anbud på uppdrag
6 frilansar lägger i genomsnitt anbud på $55 USD för detta uppdrag
Använd avatar
Hello, I am a guru with opengl and C...there are several posts lñike this...but no problem, I can do many genuine implementations. Zero plagiarism. So, let me do it in just 24 hours. BEst regards!
$40 USD Om 1 dag
5,0 (70 omdömen)
6,4
6,4
Använd avatar
Hi, I am experienced in C and OpenGL. I can finish this in one day. Please contact me.....................................
$50 USD Om 1 dag
5,0 (50 omdömen)
5,3
5,3
Använd avatar
Hi, how are you? I already made this assignment for a previous customer, then that is done! Obviously I made a new version just for you. I am totally clear about avoiding plagiarism between you. If you are interested, just let me know. Thank you very much for your attention. Best regardds
$25 USD Om 1 dag
4,7 (24 omdömen)
4,8
4,8
Använd avatar
Expert in OpenGL ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... .........
$55 USD Om 2 dagar
5,0 (17 omdömen)
4,3
4,3

Om kunden

Flagga för UNITED STATES
Naperville, United States
5,0
4
Verifierad betalningsmetod
Medlem sedan feb. 11, 2017

Kundverifikation

Tack! Vi har skickat en länk för aktivering av gratis kredit.
Något gick fel med ditt e-postmeddelande. Vänligen försök igen.
Registrerade Användare Totalt antal jobb publicerade
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Laddar förhandsgranskning
Tillstånd beviljat för geolokalisering.
Din inloggningssession har löpt ut och du har blivit utloggad. Logga in igen.