I have stopped developing version on master and now focusing only on rendering on branch: 3D_Renderer. When I will finish simple 3D renderer I will return to YasEngine as whole tool to create games. This new 3D YasEngine will be used for the purpose of creating new 3D game loosely based on Beauty of Math.
First game released on YasEngine:
https://lukesawicki.itch.io/beauty-of-math
YasEngine with software renderer. This version of YasEngine is for learning purposes only. I decided to move from Vulkan to OpenGL as somone smart advised me (He said that for person who didnt do anything with graphics programming it would be good to start from easier graphics API than Vulkan). Then I wanted to do few things by my self for start, to understand basics of graphics programming. (By that I mean implementing known algorithms but not by rewritting code but by reading, getting undestand fully and then implementing) So the result is that I'm implementing simple engine with Software renderer to learn how it works. Oviously, all things that I'm implementing here are of course rediscovering the wheel. And it is allowing me to learn an insane amount of knowledge about the basics of rendering. I'm learning from many amazing sources like:
Micheal Abrash Black Book: https://github.com/jagregory/abrash-black-book Scrachpixel: https://www.scratchapixel.com/lessons/3d-basic-rendering/get-started Lazy Foo: https://lazyfoo.net/tutorials/SDL/ Wikipedia: https://www.wikipedia.org/ University of Helsinki: https://www.helsinki.fi/en/faculty-science/faculty/computer-science Hobart and William Smith College: https://math.hws.edu/graphicsbook/ and many other sources which I found during my work on my own Game Engine. I didn't realize that will be that fun!! Seriously. It is hard but fun when you not just rewrite code from interenet but try to understand the idea and reimplement it with full understending of the topic.