dimitreortt / Computer-Graphics

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Here are the implementation of the 4 parts of the practical homework of the discipline of Computer Graphics that has been implemented throughout the entire semester at FACOM - UFMS.

Professor: Paulo Pagliosa
Student: Dimtitre Ortt Discipline: Computer Graphics, 2019.2, FACOM - UFMS, Campo Grande - MS, Brasil

The base code for the work containing functionalities for creating a Desktop Application and the logic of global coordinates, among others, was provided by the teacher. A feature called ImGui, created and made available by external developers, was also used.

This project included several major parts:

  • defining and working with 3D object models in C++
  • implementing a data structure to keep different types of 3D shapes and iterate through them
  • implementing an algorithm to be run in the hardware, used to define the color of the shapes when a defined light is thrown at it
  • implement an algorithm to determine if an intersection between a point in space and a light ray happened
  • implement a Ray-Tracer algorithm that throws rays of light into a tri-dimensional space and defines a scene from it
  • render a generated scene on the screen

Almost everything in this project was implemented using C++.

Authors: Paulo Pagliosa & Dimitre Ortt

About


Languages

Language:C++ 93.2%Language:HTML 6.2%Language:GLSL 0.4%Language:C 0.2%