Home Page > > Details

CSE 287 Project One Spring 2017.doc

CSE287- Page 1 of 7

Project One

Description: Your ray tracing work will conclude with this project. The project will require

you to implement shadow feelers to create shadows, trace reflection vectors to create

mirror-like inter-object reflections, and add additional types of shapes to a scene. Your

starting point for this lab is your completed lab four.

Your grade on this project will depend not only on successful implementation of

additional aspects of ray tracing, but also on quality of the scene that is rendered by

your project.

Simple Polygon Surfaces

Simple polygons are described by three or more vertices in same plane, are convex,

and have no sides which cross one another. The front face of the polygon is normally

defined as the face on which the vertices appear in counter clockwise order. The

surface normal for the polygon should point out of the front face.

Implement a sub-class of the Plane class that represents a simple polygon. The

constructor among other things should have an input parameter that is a vector of

vec3 objects which specify the vertex locations for the polygon in counter-clockwise

order.

The sub-class should use the findClosestIntersetion method of Plane class to

determine if the plane in which the polygon lies is intersected. It can then use the

method described in the notes to determine if the intersection is inside the polygon

CSE 287 Project One Spring 2017.doc

CSE287- Page 2 of 7

described by the vertices passed to the constructor. You should be able to account for

intersections with both the front and back side of the polygon. Both sides of the polygon

should be rendered with correct lighting.

Quadric Surfaces

Implement at least one specialized sub-class of the QuadricSurface class. Your

specialization should enable the rendering of a quadric surface such as a cylinder,

cone, ellipsoid, paraboloid, hyperbolic paraboloid, etc. Shapes such as the cone or

cylinder should not be infinite. It should be possible to render them in any position within

the scene. In your sub-class, use the findClosestIntersetion of the

QuadricSurface class to do the heavy lifting of intersection testing. In the sub-class

findClosestIntersetion method, you can then check the point of intersection to see

if it is in the more limited shape you are creating. Both sides of the surface should be

rendered with correct lighting.

Function to Look for Ray Intersections

Ray tracing is all about finding intersections between rays and surfaces in a scene. You

have already written code that carries out this task. You will need the functionality that

carries out this task to create shadows and reflections.

You will find the declaration of a function (not a method) called findIntersection. in

Lights.h (I left in in the lab code by mistake). It is defined it in Lights.cpp

#include "Lights.h"

HitRecord findIntersection( const glm::vec3 &e, const glm::vec3 &d,

std::vector

Contact Us(Ghostwriter Service)

- QQ：99515681
- WeChat：codinghelp
- Email：99515681@qq.com
- Work Time：8:00-23:00

- Ghostwriter Dataset Assignment,Help Wi... 2019-11-21
- Cache Comparisons Assignmentghostwrite... 2019-11-21
- Programming Assignmenthelp With ,Ghost... 2019-11-21
- Data Programming Assignmentghostwriter... 2019-11-21
- Cricos 00213J Assignmenthelp With ,Gho... 2019-11-21
- Help With R Hw2 Assignment,Ghostwriter... 2019-11-21
- Tcss 380 Assignmentghostwriter ,Help W... 2019-11-21
- Ghostwriter Program Assignment,Java Pr... 2019-11-21
- Csci-1200 Assignmenthelp With ,Data St... 2019-11-21
- Ghostwriter Tunedit Data Assignment,He... 2019-11-21
- Csci 370 Assignmentghostwriter ,Help W... 2019-11-21
- Ghostwriter Comp 1010 Assignment,Progr... 2019-11-21
- Wisccompsci200 Assignmenthelp With ,Ja... 2019-11-21
- 4Cosc001w Assignmenthelp With ,Python ... 2019-11-20
- Ghostwriter Csc 230 Assignment,Help Wi... 2019-11-20
- Cmpt 361 Assignmentghostwriter ,Help W... 2019-11-20
- Help With Cs5783 Assignment,Ghostwrite... 2019-11-20
- B365 Assignmenthelp With ,Ghostwriter ... 2019-11-20
- Inft 3033 Assignmenthelp With ,Ghostwr... 2019-11-20
- Cs610-101 Assignmentghostwriter ,Progr... 2019-11-20

Contact Us - Email：99515681@qq.com WeChat：codinghelp

© 2014 www.asgnhelp.com

Programming Assignment Help！