Piotr Krygier
c9384eb795
[WIP] Try to enable alpha blending
2025-06-20 13:44:33 +02:00
Piotr Krygier
fb3151c5d1
[WIP] Render full text on screen
2025-06-20 13:44:33 +02:00
Piotr Krygier
d59d8c640e
[WIP] Add render text functionality
2025-06-20 13:44:33 +02:00
Piotr Krygier
c1a8b14a90
[WIP] Fonts update
2025-06-20 13:44:33 +02:00
Piotr Krygier
99d7546e3d
Fix instance buffer size
2025-06-20 13:44:33 +02:00
Piotr Krygier
b2508ce4ff
[WIP] Add text rendering
2025-06-20 13:44:33 +02:00
Piotr Krygier
3bd14b20c2
Minor cleanup and texture update
2025-06-20 13:44:33 +02:00
Piotr Krygier
2d230d7280
Implement mulitsampling
2025-06-20 13:44:33 +02:00
Piotr Krygier
3c73e6bac3
Remove boilerplate code from rse_vulkan_image.c
2025-06-20 13:44:33 +02:00
Piotr Krygier
1f585b4d8e
Refactoring
...
Cleaned up a project, removed uneccessary includes.
Fixed few errors, nothing major.
2025-06-20 13:44:33 +02:00
Piotr Krygier
42dc4d6fcd
Refactor project
...
Crealned up some TODOs, FIXMEs etc. Added better error handling. Looks
better, feels better.
2023-10-10 10:46:12 +02:00
Piotr Krygier
bd4dd74881
Add bindless textures
...
Created bindless descriptors for holding texture data.
2023-10-04 13:29:23 +02:00
Piotr Krygier
d328e38761
Add depth buffering
2023-10-03 13:22:24 +02:00
Piotr Krygier
548ed57969
Add textures
...
Textures supported
2023-10-03 09:00:02 +02:00
Piotr Krygier
4fcda01ba2
Add texture handler
...
Added functionality to load images as textures and bind them to meshes.
2023-10-02 13:21:17 +02:00
Piotr Krygier
0e040dd0d5
Move common log to new locale
2023-09-27 08:03:39 +02:00
Piotr Krygier
252a0820ed
Move to bindless design
...
Replaced DrawIndexed with DrawIndexedIndirect function. This way
less parameters are passed from CPU and are store in GPU
mapped memory. Multiple meshes with multiple instances also work.
2023-09-26 14:15:21 +02:00
Piotr Krygier
3a58bd8756
Improve logging output
2023-09-26 14:15:21 +02:00
Piotr Krygier
7ca73f3c60
Fix queue family validation error
2023-09-26 14:15:21 +02:00
Piotr Krygier
940bc7e512
Remove RAM stored mesh data
...
Remove RAM stored vertices and indices data. It is now stored only in
GPU memory.
2023-09-26 14:15:21 +02:00
Piotr Krygier
0ef475e57e
Add time function
...
Updates to objects should not be done in frame by frame basis, but by
time difference. This commit adds time diff function which can be used
to tell how much time has passed since last frame.
2023-09-26 14:15:21 +02:00
Piotr Krygier
863f502dde
Improve threading
2023-09-11 11:15:25 +02:00
Piotr Krygier
507db80fb1
Create simple thread library
2023-08-14 14:49:57 +02:00
Piotr Krygier
3d538eaa2c
Move back to C
...
I'm insane and as such I have moved to C AGAIN! Without any reason.
2023-08-14 13:48:29 +02:00
Piotr Krygier
bf31b96a2e
Add my own math library
...
GLM works only for C++ and I plan on moving to back to C. There is
a C port, but it would be good for me to figure out vertex math myself.
Hence, my own library has been created.
2023-08-10 09:43:26 +02:00
Piotr Krygier
c22569cc48
Added Criterion unit test framework
2023-08-08 10:41:07 +02:00
Piotr Krygier
a82550d414
Addded depenendency load tool
...
Added simple python script that will load needed libraries into
the project folder structure. Most libraries are now not needed to be
present in development system.
2023-08-07 13:48:30 +02:00
Piotr Krygier
320c9293b1
Update return types
2023-05-13 17:47:42 +02:00
Piotr Krygier
6781c1cff1
Remove VulkanState dependency
...
Passing VulkanState everywhere (including windowLoop) made no sense.
I know that "globals are evil", but this is the best solution for now.
2023-04-04 15:27:42 +02:00
Piotr Krygier
e06288320d
Enable multiple buffers
...
Enables creation of multiple mesh objects in a single buffer. This is
still WIP.
2023-04-04 14:56:31 +02:00
Piotr Krygier
c4734e99c2
Add basic functionality to draw instances
...
Allows creation of instances of meshes and drawing all of them with
single draw call. Instances can have their own transformation data
(location, rotation and scale).
2023-03-31 16:31:47 +02:00
Piotr Krygier
6a09350902
Split vulkan_base into smaller units
...
Closes #30 . This is a basic refactoring of the graphics module, so
everything won't be in single file.
2023-03-29 09:41:04 +02:00
Piotr Krygier
649e7f76fe
Change build system to CMake
...
According to my own documentation, the project tree should look entirely
different. Also, it should use CMake instead of Make. This commit
introduces changes that will make my project tree to adhere to my
own documentation.
2023-03-16 12:04:35 +01:00
Piotr Krygier
0c45da5cc4
Cleanup code
2023-03-16 12:04:35 +01:00
Piotr Krygier
d0ac0f0e97
Remove hardocded window system
2023-03-16 12:04:35 +01:00
Piotr Krygier
a175045518
Change Buffer struct to hold AllocationInfo
...
Added allocationInfo field to struct Buffer. Also, modified createBuffer
to use this field. This might be useful, when accessing allocation
information later. Already used for uniform buffers.
2023-03-16 12:04:35 +01:00
Piotr Krygier
cce4875329
Add uniform buffers
2023-03-08 14:36:30 +01:00
Piotr Krygier
a94e7a95f5
Add index buffer
2022-12-17 21:57:11 +01:00
Piotr Krygier
f8b32717f3
Add staging buffer
2022-12-17 21:25:00 +01:00
Piotr Krygier
f4a6260a5e
Fix some TODOs and FIXMEs
2022-12-14 15:44:57 +01:00
Piotr Krygier
34665e1c2e
Change vertex buffer handling
...
Previously vertex data was only in shaders. I have removed it from there
and put hardcoded vertex data into cpp source code.
2022-12-14 14:16:30 +01:00
Piotr Krygier
e7b9d4a32f
Changed project back to C++
2022-10-05 15:51:19 +02:00
Piotr Krygier
ce0c399810
Move back to C++
2022-07-05 16:03:31 -04:00
Piotr Krygier
4755371ffa
Cleanup repo
2022-06-28 09:54:41 +02:00