├── .gitignore ├── .vscode ├── c_cpp_properties.json └── settings.json ├── CMakeLists.txt ├── Readme.md ├── demo ├── CameraOrbit.gif ├── Rendermodelchange.gif ├── bump.png ├── displacement.png ├── normal.png ├── phone.png ├── texture.png └── white.png ├── obj ├── Texture │ ├── Normal.jpg │ ├── diffuse.jpg │ └── nm.jpg ├── Triangle │ └── triangle.obj ├── african_head │ ├── african_head.obj │ ├── african_head_SSS.jpg │ ├── african_head_diffuse.tga │ ├── african_head_eye_inner.obj │ ├── african_head_eye_inner_diffuse.tga │ ├── african_head_eye_inner_nm.tga │ ├── african_head_eye_inner_nm_tangent.tga │ ├── african_head_eye_inner_spec.tga │ ├── african_head_eye_outer.obj │ ├── african_head_eye_outer_diffuse.tga │ ├── african_head_eye_outer_gloss.tga │ ├── african_head_eye_outer_nm.tga │ ├── african_head_eye_outer_nm_tangent.tga │ ├── african_head_eye_outer_spec.tga │ ├── african_head_nm.tga │ ├── african_head_nm_tangent.tga │ ├── african_head_spec.tga │ └── readme.txt ├── boggie │ ├── body.obj │ ├── body_diffuse.jpg │ ├── body_nm_tangent.tga │ ├── body_spec.tga │ ├── eyes.obj │ ├── eyes_diffuse.tga │ ├── eyes_nm_tangent.tga │ ├── eyes_spec.tga │ ├── head.obj │ ├── head_diffuse.jpg │ ├── head_nm_tangent.tga │ ├── head_spec.tga │ └── readme.txt ├── cow │ ├── hmap.jpg │ ├── spot_texture.png │ ├── spot_triangulated.obj │ └── spot_triangulated_good.obj ├── diablo3_pose │ ├── diablo3_pose.obj │ ├── diablo3_pose_diffuse.jpg │ ├── diablo3_pose_glow.tga │ ├── diablo3_pose_nm.tga │ ├── diablo3_pose_nm_tangent.tga │ ├── diablo3_pose_spec.tga │ └── readme.txt ├── floor.obj ├── floor_diffuse.tga ├── floor_nm_tangent.tga └── grid.tga └── src ├── CMakeLists.txt ├── Image.cpp ├── Image.h ├── Log.hpp ├── ObjLoader ├── OBJ_Loader.cpp └── OBJ_Loader.h ├── OrbitCamera.hpp ├── Scene ├── Materials.hpp ├── Object.hpp └── Scene.hpp ├── Shader ├── Shader.cpp └── Shader.h ├── Texture ├── Texture.cpp └── Texture.h ├── ThreadPool └── threadpool.hpp ├── Triangle.cpp ├── Triangle.h ├── Vec.hpp ├── main.cpp ├── rasterizer.cpp └── rasterizer.h /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/.gitignore -------------------------------------------------------------------------------- /.vscode/c_cpp_properties.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/.vscode/c_cpp_properties.json -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/CMakeLists.txt -------------------------------------------------------------------------------- /Readme.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/Readme.md -------------------------------------------------------------------------------- /demo/CameraOrbit.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/demo/CameraOrbit.gif -------------------------------------------------------------------------------- /demo/Rendermodelchange.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/demo/Rendermodelchange.gif -------------------------------------------------------------------------------- /demo/bump.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/demo/bump.png -------------------------------------------------------------------------------- /demo/displacement.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/demo/displacement.png -------------------------------------------------------------------------------- /demo/normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/demo/normal.png -------------------------------------------------------------------------------- /demo/phone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/demo/phone.png -------------------------------------------------------------------------------- /demo/texture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/demo/texture.png -------------------------------------------------------------------------------- /demo/white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/demo/white.png -------------------------------------------------------------------------------- /obj/Texture/Normal.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/Texture/Normal.jpg -------------------------------------------------------------------------------- /obj/Texture/diffuse.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/Texture/diffuse.jpg -------------------------------------------------------------------------------- /obj/Texture/nm.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/Texture/nm.jpg -------------------------------------------------------------------------------- /obj/Triangle/triangle.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/Triangle/triangle.obj -------------------------------------------------------------------------------- /obj/african_head/african_head.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/african_head/african_head.obj -------------------------------------------------------------------------------- /obj/african_head/african_head_SSS.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/african_head/african_head_SSS.jpg -------------------------------------------------------------------------------- /obj/african_head/african_head_diffuse.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/african_head/african_head_diffuse.tga -------------------------------------------------------------------------------- /obj/african_head/african_head_eye_inner.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/african_head/african_head_eye_inner.obj -------------------------------------------------------------------------------- /obj/african_head/african_head_eye_inner_diffuse.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/african_head/african_head_eye_inner_diffuse.tga -------------------------------------------------------------------------------- /obj/african_head/african_head_eye_inner_nm.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/african_head/african_head_eye_inner_nm.tga -------------------------------------------------------------------------------- /obj/african_head/african_head_eye_inner_nm_tangent.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/african_head/african_head_eye_inner_nm_tangent.tga -------------------------------------------------------------------------------- /obj/african_head/african_head_eye_inner_spec.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/african_head/african_head_eye_inner_spec.tga -------------------------------------------------------------------------------- /obj/african_head/african_head_eye_outer.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/african_head/african_head_eye_outer.obj -------------------------------------------------------------------------------- /obj/african_head/african_head_eye_outer_diffuse.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/african_head/african_head_eye_outer_diffuse.tga -------------------------------------------------------------------------------- /obj/african_head/african_head_eye_outer_gloss.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/african_head/african_head_eye_outer_gloss.tga -------------------------------------------------------------------------------- /obj/african_head/african_head_eye_outer_nm.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/african_head/african_head_eye_outer_nm.tga -------------------------------------------------------------------------------- /obj/african_head/african_head_eye_outer_nm_tangent.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/african_head/african_head_eye_outer_nm_tangent.tga -------------------------------------------------------------------------------- /obj/african_head/african_head_eye_outer_spec.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/african_head/african_head_eye_outer_spec.tga -------------------------------------------------------------------------------- /obj/african_head/african_head_nm.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/african_head/african_head_nm.tga -------------------------------------------------------------------------------- /obj/african_head/african_head_nm_tangent.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/african_head/african_head_nm_tangent.tga -------------------------------------------------------------------------------- /obj/african_head/african_head_spec.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/african_head/african_head_spec.tga -------------------------------------------------------------------------------- /obj/african_head/readme.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/african_head/readme.txt -------------------------------------------------------------------------------- /obj/boggie/body.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/boggie/body.obj -------------------------------------------------------------------------------- /obj/boggie/body_diffuse.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/boggie/body_diffuse.jpg -------------------------------------------------------------------------------- /obj/boggie/body_nm_tangent.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/boggie/body_nm_tangent.tga -------------------------------------------------------------------------------- /obj/boggie/body_spec.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/boggie/body_spec.tga -------------------------------------------------------------------------------- /obj/boggie/eyes.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/boggie/eyes.obj -------------------------------------------------------------------------------- /obj/boggie/eyes_diffuse.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/boggie/eyes_diffuse.tga -------------------------------------------------------------------------------- /obj/boggie/eyes_nm_tangent.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/boggie/eyes_nm_tangent.tga -------------------------------------------------------------------------------- /obj/boggie/eyes_spec.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/boggie/eyes_spec.tga -------------------------------------------------------------------------------- /obj/boggie/head.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/boggie/head.obj -------------------------------------------------------------------------------- /obj/boggie/head_diffuse.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/boggie/head_diffuse.jpg -------------------------------------------------------------------------------- /obj/boggie/head_nm_tangent.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/boggie/head_nm_tangent.tga -------------------------------------------------------------------------------- /obj/boggie/head_spec.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/boggie/head_spec.tga -------------------------------------------------------------------------------- /obj/boggie/readme.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/boggie/readme.txt -------------------------------------------------------------------------------- /obj/cow/hmap.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/cow/hmap.jpg -------------------------------------------------------------------------------- /obj/cow/spot_texture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/cow/spot_texture.png -------------------------------------------------------------------------------- /obj/cow/spot_triangulated.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/cow/spot_triangulated.obj -------------------------------------------------------------------------------- /obj/cow/spot_triangulated_good.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/cow/spot_triangulated_good.obj -------------------------------------------------------------------------------- /obj/diablo3_pose/diablo3_pose.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/diablo3_pose/diablo3_pose.obj -------------------------------------------------------------------------------- /obj/diablo3_pose/diablo3_pose_diffuse.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/diablo3_pose/diablo3_pose_diffuse.jpg -------------------------------------------------------------------------------- /obj/diablo3_pose/diablo3_pose_glow.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/diablo3_pose/diablo3_pose_glow.tga -------------------------------------------------------------------------------- /obj/diablo3_pose/diablo3_pose_nm.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/diablo3_pose/diablo3_pose_nm.tga -------------------------------------------------------------------------------- /obj/diablo3_pose/diablo3_pose_nm_tangent.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/diablo3_pose/diablo3_pose_nm_tangent.tga -------------------------------------------------------------------------------- /obj/diablo3_pose/diablo3_pose_spec.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/diablo3_pose/diablo3_pose_spec.tga -------------------------------------------------------------------------------- /obj/diablo3_pose/readme.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/diablo3_pose/readme.txt -------------------------------------------------------------------------------- /obj/floor.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/floor.obj -------------------------------------------------------------------------------- /obj/floor_diffuse.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/floor_diffuse.tga -------------------------------------------------------------------------------- /obj/floor_nm_tangent.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/floor_nm_tangent.tga -------------------------------------------------------------------------------- /obj/grid.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/obj/grid.tga -------------------------------------------------------------------------------- /src/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/src/CMakeLists.txt -------------------------------------------------------------------------------- /src/Image.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/src/Image.cpp -------------------------------------------------------------------------------- /src/Image.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/src/Image.h -------------------------------------------------------------------------------- /src/Log.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/src/Log.hpp -------------------------------------------------------------------------------- /src/ObjLoader/OBJ_Loader.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/src/ObjLoader/OBJ_Loader.cpp -------------------------------------------------------------------------------- /src/ObjLoader/OBJ_Loader.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/src/ObjLoader/OBJ_Loader.h -------------------------------------------------------------------------------- /src/OrbitCamera.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/src/OrbitCamera.hpp -------------------------------------------------------------------------------- /src/Scene/Materials.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/src/Scene/Materials.hpp -------------------------------------------------------------------------------- /src/Scene/Object.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/src/Scene/Object.hpp -------------------------------------------------------------------------------- /src/Scene/Scene.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/src/Scene/Scene.hpp -------------------------------------------------------------------------------- /src/Shader/Shader.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/src/Shader/Shader.cpp -------------------------------------------------------------------------------- /src/Shader/Shader.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/src/Shader/Shader.h -------------------------------------------------------------------------------- /src/Texture/Texture.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/src/Texture/Texture.cpp -------------------------------------------------------------------------------- /src/Texture/Texture.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/src/Texture/Texture.h -------------------------------------------------------------------------------- /src/ThreadPool/threadpool.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/src/ThreadPool/threadpool.hpp -------------------------------------------------------------------------------- /src/Triangle.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/src/Triangle.cpp -------------------------------------------------------------------------------- /src/Triangle.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/src/Triangle.h -------------------------------------------------------------------------------- /src/Vec.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/src/Vec.hpp -------------------------------------------------------------------------------- /src/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/src/main.cpp -------------------------------------------------------------------------------- /src/rasterizer.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/src/rasterizer.cpp -------------------------------------------------------------------------------- /src/rasterizer.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiarGs/Tinyrenderer/HEAD/src/rasterizer.h --------------------------------------------------------------------------------