3D designer program

Job ID: 35065900

Budget: $30 – $250 USD

The task is to create a listening design program using CPU ray tracing.

1. The displayed room is rectangular and contains two additional types of Platonic regular solids (e.g. their definition in OBJ format: https://people.sc.fsu.edu/~jburkardt/data/obj/obj.html). The walls of the room are transparent from the outside to the inside, so you can see into the room even from the outside.

2. There are 3 cone-shaped listening devices in the room. The listener can only detect the angle of the cone, the sensitivity decreases with the distance.

3. By default, the room and its devices are displayed in gray with a specular-ambient model, which is a linear function of the cosine of the angle between the surface normal and the viewing direction, whose value set is in the range [0.2, 0.4].

4. The sensitivity of the listening is added to the gray base color, with shades of red for the first listener, green for the second, and blue for the third. The sensitivity is zero in the covered points.

5. Listeners can be moved interactively. By pressing the left mouse button, we search for the nearest listener to the 3D point visible under the cursor, set its position to the found point, and its direction to the normal vector of the surface.

Attached an image about the outputs.

Must use the given framework files. (C++, use OpenGL, glut).

Feel free to ask any questions.