MCPcopy Create free account

hub / github.com/Angelo1211/SoftwareRenderer / functions

Functions364 in github.com/Angelo1211/SoftwareRenderer

↓ 1 callersFunctionstbi__zhuffman_decode_slowpath
libs/stb_image.h:3913
↓ 1 callersFunctionstbi_image_free
libs/stb_image.h:952
↓ 1 callersFunctionstbi_info_from_file
libs/stb_image.h:7176
↓ 1 callersFunctionstbi_is_16_bit_from_file
libs/stb_image.h:7197
↓ 1 callersFunctionstbi_is_hdr_from_file
libs/stb_image.h:1335
↓ 1 callersFunctionstbi_load
libs/stb_image.h:1159
↓ 1 callersFunctionstbi_load_from_file
libs/stb_image.h:1169
↓ 1 callersFunctionstbi_loadf_from_file
libs/stb_image.h:1296
↓ 1 callersFunctionstbi_set_flip_vertically_on_load
libs/stb_image.h:967
↓ 1 callersFunctionstbi_zlib_decode_malloc_guesssize
libs/stb_image.h:4178
↓ 1 callersFunctionstbi_zlib_decode_malloc_guesssize_headerflag
libs/stb_image.h:4199
↓ 1 callersMethodswapBuffers
Applies the rendering results to the window screen by copying the pixelbuffer values to the screen surface.
src/displayManager.cpp:43
↓ 1 callersMethodswitchScene
Checks if the scene that you want to load is not the one that is currently loaded. If it isn't, then it deletes the current one and loads the new one.
src/sceneManager.cpp:31
↓ 1 callersMethodupdate
Update Order is critical for correct culling
src/scene.cpp:39
↓ 1 callersMethodvertex
Vertex shader
include/shader.h:330
MethodBuffer
include/buffer.h:27
MethodCamera
src/camera.cpp:9
MethodDisplayManager
Dummy constructors/destructors
src/displayManager.cpp:10
MethodEngine
Dummy constructors and destructors
src/engine.cpp:10
MethodFrustrum
include/geometry.h:48
MethodGeometrySchlickGGX
include/shader.h:318
MethodGeometrySmith
include/shader.h:325
MethodInputManager
Dummy constructors and destructors
src/inputManager.cpp:10
MethodMatrix4
include/matrix.h:32
MethodModel
On model creation all textures are loaded, the mesh is built and even an AABB is built.
include/model.h:28
MethodRasterizer
include/rasterizer.h:62
MethodRenderManager
Dummy constructors / Destructors
src/renderManager.cpp:10
MethodScene
src/scene.cpp:14
MethodSceneManager
Dummy constructors / destructors
src/sceneManager.cpp:10
MethodSoftwareRenderer
Dummy Constructor / Destructor
src/softwareRenderer.cpp:13
MethodTBNMatrix
Transposed to get world-tangent transform You can transpose it instead of inverting it because it's orthogonal
src/matrix.cpp:402
MethodTexture
Depending on the type of texture the data that is loaded must be transformed in different ways.
src/texture.cpp:14
MethodTransformParameters
include/matrix.h:24
MethodVector3
Constructors
include/vector3D.h:41
MethodbackFaceCulling
Gets view direction in object space and uses it to check if the facet normal Is aligned with the viewdirection
src/softwareRenderer.cpp:175
MethodbuildRenderQueue
Gets the list of visible models from the current scene Done every frame in case scene changes
src/renderManager.cpp:58
Methodclamp
src/rasterizer.cpp:242
MethodclipTriangles
Inside bounds described in perspective matrix calculation
src/softwareRenderer.cpp:185
MethodcreateBuffers
src/softwareRenderer.cpp:148
MethodcreateScreenSurface
Gets the screen surface I know this is "Old" SDL and it's not really recommended anymore But given that I am doing 100% cpu based rendering it makes s
src/displayManager.cpp:79
MethodcreateWindow
Inits window with the display values crated at compile time
src/displayManager.cpp:66
MethoddescribeMesh
src/mesh.cpp:9
MethoddistributionGGX
include/shader.h:307
Methoddot2D
include/vector3D.h:86
MethoddrawLine
src/rasterizer.cpp:60
MethoddrawTriangles
Candidate for future total overhaul into a SIMD function Why not now? Before doing this I have to do: 1.vectorize: Shader, vector3 class rewrite 2.Edg
src/rasterizer.cpp:116
MethoddrawWireFrame
src/rasterizer.cpp:103
Methodedge
src/rasterizer.cpp:229
MethodfileExists
src/objParser.cpp:22
MethodfindSceneFolder
src/scene.cpp:205
Methodfragment
include/shader.h:45
Methodfragment
include/shader.h:83
Methodfragment
include/shader.h:127
Methodfragment
include/shader.h:176
Methodfragment
include/shader.h:246
MethodfresnelSchlick
BRDF functions
include/shader.h:303
MethodfrustrumCulling
src/scene.cpp:239
MethodfullRotMat
Uses ZYX convention for rotation
src/matrix.cpp:273
MethodgammaAdjust
Gamma adjustment table precalculated for a 2.2 gamma value signficant ms gains from this!!
src/rasterizer.cpp:248
MethodhandleEvent
Handles all the current valid user events: 1. User requested quits 2. Keyboard presses 3. Mouse movement 4. Mouse clicks 5. Mouse wheel movement
src/inputManager.cpp:51
MethodinitSoftwareRenderer
src/renderManager.cpp:73
Methodinside
Doing this check was slower than allowing overwrites on certain triangle edges so it's
src/rasterizer.cpp:233
Methodlength
include/vector3D.h:89
MethodloadContent
TODO: separate into new class or function Config file parsing, gets all the important
src/scene.cpp:72
MethodloadFileData
Main OBJ parsing function
src/objParser.cpp:28
MethodloadScene
Loads the scene with the given ID. If the scene is empty it will declare it an unsuccesful load and attempt to quit early of the whole program
src/sceneManager.cpp:54
MethodloadSceneModel
src/scene.cpp:224
MethodlookAt
Moves the whole world to place the origin at the current camera position And wrt its direction
src/matrix.cpp:343
Functionmain
src/main.cpp:9
MethodmakeCoolPattern
Early pixel buffer traversal test
src/rasterizer.cpp:41
MethodmakeTestMat
1-15 values
src/matrix.cpp:250
Methodoperator*
Way too general, should probably change in the future since I think I'll only need 4x4 stuff and this technically allows for any n matrix. Traverse th
src/matrix.cpp:225
Methodoperator*
include/vector3D.h:56
Methodoperator+
include/vector3D.h:58
Methodoperator+=
include/vector3D.h:68
Methodoperator-
Scalar-vector operations
include/vector3D.h:54
Methodoperator-=
include/vector3D.h:74
MethodpackDataIntoTris
src/softwareRenderer.cpp:167
MethodperspectiveDivide
src/softwareRenderer.cpp:198
Methodprint
src/matrix.cpp:427
Methodprint
Print for debugging purposes
include/vector3D.h:110
MethodprojectionMatrix
Assumes a symmetrical frustrum with euqal fov for horizontal and vertical Also uses the inverse z trick to in theory improve zbuffer precision
src/matrix.cpp:380
Methodreflect
Only used for blinn shading within specular reflection calculations
include/vector3D.h:105
Functionresample_row_1
libs/stb_image.h:3164
MethodscaleMat
Fills values along diagonal only
src/matrix.cpp:306
MethodshutDown
src/softwareRenderer.cpp:26
MethodshutDown
src/renderManager.cpp:25
MethodshutDown
src/sceneManager.cpp:25
MethodshutDown
src/inputManager.cpp:22
MethodshutDown
Closes down sdl and destroys window. SDL surface is also destroyed in the call to destroy window
src/displayManager.cpp:35
MethodsplitStr
Creates stringstream of string and subdivides it by the delimeter and returns a vector of the individual components of the string
src/objParser.cpp:75
MethodstartSDL
Entry point to SDL
src/displayManager.cpp:57
MethodstartUp
src/softwareRenderer.cpp:16
MethodstartUp
Starts up the scene manager and loads the default scene If for whatever reason the scene could not load any model, or there are none defined It just q
src/sceneManager.cpp:16
MethodstartUp
src/inputManager.cpp:13
MethodstartUp
Initializes the window and obtains the surface on which we draw. Also first place where SDL is initialized.
src/displayManager.cpp:15
Functionstbi__YCbCr_to_RGB_row
libs/stb_image.h:3368
Functionstbi__YCbCr_to_RGB_simd
libs/stb_image.h:3394
Functionstbi__idct_block
libs/stb_image.h:2204
Functionstbi__idct_simd
sse2 integer IDCT. not the fastest possible implementation but it produces bit-identical results to the generic C version so it's fully "transparent".
libs/stb_image.h:2267
← previousnext →201–300 of 364, ranked by callers