Skip to content

choi303/Citrus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

citrus_logo11

Citrus

Citrus is 3D renderer using Direct3D 11 - C++14! Citrus only working on Windows 7+ for now :)

To Do List

  • Global Illumination
  • Volumetric Lighting
  • Planar Reflections

Current Features

  • Blinn-Phong Lighting
  • 3D Model Loader
  • Environment Mapping
  • Normal & Parallax Mapping
  • Shadow Mapping
  • PBR Support
  • SSR
  • Ambient Occlusion
  • Hardware Tessellation
  • Particle System
  • HDR Lighting (Tone mapping, Bloom)
  • Filters (Blur, Depth, Fog, Fire)
  • Anti Aliasing (MSAA, FXAA)
  • GUI Support (Dear ImGui <3)
  • Save System

Inputs

As you can see in the diagram, input can be found on update function of app class. You can change the inputs to whatever you want just change the char characters on update function.

if (keyboard.KeyIsPressed('W'))
{
	//move forward when pressed W
	gfx.cam3D.AdjustPosition(gfx.cam3D.GetForwardVector() * cameraSpeed * deltaTime);
}
  //You can change 'W' to 'Up Arrow' button
if (keyboard.KeyIsPressed(VK_UP)) 
{
	//move forward when pressed Up Arrow (VK_UP)
	gfx.cam3D.AdjustPosition(gfx.cam3D.GetForwardVector() * cameraSpeed * deltaTime);
}

You can reach all virtual key codes on microsoft site.

  • 'W-A-S-D' for movement
  • 'Left Shift' to 2x sprint
  • 'F' for to 1.5x sprint
  • 'Escape' to quit.
  • 'H' to hide UI.
  • 'V' to show UI.
  • Hold 'RMB' (Right Mouse Button) to turn camera.

Gallery

PBR render (model made by Andrew Maximov). Debug Screenshot 2021 10 02 - 23 15 13 88

Street Art scene Debug Screenshot 2021 08 15 - 22 23 08 30

Street Art scene + 0.5x Blur Debug Screenshot 2021 08 15 - 22 23 29 61

Lighting looking Debug Screenshot 2021 06 18 - 22 16 56 67

Wireframe looking Debug Screenshot 2021 06 18 - 22 20 13 65

Fog effect looking Debug Screenshot 2021 06 18 - 22 21 18 96