GPUDevice: Support geometry shaders
This commit is contained in:
@ -44,7 +44,8 @@ std::unique_ptr<GPUShader> VulkanDevice::CreateShaderFromBinary(GPUShaderStage s
|
||||
}
|
||||
|
||||
std::unique_ptr<GPUShader> VulkanDevice::CreateShaderFromSource(GPUShaderStage stage, const std::string_view& source,
|
||||
const char* entry_point, DynamicHeapArray<u8>* out_binary)
|
||||
const char* entry_point,
|
||||
DynamicHeapArray<u8>* out_binary)
|
||||
{
|
||||
if (std::strcmp(entry_point, "main") != 0)
|
||||
{
|
||||
@ -156,6 +157,9 @@ std::unique_ptr<GPUPipeline> VulkanDevice::CreatePipeline(const GPUPipeline::Gra
|
||||
gpb.SetVertexShader(static_cast<const VulkanShader*>(config.vertex_shader)->GetModule());
|
||||
gpb.SetFragmentShader(static_cast<const VulkanShader*>(config.fragment_shader)->GetModule());
|
||||
|
||||
if (config.geometry_shader)
|
||||
gpb.SetGeometryShader(static_cast<const VulkanShader*>(config.geometry_shader)->GetModule());
|
||||
|
||||
if (!config.input_layout.vertex_attributes.empty())
|
||||
{
|
||||
gpb.AddVertexBuffer(0, config.input_layout.vertex_stride);
|
||||
|
||||
Reference in New Issue
Block a user