Releases: Lut99/Rasterizer
v0.5.0 - Re-implemented Texture support
We finally have textures working again by finally finishing the SimpleTextured material. Additionally, fixed incorrect material colours by applying gamma correction when loading .obj/.mtl files.
v0.4.0 - Multi-material type support
In this release, we reworked the entity organisation to have the concept of materials. This way, we have a new MaterialSystem, that not only stores materials and loads them efficiently but also supports creating a pipeline per type of material and using that to render it. That means we can now render each face with its own material.
Additionally, we also got rid of our own .obj/.mtl loader and instead use tinyobjloader.
v0.3.0 - Reworked Pipeline system
In this release, we completely redesigned the Pipeline system, meaning it's now more efficient and has a much better API interface (which was the main reason for redesigning). Additionally, it now makes use of Vulkan's pipeline caches, meaning that the executable will spawn pipeline.cache files that can be used across runs for faster pipeline building.
On top of that, the Rasterizer is now much more presentation friendly, with automatic file exports to an export directory and filepaths that depend on the .exe location rather than the cwd.
v0.2.0 - Reworked render loop
To fix most of the memory-related bugs in the Rasterizer, and to have a much cleaner render loop, we reworked it with the use of a frame manager that handles pulling all frames. Only has a small Vulkan error left that I don't know how to fix, but seems to work fine regardless.
v0.1.0 - Single-mesh texture support
The renderer works reasonably well for textures now, as long as you don't add any more than one model. Also, doesn't support non-textured materials yet.