Commit Graph

14 Commits

Author SHA1 Message Date
Piotr Krygier dd70f5e5b0 Add gltf loader
Added MIT licensed external library for loading gltf
files

Signed-off-by: Piotr Krygier <piotrkrygier@everyonecancode@xyz>
2026-03-13 11:49:26 +01:00
Piotr Krygier c6825caa69 Implement event handler
Added event handler implementation.
Moved enginge specific implementation outside graphics module

Signed-off-by: Piotr Krygier <piotrkrygier@everyonecancode@xyz>
2026-03-04 11:04:53 +01:00
Piotr Krygier bbbe69d73c Prepare for event system
Moved stuff around.
Create an entry point for RSE.
Created base for events module

Signed-off-by: Piotr Krygier <piotrkrygier@everyonecancode@xyz>
2026-03-03 11:26:43 +01:00
Piotr Krygier 7d6156be01 Add movement relative to time
Previously movement was based on frames rather than
time. I added time_get_dt() function for getting time
since last frame and changed rotation speed to use this
function.

Signed-off-by: Piotr Krygier <piotrkrygier@everyonecancode@xyz>
2026-02-24 13:38:04 +01:00
Piotr Krygier 415d4394c2 Add FPS counter
Added console FPS counter. Thise required me to create
some time functions and remove FPS cap from Vulkan

Signed-off-by: Piotr Krygier <piotrkrygier@everyonecancode@xyz>
2026-02-11 18:53:48 +01:00
Piotr Krygier de597ebc5d Replace uniform with storage buffer for instances
Signed-off-by: Piotr Krygier <piotrkrygier@everyonecancode@xyz>
2026-02-10 19:07:40 +01:00
Piotr Krygier ff527767b9 Add scene time based rotation
Added time based scene rotation as a proof of concept.
Based on this implementation, I can not only move
scene using external data (like mouse, in the future)
but also I can use provided functionality to get high resolution
timer for future use

Signed-off-by: Piotr Krygier <piotrkrygier@everyonecancode@xyz>
2026-02-10 15:50:36 +01:00
Piotr Krygier b8fc36910f Replace MVP uniform buffer with push constants
UBO should be used for large data. MVP should be
push constants, since it's a small amount of data
updated every frame

Signed-off-by: Piotr Krygier <piotrkrygier@everyonecancode@xyz>
2026-02-10 14:34:11 +01:00
Piotr Krygier b8509a9a68 Add push constants
Added functions for adding push constants to pipeline

Signed-off-by: Piotr Krygier <piotrkrygier@everyonecancode@xyz>
2026-02-10 13:09:18 +01:00
Piotr Krygier 954876549d Create typedef for IDs
There was a code, where id for something was u32, and
u16 for other things. I have created a typedef to fix
that

Signed-off-by: Piotr Krygier <piotrkrygier@everyonecancode@xyz>
2026-02-10 10:25:01 +01:00
Piotr Krygier 55e0ee261e Remove stack implementation
There is no need for stack implementation to be used here.
Simple C operations are enough for now

Signed-off-by: Piotr Krygier <piotrkrygier@everyonecancode@xyz>
2026-02-10 10:25:00 +01:00
Piotr Krygier 3dcf7fec56 Fix naming conventions
Fixed some functions names that were not following my convention

Signed-off-by: Piotr Krygier <piotrkrygier@everyonecancode@xyz>
2026-02-10 10:24:59 +01:00
Piotr Krygier b7a472fe45 Descriptor update
Updated descriptor set build to use function parameters instead of
global vars

Signed-off-by: Piotr Krygier <piotrkrygier@everyonecancode@xyz>
2026-02-10 10:24:50 +01:00
Piotr Krygier 493afb05e6 Initial commit
This is working repository now. I had to clean this up due to
my f_ups, that made this simple repo around 200MB large.

Signed-off-by: Piotr Krygier <piotrkrygier@everyonecancode@xyz>
2026-02-10 10:24:45 +01:00