Commit Graph

849 Commits

Author SHA1 Message Date
64341c4e90 Deleted commented dead code from KRCamera::renderPost 2022-07-09 23:42:43 -07:00
73597a21c2 Removed no longer necessary glFinish call 2022-07-09 23:20:25 -07:00
d5635a4996 Converted debug_font shader to Vulkan glsl 2022-07-08 22:20:03 -07:00
6b8404c3d7 Removed rim_color and rim_power arguments from KRPipeline::bind.
Updated the call site in KRMaterial to set rim_color and rim_power explicitly.
2022-07-08 00:01:40 -07:00
b0be60cf18 Removed fade_color argument from KRPipeline::bind.
Updated call sites to only set this attribute in the one case needed (post_fx shader)
2022-07-07 23:49:27 -07:00
ee77caba9b Updated hydra.
Latest hydra version removes dead GL helper functions.
2022-07-07 23:20:50 -07:00
5dd2068e1b Replaced GL draw calls with Vulkan in KRMesh 2022-07-07 23:18:22 -07:00
44055d1e6a Replace ifdef guards with pragma once 2022-07-07 23:09:30 -07:00
c7f9277780 Update hydra 2022-07-07 23:08:54 -07:00
216cbe3eec PipelineInfo::CullMode and PipelineInfo::RasterMode are no longer within the PipelineInfo class, enabling easier forward declaration.
KRMaterial::bind now accepts remaining parameters required to set up the pipeline.
Removed GL calls from KRModel.
Replaced ifdef guards with pragma once.
KRMesh::model_format_t changed to ModelFormat and is no longer within KRMesh, enabling easier forward declaration.
2022-07-07 22:51:16 -07:00
4f3b8ad584 KRMesh::renderSubmesh non-indexed format meshes now converted to Vulkan draw calls 2022-07-07 21:44:08 -07:00
7d36a0036c Updated call sites to ensure that KRPipeline::setUniform calls are made before KRPipeline::bind calls.
Eliminated kraken::SetUniform helper functions, which are no longer used.
2022-07-07 21:37:10 -07:00
560f7da9e7 Implemented automatic binding of push constants at runtime using SPIRV-Reflection.
Replaced GL uniforms with Vulkan push constants.
2022-07-07 19:29:50 -07:00
88a1ca186b Added KRMesh::isReady
Vulkan test code now uses KRMesh and asset ingestion pipeline for vertex and index data.
Updated Vulkan test shader to match KRMesh attribute layout.
2022-07-07 00:23:14 -07:00
e976e94da1 Added index buffer support to KRMeshManager::KRVBOData::bind 2022-07-06 23:51:43 -07:00
d2c8763fd9 Added KRMeshManager::GetMaxLODModel helper function.
Refactored KRMeshManager::GetModel call sites to use GetMaxLODModel where only the maximum LOD is used.
2022-07-06 23:42:47 -07:00
85b7b2cd31 (continued...)
KRMesh::renderSubmesh is now private.
Added KRMesh::renderNoMaterials.
Replaced renderSubmesh loops outside KRMesh with calls to KRMesh::renderNoMaterials.
Added KRMesh::getVertexAttributes.
Call sites are now using KRMesh::getVertexAttributes and KRMesh::getModelFormat to configure the pipeline.
2022-07-06 23:11:00 -07:00
93d665b356 KRMesh::renderSubmesh is now private.
Added KRMesh::renderNoMaterials.
Replaced renderSubmesh loops outside KRMesh with calls to KRMesh::renderNoMaterials.
Added KRMesh::getVertexAttributes.
Call sites are now using KRMesh::getVertexAttributes and KRMesh::getModelFormat to configure the pipeline.
2022-07-06 23:04:43 -07:00
b7e4415b16 Inlined, removed wrapper function KRPipelineManager::selectPipeline 2022-07-06 21:59:50 -07:00
8e9885b46c WIP Inlining KRPipelineManager::selectPipeline wrapper function. 2022-07-05 22:22:48 -07:00
d76ce2090d Eliminated one overload of KRPipelineManager::selectPipeline
Vulkan draw call refactoring
2022-07-05 22:08:05 -07:00
54e484bd71 Replacing glDraw commands with vkCmdDraw and populating PipelineInfo with vertex formats. 2022-07-05 21:40:26 -07:00
bbc0de400c Added PipelineInfo::vertexAttributes and PipelineInfo::modelFormat
KRPipelineManager::getPipeline now has just one version with two arguments.
Commented out GL version of getPipeline, to be later merged into the Vulkan version.
2022-07-05 21:27:41 -07:00
ad64ab506a Eliminated dead functions. 2022-07-04 22:21:28 -07:00
68c3831fde Added composite buffer render passes for deferred lighting path.
Refactoring KRCamera::renderFrame to use render passes.
Eliminate composite buffer binding GL code from KRCamera::renderFrame
2022-07-04 22:08:05 -07:00
17113b59ea Removing no longer needed OpenGL code. 2022-07-04 21:20:43 -07:00
943bbfda2f Added PipelineInfo::CullMode
Replaced GL culling functions with CullMode pipeline option.
2022-07-04 20:49:46 -07:00
b801da7eb3 Blending and depth testing refactoring to Vulkan. Eliminating OpenGL state following. 2022-07-04 20:18:00 -07:00
2e371386cf Added PipelineInfo::RasterMode::kOpaqueNoDepthWrite
Refactored additional GL depth and blending state to use RasterMode
2022-07-03 21:52:54 -07:00
44be42a4a8 VkPipelineColorBlendAttachmentState and VkPipelineDepthStencilStateCreateInfo are now driven by PipelineInfo::RasterMode 2022-07-03 21:33:52 -07:00
e0e51c3f07 Added PipeLineInfo::RasterMode::kOpaqueLessTest
Refactored particles and additive effects to use PipelineInfo::RasterMode rather than direct GL calls.
2022-07-03 21:13:39 -07:00
13412cb5c5 Comment type-o 2022-07-03 20:54:23 -07:00
6bb2309d07 Fixed errors in comment describing PipelineInfo::RasterMode 2022-07-02 21:04:20 -07:00
8db6a4313f Combined depth test and depth write modes into PipelineInfo.rasterMode. 2022-07-02 21:01:02 -07:00
d292c86b6e Eliminated PipelineInfo.bAlphaBlend as it can be determined from rasterMode 2022-07-02 20:23:09 -07:00
d571bcbdc3 Refactor OpenGL alpha blending to use PipelineInfo.rasterMode 2022-07-02 20:07:11 -07:00
0f8feb669c Fix Azure CI, MSVC CMake integration. Update configure batch script to VS 2022 2022-07-02 18:31:48 -07:00
d1b085ffb5 Moved PipelineInfo to KRPipeline.h
Added PipelineInfo::RasterMode
2022-04-14 00:48:03 -07:00
767ba5932b Implement KRNode::RenderInfo
Use KRNode::RenderInfo to reduce render related argument counts and pass KRSurface through render functions.
Refactor render functions to use KRNode::RenderInfo
2022-04-06 01:00:13 -07:00
52c8ec2776 Reduced boilerplate needed to select and bind a KRPipeline 2022-04-05 22:25:19 -07:00
858064fa4b Using KRPipelineManager::info struct to reduce number of parameters passed to KRPipelineManager::selectPipeline 2022-04-05 21:58:47 -07:00
9e0136f051 Updating call sites to use struct argument version of KRPipelineManager::getPipeline 2022-04-04 02:00:01 -07:00
de5d6e64aa KRPipeline::getPipeline now accepts a struct to reduce argument count 2022-04-04 00:52:32 -07:00
56abe4425f Remove KRStockGeometry as its now handled by KRMeshManager 2022-04-03 23:59:15 -07:00
1877049526 Replace GLFloat with float
Remove unimplemented function
2022-04-03 23:54:10 -07:00
2f104edf7c Remove MacOS and IOS OpenGL code 2022-04-03 23:40:16 -07:00
99394820fc Removed GLFW dependency 2022-04-03 23:31:27 -07:00
3784c0fc0b Remove XCode Project and associated interfaces which no longer match current Kraken API 2022-04-03 23:23:06 -07:00
c49e177264 Removing RenderFrame parameters no longer needed with Vulkan and KRSurface 2022-04-03 23:12:34 -07:00
c51f776899 Replace GLFloats with floats.
Refactor KRCamera and KRScene to use width and height from KRSurface rather than stack and members.
2022-04-03 23:05:30 -07:00