Commit Graph

1088 Commits

Author SHA1 Message Date
eb3f88ff90 Added first push buffer binding using reflection 2025-08-30 16:07:14 -07:00
a917f70f62 WIP Shader Reflection Refactoring 2025-08-23 15:46:36 -07:00
6739e9c1a5 WIP Refactoring to generalize shader value reflection 2025-08-23 15:20:39 -07:00
9df960d181 Move push constant related code from KRPipelnie::bind to its own function, KRPipeline::updatePushConstants 2025-08-23 14:36:52 -07:00
2fc46ece57 Eliminate redundant vkCmdBindPipeline calls 2025-07-09 00:23:17 -07:00
9db005c55c Moved some material attributes to push constants
WIP updates to hello_cube smoke test; now rendering grid of cubes
2025-05-16 01:44:19 -07:00
6a136cf0ee Added normals to builtin cube model 2025-05-16 01:42:49 -07:00
802da21deb Fixed push constant reflection binding to match block name in shaders 2025-04-23 23:17:03 -07:00
2dcf7f987d Rotate camera towards cube in smoke test 2025-04-23 22:49:32 -07:00
8500ca8bea Fix indexed strip mesh support 2025-04-23 22:49:10 -07:00
8d8cfd2532 Moved frame rendering from KRCamera to KRRenderGraph 2025-04-10 01:09:36 -07:00
5f286e185e WIP Refactoring to move frame rendering from KRCamera to KRRenderGraph 2025-04-10 00:35:39 -07:00
7dc8a1304e Move Vulkan Test code from KRCamera to KRScene in preparation for upcoming scene graph refactor 2025-04-09 23:31:01 -07:00
ddfe080078 Added GPU debug markers for render passes 2025-04-09 23:03:16 -07:00
698f890500 Add GPU debug labels for render passes 2025-04-09 22:48:38 -07:00
4ccdaea970 Added KRRenderGraphDeferred and KRRenderGraphForward 2025-04-09 00:12:18 -07:00
51d6038187 Implement KRRenderGraph::getFinalRenderPass() 2025-04-08 23:45:12 -07:00
3928e247eb Added default __white material to standard assets bundle.
Assigned default __white material to all standard asset meshes.
Enabled models to be loaded prior to their referenced materials.
Refactored ObjectShader glsl for Vulkan use.
2024-09-22 19:20:45 -07:00
0a66f11ff0 Implemented API for model node creation.
hello_cube smoke test now adds a model node and assigns the built-in cube model
2024-09-21 23:32:38 -07:00
3b9a5d6f81 Moved occlusion test expiry code from KRScene::render to a dedicated function, KRViewport::expireOcclusionResults 2024-09-21 21:21:48 -07:00
8bee10c768 Refactoring to reduce parameter count for KRPipeline::bind, passing by RenderInfo 2024-09-21 17:16:13 -07:00
d7672d31f4 Refactoring to reduce KRScene::Render parameter count, passing by RenderInfo structure instead. 2024-09-21 16:46:04 -07:00
95969839ec Update volk to vulkan-sdk-1.3.290.0 2024-09-14 15:43:41 -07:00
4bf0cbb2ca Update Vulkan Memory Allocator to v3.1.0 2024-09-14 15:39:23 -07:00
cc4813136b Update spirv-reflect to vulkan-sdk-1.3.290.0 2024-09-14 15:34:13 -07:00
fa14da813b Update Vulkan to v1.3.295 2024-09-14 15:18:21 -07:00
e19be4c2a4 test_shutdown now always returns a value. 2024-09-14 14:17:35 -07:00
fc783b7d54 Add error handling for KRRenderGraphBlackFrame::Initialize failure 2024-08-20 22:36:46 -07:00
08d98eefcb WIP adding directory structure 2024-08-18 00:09:34 -07:00
77b75311e6 WIP adding directory structure 2024-08-17 23:41:58 -07:00
7e4fc361d4 WIP adding directory structure 2024-08-17 23:12:20 -07:00
862ffeeaa0 WIP adding directory structure 2024-08-17 15:54:20 -07:00
a9029193d7 Organize CMake source groups 2024-08-17 14:56:43 -07:00
a5780cea2b Implemented KRRenderGraphBlackFrame 2024-03-10 17:52:13 -07:00
fa96ffefdf Add scene argument to KRRenderGraph::render 2024-03-10 16:45:04 -07:00
1912ccd63e Removed redundant RenderPassType::RENDER_PASS_GENERATE_SHADOWMAPS
Added support for multiple color attachments in a render pass.
WIP render graph implementation.
Deleted copy constructors for KRContextObject
2024-01-22 00:35:49 -08:00
6e88d82520 WIP Render Graph Refactoring 2024-01-21 18:34:36 -08:00
b3269d7b97 WIP KRRenderGraph interface 2024-01-21 15:14:10 -08:00
9856a686cf KRCamera small cleanup 2024-01-21 15:13:31 -08:00
249988beef Added KREngine-common.h to generated projects 2024-01-21 14:52:43 -08:00
5f1e074136 Now generating separate "Public Headers" and "Private Headers" group for the Kraken library project. 2024-01-21 14:08:45 -08:00
c7afc9583d kraken_cube test now includes headers in generated projects 2024-01-21 13:56:33 -08:00
a0de671125 Now including headers in generated projects for Kraken 2024-01-21 13:48:43 -08:00
2925ea316d Bump copyright year
Update 1st party submodules
2024-01-20 19:01:29 -08:00
0ccf487caf Adding KRRenderGraph files 2024-01-20 18:55:47 -08:00
a2d125b15b Updated call sites to no longer pass clear color to KRRenderPass::Begin(), as KRRenderPass now retains the clear color after initialization.
KRRenderPass now has configurable stencil clear, load, and store operations.
2024-01-20 16:46:23 -08:00
d92a039fab KRRenderPass now keeps RenderPassInfo after initialization.
KRRenderPass now accepts clear color at initialization, no longer requiring to pass it on every instantiation.
2024-01-20 16:31:06 -08:00
b37acc1fd2 Remove test code used for verifying debug text functionality on Vulkan 2024-01-20 16:09:31 -08:00
8795e1e402 Suppressing debug text rendering until debug font texture has been streamed to the GPU. Fixes Vulkan validation errors on MacOS.
Fix Vulkan validation error on macOS when clearing with the black frame pass render pass during initialization.
2024-01-14 15:53:50 -08:00
e6706a4e1f Now rendering black frames rather than empty frames when scene isn't loaded, preventing some Vulkan validation errors.
Added keepColor, clearColor, and finalLayout attributes to KRRenderPass::RenderPassInfo.
Now able to render debug text on macOS.
2024-01-14 15:36:51 -08:00