GPU610/DPS915 Team 7 Project Page

From CDOT Wiki
Revision as of 18:44, 18 February 2018 by Alek Minassian (talk | contribs) (Building and running on Linux (Matrix))
Jump to: navigation, search


GPU610/DPS915 | Student List | Group and Project Index | Student Resources | Glossary

Project Name Goes here

Team Members

  1. Alek Minassian, Some responsibility
  2. Ariquddowla Chowdhury, Some other responsibility
  3. Alfred Yeung, Some other responsibility

Email All

Assignment 1

Creating ray-traced images by Alek Minassian

This is an open-source program available from here. This program can be built and run on both Windows and Linux. A copy of the source code in ZIP format is available in the section below as well as instructions for building and running. The program works by creating one or more objects and placing them on a "Scene". It then adds one or more light sources and traces them as they reflect off or refract through objects. As an example, the following chessboard is generated as follows:

  • A chessboard is created, rotated, and added to the scene.
  • Three spheres are created and added to the scene.
  • Three light sources are added.
  • Finally, the new image is saved.

Chessboard.png

Downloading the source code

A modified version of the project is available from here. The following modifications were made:

  • The raytrace/raytrace/build file used for building on Linux is modified to enable profiling as well as using version 7.2.0 of g++ on Matrix.
  • The raytrace/raytrace/profile.sh file is added to run the program and create a flat profile and call graph.
  • The Visual Studio solution raytrace/raytrace.sln is upgraded to Visual Studio 2017.
  • Some code has been added to scene.cpp in order to report the time spent in certain parts of the code. This is so that we can get a more granular timing than what is available through profiling.

Building and running on Windows

  • Unzip the source from the previous step and open raytrace/raytrace.sln.
  • Set the active configuration and platform:
    • From the "Build" menu item, select "Configuration Manager..."
    • Change the Active solution platform to be x64.
    • Change the Active solution configuration to be Release.
  • If you run into build issues, you may have to re-target the solution as follows:
    • In the Solution Explorer pane, right-click on the solution and select "Retarget solution".
    • Select the latest Windows SDK version available to you.
  • You can now build the solution from the build menu.
  • Run the program by selecting "Start Without Debugging" from the Debug menu. You should now see the following screen:
       AM ReportTime.png
  • The chessboard image chessboard.png, that was displayed above, is now generated and can be found in the raytrace/raytrace folder.

Building and running on Linux (Matrix)

  • Download the source: curl https://wiki.cdot.senecacollege.ca/w/imgs/Raytrace.a1.zip -o rtsource.zip
  • Unzip the source: unzip rtsource.zip
  • cd raytrace/raytrace
  • chmod a+x build
  • chmod a+x profile.sh
  • Build the source code: ./build
  • Run and profile the application: ./profile.sh

Assignment 2

Assignment 3