Kevin Trogant
e93847b187
Begin and end pass
2024-04-03 22:56:31 +02:00
Kevin Trogant
2651ce2e9d
buffers
2024-04-03 22:01:33 +02:00
Kevin Trogant
565c330f71
render targets
2024-04-03 20:56:10 +02:00
Kevin Trogant
2035f73f3e
init dx11 and basic present
2024-04-02 19:47:28 +02:00
Kevin Trogant
5a7d06e123
null implementation of the render graph builder
2024-04-02 19:44:51 +02:00
Kevin Trogant
c7e5bb8a31
Render Graph prep
2024-04-02 19:43:02 +02:00
Kevin Trogant
3bc192b281
dump state
...
this will be the basis of the framegraph rewrite, because the current
state is fucked
2024-03-25 17:55:03 +01:00
Kevin Trogant
6f89dd4c46
Try to improve resource layout transition
2024-03-17 15:10:45 +01:00
Kevin Trogant
2a2a743c78
Merge branch 'main' of https://libneat.hopto.org/git/kevin/rtengine
2024-03-08 01:13:16 +01:00
Kevin Trogant
3d0d4169f1
Progress towards rendering with effects
...
- Added a null renderer to simplify testing
2024-03-08 01:13:10 +01:00
a817cb2781
Update docs/LINKS.md
2024-03-05 08:36:28 +01:00
Kevin Trogant
efd1f5f983
Merge branch 'main' of https://libneat.hopto.org/git/kevin/rtengine
2024-02-29 16:49:57 +01:00
Kevin Trogant
41fe5426b8
Start work on effect files
...
Extends pipeline files
2024-02-29 16:43:27 +01:00
Kevin Trogant
b4eef37741
Fix linux build
...
I did not test if it actually runs, but it builds with warning_level=2.
2024-02-29 16:12:09 +01:00
Kevin Trogant
28711ccb72
2/2 Fix meson_options.txt
2024-02-29 10:27:15 +01:00
Kevin Trogant
db9b0f5b10
1/2 Fix meson_options.txt mess
...
It's currently a symlink.
This commit deletes the file, the second will re-add it properly
2024-02-29 10:25:27 +01:00
Kevin Trogant
36e2314f35
Fix for allocation problems
...
- Double allocation because of missing break
2024-02-28 16:34:43 +01:00
Kevin Trogant
8dc4f794b3
Workaround for memory corruption in asset processor
...
Somehow the asset processor threads corrupt each others memory - replace
the asset of thread X with the asset of thread Y.
Weird.
2024-02-28 13:57:50 +01:00
Kevin Trogant
9d2987121e
Add debug names to framegraph objects
...
Better renderdoc output
2024-02-28 13:38:41 +01:00
Kevin Trogant
424345374f
Rename project
...
This is more the engine than the game project.
It's possible that the game will go into a separate repository at some
point.
2024-02-28 08:44:35 +01:00
Kevin Trogant
9008d08d9f
Chain framegraph semaphores together
...
Quick RenderDoc check suggests that this works as intended :-)
2024-02-27 14:35:48 +01:00
Kevin Trogant
ee24cd4903
Differentiate between graphics and compile passes
2024-02-27 10:00:00 +01:00
Kevin Trogant
bc6076b786
Seems like a valid chain of image transitions.
...
Now we need to draw something and also have the correct semaphore waits
to establish dependencies.
2024-02-20 13:47:47 +01:00
Kevin Trogant
1e49b14879
Present the first (black) image
2024-02-19 10:27:53 +01:00
Kevin Trogant
e989c2b406
Creating timed semaphores
...
- Similar to Dx12 fences.
- More flexible than VK 1 binary semaphores.
2024-02-16 15:31:23 +01:00
Kevin Trogant
9b162379d4
Merge branch 'main' of https://libneat.hopto.org/git/kevin/voyage
2024-02-13 08:36:48 +01:00
Kevin Trogant
887fa63c43
Manage command buffers
...
I decided to make queues explicit, to simplify handling queue ownership
transfers in the renderer code. The framegraph + pass code has explicit knowledge
about resource ownership, so it makes sense to handle it there.
- Manage pools
- Allocate command buffers
- Submit command buffers
2024-02-13 08:35:19 +01:00
b939d1498e
Update docs/LINKS.md
2024-02-13 00:51:49 +01:00
Kevin Trogant
b44b3e651b
Add interface for command buffers
2024-02-09 10:20:00 +01:00
Kevin Trogant
765e263979
Add render_command_buffer handle type
...
Also unify handle types via macro
2024-02-09 10:09:39 +01:00
Kevin Trogant
c23f03e622
Add single-threaded framegraph execute function
2024-02-09 00:07:35 +01:00
Kevin Trogant
abe05f3780
Add basic infrastructure for running update and render threads
...
Communicate progress via a pair of semaphores
2024-02-08 23:06:23 +01:00
Kevin Trogant
4f27819fa2
Improve dll build
...
Still not perfect, but more user friendly now.
2024-02-08 16:57:01 +01:00
Kevin Trogant
058c738da9
Merge branch 'r/meson_refactor'
2024-02-07 17:03:18 +01:00
Kevin Trogant
18b548b8bb
Fixed broken framegraph resource copy
...
- Missed a relptr set
2024-02-07 17:02:23 +01:00
Kevin Trogant
027ef8a46f
Restructure the project
...
Move asset_compiler into its own (static) library.
This removes the dependency on it from the runtime and makes it possible
to have a standalone asset_compiler tool (useful for modding support).
Split meson.build into sub-files to improve readability.
Give each target its own pch directory.
This is more inline with what the meson manual recommends.
Export dependencies to make it possible to use the engine as a meson
subproject.
This is currently untested.
2024-02-07 13:56:06 +01:00
Kevin Trogant
a7339ffd53
Add a semaphore type
2024-02-06 17:57:45 +01:00
Kevin Trogant
cc49a017f9
Load framegraphs from resource files
2024-02-06 17:57:14 +01:00
Kevin Trogant
bdd3db98bb
Add creation function for framegraphs and render targets
...
- The framegraph code currently does not attempt to alias render
targets, but this should be pretty straightforward to add.
2024-02-05 21:49:09 +01:00
Kevin Trogant
1d8051747e
Add some thoughts about the future render pipeline
2024-02-05 01:24:00 +01:00
Kevin Trogant
fc08ab08d4
Test resource manager and renderer integration
2024-02-05 01:23:31 +01:00
Kevin Trogant
c66d5ce337
Merge branch 'main' of https://libneat.hopto.org/git/kevin/voyage
2024-02-04 18:32:23 +01:00
Kevin Trogant
870f238410
Add a resource namespace file format
2024-02-04 18:31:02 +01:00
Kevin Trogant
0b6e855cef
Remove packages.h/.c from meson.build
2024-02-04 17:29:01 +01:00
Kevin Trogant
b80d0d1bf9
Remove unnecessary files
2024-02-04 17:28:32 +01:00
Kevin Trogant
cfec746545
Implement resource compression
2024-02-04 17:26:51 +01:00
Kevin Trogant
3a9f9d4986
Write the first compiled resources to files
2024-01-31 22:48:51 +01:00
Kevin Trogant
9670844bb2
Move towards using DXC for compiling shaders
...
This is recommended by the vulkan documentation.
2024-01-25 23:33:29 +01:00
Kevin Trogant
3254af3786
Make progress towards the new builtin asset compiler
...
Attempts to compile HLSL shaders (with includes)
2024-01-25 09:45:23 +01:00
c0a8fad6e7
Add docs/LINKS.md
2024-01-23 17:21:30 +01:00