June 28, 2021, 12:47 (GMT) |
Merge commit 'master@{4-weeks-ago}' into tmp-vulkan |
June 28, 2021, 12:27 (GMT) |
Merge commit 'master@{5-weeks-ago}' into tmp-vulkan |
June 28, 2021, 12:06 (GMT) |
Merge commit 'master@{6-weeks-ago}' into tmp-vulkan |
June 28, 2021, 11:51 (GMT) |
Merge commit 'master@{7-weeks-ago}' into tmp-vulkan |
June 28, 2021, 11:35 (GMT) |
Merge commit 'master@{8-weeks-ago}' into tmp-vulkan |
June 28, 2021, 11:35 (GMT) |
Merge commit 'master@{9-weeks-ago}' into tmp-vulkan |
June 28, 2021, 11:25 (GMT) |
Merge commit 'master@{10-weeks-ago}' into tmp-vulkan |
June 28, 2021, 11:15 (GMT) |
Merge commit 'master@{11-weeks-ago}' into tmp-vulkan |
June 28, 2021, 11:05 (GMT) |
Merge commit 'master@{12-weeks-ago}' into tmp-vulkan |
June 28, 2021, 10:37 (GMT) |
Merge commit 'master@{3-months-ago}' into tmp-vulkan |
June 25, 2021, 14:53 (GMT) |
Initial SpirV log parsing. Still work in progress. |
June 25, 2021, 14:01 (GMT) |
Moved shader compilation flag to cmake. Migration of the shaders can take a long time. During this time it you won't be able to start most GPU tests or Blender. This switch will enable the compilation of the shader to other developments can still happen. `WITH_VULKAN_SHADER_COMPILATION` Default is OFF. Enable when migrating shaders. |
June 25, 2021, 13:52 (GMT) |
Vulkan: Patched gl_VertexID to gl_VertexIndex. |
June 25, 2021, 13:28 (GMT) |
ShaderCompiler: Use CPP strings to improve API. |
June 25, 2021, 12:38 (GMT) |
Vulkan: Compile Shader Modules. Shaders are expected to fail as they need to be converted to Vulkan. Dy default the compilation is turned off. Enable VULKAN_SHADER_COMPILATION to activate shader module compilation. |
June 25, 2021, 09:01 (GMT) |
ShaderCompiler: Split code per target type. No functional changes. |
June 25, 2021, 08:48 (GMT) |
Added Vulkan test cases. Added counterparts of the shader test cases for vulkan. Fixing an issue where the OpenGL context was created when using a vulkan backend. |
June 23, 2021, 15:07 (GMT) |
Add test case to compile builtin shaders. When using the vulkan backend it crashes. Will look into this later this week. |
June 23, 2021, 12:14 (GMT) |
Cleanup: Added license headers. |
June 23, 2021, 12:04 (GMT) |
Added shader compiler abstration. The shader_compiler is an abstration layer for in case we need to switch between other shader compilers in the future. The shader compiler uses a CPP Api as it will only be accessed from GPU module. ``` const char *source = "#version 450nvoid main() {}"; shader_compiler::Compiler *compiler = shader_compiler::Compiler::create_default(); shader_compiler::Job job; job.source = source; job.name = __func__; job.source_type = shader_compiler::SourceType::GlslComputeShader; job.compilation_target = shader_compiler::TargetType::SpirV; shader_compiler::Result *result = compiler->compile(job); EXPECT_EQ(result->type, shader_compiler::TargetType::SpirV); EXPECT_EQ(result->status_code, shader_compiler::StatusCode::Ok); EXPECT_GT(result->bin.size(), 0); EXPECT_EQ(result->error_log, ""); delete result; delete compiler; ``` The CMakeFiles need some attention as it currently works when linking to the shaderlib_combined. On linux it picks up the shaderlib from the vulkan SDK, eventually it needs to pick up from our prebuild libraries. |
|