sft
所属分类:3D图形编程
开发工具:C++
文件大小:0KB
下载次数:0
上传日期:2023-06-20 06:40:27
上 传 者:
sh-1993
说明: 软件渲染器。
(A software renderer.)
文件列表:
.clang-format (192, 2023-12-20)
CMakeLists.txt (810, 2023-12-20)
LICENSE (1070, 2023-12-20)
Makefile (747, 2023-12-20)
fixtures/ (0, 2023-12-20)
fixtures/airplane.jpg (71385, 2023-12-20)
fixtures/bay_bridge.jpg (138780, 2023-12-20)
fixtures/boston.jpg (199554, 2023-12-20)
fixtures/demo/ (0, 2023-12-20)
fixtures/demo/demo1.png (518145, 2023-12-20)
fixtures/demo/demo2.png (227672, 2023-12-20)
fixtures/demo/demo3.png (463299, 2023-12-20)
fixtures/demo/demo4.png (355561, 2023-12-20)
fixtures/demo/demo5.png (129334, 2023-12-20)
fixtures/demo/demo6.png (196503, 2023-12-20)
fixtures/embarcadero.jpg (115292, 2023-12-20)
fixtures/helmet/ (0, 2023-12-20)
fixtures/helmet/Base.png (4996846, 2023-12-20)
fixtures/helmet/Emissive.png (216797, 2023-12-20)
fixtures/helmet/Helmet.mtl (224, 2023-12-20)
fixtures/helmet/Helmet.obj (1827333, 2023-12-20)
fixtures/helmet/Shadows.png (1018132, 2023-12-20)
fixtures/kalimba.jpg (68061, 2023-12-20)
fixtures/marble.jpg (1512669, 2023-12-20)
fixtures/teapot/ (0, 2023-12-20)
fixtures/teapot/default.mtl (304, 2023-12-20)
fixtures/teapot/default.png (114, 2023-12-20)
fixtures/teapot/teapot.obj (868777, 2023-12-20)
fixtures/tile.png (19176, 2023-12-20)
sft.sublime-project (965, 2023-12-20)
src/ (0, 2023-12-20)
src/CMakeLists.txt (157, 2023-12-20)
src/canvas/ (0, 2023-12-20)
src/canvas/CMakeLists.txt (195, 2023-12-20)
src/canvas/canvas.cc (3809, 2023-12-20)
src/canvas/canvas.h (785, 2023-12-20)
src/canvas/color_shader.cc (149, 2023-12-20)
... ...
# A Software Renderer
A software renderer modelled after graphics APIs like Metal and Vulkan. A programmable shader based graphics pipeline, depth & stencil buffers, blending, custom ImGUI integration, etc..
| Depth Buffers | Stencil Buffers |
:-------------------------:|:---------------------------:
![](https://github.com/chinmaygarde/sft/blob/master/fixtures/demo/demo1.png) | ![](https://github.com/chinmaygarde/sft/blob/master/fixtures/demo/demo5.png) |
| ImGUI Integration | Instrumentation |
![](https://github.com/chinmaygarde/sft/blob/master/fixtures/demo/demo2.png) | ![](https://github.com/chinmaygarde/sft/blob/master/fixtures/demo/demo4.png) |
| Texture Sampling | Blending |
![](https://github.com/chinmaygarde/sft/blob/master/fixtures/demo/demo3.png) | ![](https://github.com/chinmaygarde/sft/blob/master/fixtures/demo/demo6.png) |
## Dependencies
This is a very simple CMake project. The Makefile at the project root has tasks to make development easier. The Makefile does assume you have `cmake` and `ninja` installed on your host.
## Build & Run
* `make sync` ensures that the right sub-module dependencies are pulled in.
* `make run` runs the demo application.
近期下载者:
相关文件:
收藏者: