git logo

This project started out through a couple of graphics development courses at RIT. Within this page I go over the implemented features, and features that are in progress

  • Entities
  • Materials
  • Multiple Render Target Views (MRTVs)
  • PBR Lighting
  • Indirect Lighting
  • Directional and Point Lights (Spot lights in devleopment)
  • ImGUI UI
  • Importing Objects and reapplying materials

Within the project I have implemented basic lighting and PBR lighting. These types of lighting were either commented out or modified as part of my IBL lighting system. As seen in this shots below my objects render differently based on their different material properties as well as the type of light involved. Currently directional and point lights are implemented, as well as the IBL calculated from the skybox.

Some default directional lights on some basic sphere objects with different metallic values with specular intesnsity 1.0f

Randomized lights on all objects

Red and Blue directional lights meeting in the center

Red and blue directional lights meeting a diagonal in the center causing color blend into purple Lore

Red and blue point lights completely overlapping on objects

Specular intensity ratio of 3:1 Red and Blue point lights

Specular intensity ratio of 1:1 Red and Blue point lights

Within the project there are some improvements to be able to use the implemented features. With ImGUI library I created a functional UI that can load new entities select them and alter their transform values. It can also load skyboxes and I am currently working on a save scene features. With my second window I can view my current material SRV as well as any new ones I bring into the project instance via the file explorer. This multiple render target view window allows me to be able to easily tell whether my models, my source code, or my shader code is the problem when encountering rendering problems.

ImGui Window that acts a small tool when developing or looking through my objects and viewing their rendered materials and shaders.

Showcase of my render target views

Within the project I can load or create various entities using the Open Asset Import Library and I can also adjust their transforms via some matrix math making use of the DirectX api to help handle the matrices. My default scene uses spheres, but as displayed below I can render most models as long as there isn't some sort of error in their normals.

Directional lights on my objects

Refractional object showcase

External Model Loading Showcase




Kyle Zielinski

P: 413-813-5447