Project Name | Stars | Downloads | Repos Using This | Packages Using This | Most Recent Commit | Total Releases | Latest Release | Open Issues | License | Language |
---|---|---|---|---|---|---|---|---|---|---|
Tinyrenderer | 16,118 | 4 months ago | 38 | other | C++ | |||||
A brief computer graphics / rendering course | ||||||||||
Filament | 15,863 | 2 | 4 | 21 hours ago | 93 | September 20, 2022 | 99 | apache-2.0 | C++ | |
Filament is a real-time physically based rendering engine for Android, iOS, Windows, Linux, macOS, and WebGL2 | ||||||||||
Bgfx | 13,046 | 14 days ago | 1 | July 11, 2022 | 287 | bsd-2-clause | C++ | |||
Cross-platform, graphics API agnostic, "Bring Your Own Engine/Framework" style rendering library. | ||||||||||
Spritejs | 5,071 | 6 | 27 | 6 months ago | 430 | July 03, 2022 | 66 | mit | JavaScript | |
A cross platform high-performance graphics system. | ||||||||||
Tinyraytracer | 4,451 | 4 months ago | 15 | C++ | ||||||
A brief computer graphics / rendering course | ||||||||||
Webglstudio.js | 4,064 | 3 years ago | 31 | mit | JavaScript | |||||
A full open source 3D graphics editor in the browser, with scene editor, coding pad, graph editor, virtual file system, and many features more. | ||||||||||
Gg | 3,840 | 106 | 266 | 2 months ago | 7 | September 28, 2021 | 85 | mit | Go | |
Go Graphics - 2D rendering in Go with a simple API. | ||||||||||
Game Programmer Study Notes | 3,357 | 2 years ago | 1 | |||||||
:anchor: 我的游戏程序员生涯的读书笔记合辑。你可以把它看作一个加强版的Blog。涉及图形学、实时渲染、编程实践、GPU编程、设计模式、软件工程等内容。Keep Reading , Keep Writing , Keep Coding. | ||||||||||
Diligentengine | 2,855 | 15 hours ago | 15 | apache-2.0 | Batchfile | |||||
A modern cross-platform low-level graphics library and rendering framework | ||||||||||
Real Time Rendering 4th Bibliography Collection | 2,747 | 6 months ago | 101 | mit | HTML | |||||
Real-Time Rendering 4th (RTR4) 参考文献合集典藏 | Collection of <Real-Time Rendering 4th (RTR4)> Bibliography / Reference |
This repository is a teaching aid for my computer graphics lectures. It is not meant to produce the ultimate or even physically realistic renders. It is meant to be simple. This project is distributed under the DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE.
Check the article that accompanies the source code.
This project is closely related to my software raytracer. If you are looking for a software rasterizer, check the other part of the lectures.
In my lectures I tend to avoid third party libraries as long as it is reasonable, because it forces to understand what is happening under the hood. So, the raytracing in 180 lines of plain C++ produces this result:
git clone https://github.com/ssloy/tinykaboom.git
cd tinykaboom
mkdir build
cd build
cmake ..
make
You can open the project in Gitpod, a free online dev evironment for GitHub:
On open, the editor will compile & run the program as well as open the resulting image in the editor's preview. Just change the code in the editor and rerun the script (use the terminal's history) to see updated images.
The possibilities are infinte. For example, you can add the environment map and some transparency:
Add other objects and illuminate them: