Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/Angelo1211/SoftwareRenderer
/ types & classes
Types & classes
28 in github.com/Angelo1211/SoftwareRenderer
⨍
Functions
364
◇
Types & classes
28
↓ 7 callers
Class
Vector3
include/vector3D.h:24
↓ 1 callers
Class
stat
src/scene.cpp:206
Class
AABox
Struct containing vertex data for a AABB around the model. Primarily for use in frustum culling Regiong R = {(x, y, z) | min.x <=x <= max.x | same Y |
include/geometry.h:20
Class
BaseLight
include/light.h:12
Class
BlinnPhongShader
Optimized version of Phong shader that uses a half angle instead of individual reflection angles
include/shader.h:150
Class
Buffer
include/buffer.h:16
Class
Camera
include/camera.h:23
Class
DisplayManager
include/displayManager.h:17
Class
Engine
Very basic graphics engine application. In charge of initializing and closing down all manager-level classes in a safe way.
include/engine.h:23
Class
FlatShader
Simplest shader. Calculates light intensity per triangle.
include/shader.h:32
Class
Frustrum
The shape of the camera view area
include/geometry.h:40
Class
GouraudShader
More Complex shader that calculates a per-vertex intensity and interpolates through the fragments of the triangle
include/shader.h:53
Class
IShader
Shader Interface for a class that emulates modern GPU fragment and vertex shaders
include/shader.h:23
Class
InputManager
include/inputManager.h:22
Class
Matrix4
include/matrix.h:30
Class
Mesh
Struct containing information relevant to the renderer about the vertices, normals and texture coordinates of a model. Also keeps track of useful stuf
include/mesh.h:20
Class
Model
include/model.h:24
Class
PBRShader
Shader that uses texture mapping and a PBR approach for shading Uses a cook-torrance BRDF for direct light sources.
include/shader.h:277
Class
PhongShader
Even more complex shader that interpolates normals and calculates intensities per fragment instead instead of per vertex.
include/shader.h:100
Class
Plane
Only used in frustrum culling, a frustrum has 6 planes Equation is Ax + By + Cz + D = 0 (or somthing)
include/geometry.h:31
Class
Rasterizer
Takes in vertex data, rasterizes the surface and applies the fragment shader at each fragment. If it passes the depth test the fragment is written to
include/rasterizer.h:30
Class
RenderManager
High level render operations that shouldn't be done by the basic graphics lib.
include/renderManager.h:28
Class
Scene
include/scene.h:25
Class
SceneManager
include/sceneManager.h:20
Class
SoftwareRenderer
include/softwareRenderer.h:28
Class
Texture
include/texture.h:21
Class
TextureMapShader
Shader that uses texture mapping extensively
include/shader.h:202
Class
TransformParameters
Data struct holding all of the data you need to make a transform matrix
include/matrix.h:23