ydyvip / Tiny3D

A Small OpenGL Based Renderer

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Tiny3D

A Small OpenGL Based Renderer

Features:

  • OpenGL4.5 based
  • Instanced rendering
  • Post processing
  • .obj model file
  • .bmp texture file
  • Skeleton animation
  • Animation control
  • Vertex texture fetch
  • 3rd person view
  • Cascaded shadow map
  • Sky dome
  • Multi-thread support
  • Deferred shading
  • Dynamic Level of Detail
  • Billboard
  • Water
  • Fog
  • Depth of Field
  • Antialiasing
  • Screen Space Reflection
  • PBR Material
  • GPU occlusion culling
  • Atmospheric scattering
  • Volumetric cloud
  • Collision detection
  • Terrain LOD
  • Order Independent Transparency

Control:

  • num-1,num-2,num-3 switch role to control

  • numpad 2486 to control light direction

  • v cancel role control

  • wasd move

  • space jump

  • mouse-left attack

  • mouse-right defend

Debug:

  • b show depth

  • n show normal

  • m show terrain mesh

  • p show bounding box & printf gl error

Detail:

https://www.zhihu.com/column/c_1177633837260251136

Screenshot:

screen

screen

screen

screen

screen

About

A Small OpenGL Based Renderer


Languages

Language:C++ 96.0%Language:C 3.0%Language:GLSL 0.6%Language:CMake 0.3%Language:Lua 0.0%Language:Batchfile 0.0%