9a183ff354
Added mapping for gl compressed texture formats to vkFormats in KRTextureKTX
Kearwood Gilbert2023-05-28 22:34:32 -07:00
ea0fff0e49
Added mapping for uncompressed formats to KRTextureKTX::getFormat KRTexture2D now dynamically sets vkFormat of images
Kearwood Gilbert2023-01-10 15:49:10 -08:00
eecde09734
Removed KRSurface dependencies from KRPipeline
kearwood2022-09-28 22:16:04 -07:00
230783b3c9
Added KRPipeline constructor that is not dependent on KRSurface
kearwood2022-09-27 18:58:00 -07:00
a2a9714f24
Removed camera downsampling functionality no longer in use. A more advanced postfx and compositor will be implemented instead. (Continued)
kearwood2022-09-27 18:49:03 -07:00
e60e9bceab
Removed camera downsampling functionality no longer in use. A more advanced postfx and compositor will be implemented instead.
kearwood2022-09-27 18:32:35 -07:00
4d244c96c3
Const-ified helper functions in KRDevice
kearwood2022-09-27 17:33:05 -07:00
741b7848c5
Implemented camera surface setting for KrUpdateNode and KrCreateNode APIs. Cameras now render only on their assigned surface.
kearwood2022-09-26 22:06:09 -07:00
7722975dd0
Implemented KrUpdateNode API call.
kearwood2022-09-26 21:24:21 -07:00
272d3f89bc
Implemented helper functions in KRContext to simplify API endpoint input validation.
kearwood2022-09-24 00:31:37 -07:00
1bb7238502
KRNode::update is now fallible. Added stub function, KRCamera::update.
kearwood2022-09-23 23:43:06 -07:00
a186095c47
Implemented transform setting for KrCreateNode API
kearwood2022-09-23 23:31:37 -07:00
77a03d53cc
Enabled KrCreateNode call in the hello_cube smoke test.
kearwood2022-09-22 23:04:03 -07:00
ad81d58ea8
Added standard constructor with just scene and name for KRModel and KRCollider. Implemented KRNode::createNode, to create nodes declared in KrCreateNodeInfo structs. Added stub function, KRNode::update to update node attributes from a KrNodeInfo struct.
kearwood2022-09-22 23:02:42 -07:00
ec65e788e0
Scene nodes now persist their order. Implemented error handling and insertion logic for KRContext::createNode Refactored KRNode::m_childNodes to be a std::list rather than a std::set Added stub function, KRNode::createNode, which accepts a KrCreateNodeInfo structure
kearwood2022-09-22 22:32:17 -07:00
6c8bf9fa2c
WIP implementing createNode API. Added KRContext::m_nodeMap and initialization logic. Added code to hello_cube smoke test to call KrCreateNode. (Commented until test can pass)
kearwood2022-09-21 23:55:24 -07:00
3f4289ec08
Merged appendBeforeNode, appendAfterNode, appendFirstChildNode, and appendLastChildNode API calls into a single createNode call.
kearwood2022-09-21 23:38:49 -07:00
ecb1c8a50f
Removed OpenGL defines from KREngine-common.h Replaced GLDEBUG macro with an assert so code will stop when it hits OpenGL code yet to be refactored to Vulkan.
kearwood2022-09-21 17:53:06 -07:00
2a36e6a11e
Re-enable camera sky box draw call
kearwood2022-09-21 01:13:16 -07:00
5219cf0ba7
Enabled draw call for debug text overlay Vertically flipped debug text character sampling from font texture. Debug text overlay pass now functioning in Vulkan
kearwood2022-09-21 00:59:31 -07:00
f4bd0d6340
Removing OpenGL code related to textures
kearwood2022-09-18 23:19:30 -07:00
8306202cf1
WIP Creating structures in KRPipeline to cache descriptor set binding reflection data. Added stub function, KRPipeline::setImageBinding
kearwood2022-09-15 20:33:41 -07:00
183f7057e2
Added KRPipeline::StageInfo to hold cached SPV reflection information used for dynamic descriptor set and push constant binding.
kearwood2022-09-15 20:10:25 -07:00
327167c9b1
Expanded KRSurface::m_imageAvailableSemaphores and m_renderFinishedSemaphores to have one semaphore per frame in flight. (Missed files in prior commit)
kearwood2022-09-15 19:20:10 -07:00
cc4efe34e1
kMaxGraphicsCommandBuffers is now initialized to KRENGINE_MAX_FRAMES_IN_FLIGHT rather than using a magic number.
kearwood2022-09-15 19:18:54 -07:00
4d0158c0ec
Added KRSurface::m_inFlightFences. Now properly handling multiple frames in flight and waiting on fences when the CPU catches up.
kearwood2022-09-15 00:26:23 -07:00
478669ed81
Expanded KRSurface::m_imageAvailableSemaphores and m_renderFinishedSemaphores to have one semaphore per frame in flight.
kearwood2022-09-14 23:59:52 -07:00
9b46917171
Added requirement for Vulkan SPV_EXT_descriptor_indexing extension.
kearwood2022-09-13 18:18:37 -07:00
5ffc3d9b9b
Refactor - DescriptorSet and DescriptorManager are now UniformBuffer and UniformBufferManager.
kearwood2022-09-13 18:18:25 -07:00
175c4e2008
Add KRDescriptorManager and KRDescriptorSet classes with stub functions.
kearwood2022-09-13 17:31:41 -07:00
5ed6b8eccd
Push constants are now supported for all stages.
kearwood2022-09-09 00:38:46 -07:00
aeaed68efb
Moved ShaderStage to KRShader and expanded to include all stages. Added mapping functions, getShaderStageFromExtension and getShaderStageFlagBitsFromShaderStage. KRShader::m_stage is now typed as ShaderStage.
kearwood2022-09-09 00:36:22 -07:00
f20f7f73d6
Centralized shader file sub-extension to shader stage mapping to KRShader.
kearwood2022-09-08 23:58:24 -07:00
e695bca3f9
Refactoring to rename uniform related functions and members to reflect that they are actually push constants after the Vulkan refactoring.
kearwood2022-09-07 23:48:46 -07:00
10f9c17cf1
Now initializing VkDescriptorSetLayout for each pipeline using SPV reflection.
kearwood2022-09-07 22:33:07 -07:00