Add initial support for compute pipelines

This commit is contained in:
SirLynix
2022-12-24 11:54:55 +01:00
committed by Jérôme Leclercq
parent e4064997d8
commit 9578ba3ef5
57 changed files with 915 additions and 182 deletions

View File

@@ -8,6 +8,7 @@
#define NAZARA_RENDERER_RENDERDEVICEINFO_HPP
#include <Nazara/Prerequisites.hpp>
#include <Nazara/Math/Vector3.hpp>
#include <Nazara/Renderer/Enums.hpp>
#include <string>
@@ -16,18 +17,27 @@ namespace Nz
struct RenderDeviceFeatures
{
bool anisotropicFiltering = false;
bool computeShaders = false;
bool depthClamping = false;
bool nonSolidFaceFilling = false;
bool storageBuffers = false;
bool textureRead = false;
bool textureReadWithoutFormat = false;
bool textureWrite = false;
bool textureWriteWithoutFormat = false;
bool unrestrictedTextureViews = false;
};
struct RenderDeviceLimits
{
UInt64 minStorageBufferOffsetAlignment;
UInt64 minUniformBufferOffsetAlignment;
UInt64 maxComputeSharedMemorySize;
UInt32 maxComputeWorkGroupInvocations;
Vector3ui32 maxComputeWorkGroupCount;
Vector3ui32 maxComputeWorkGroupSize;
UInt64 maxStorageBufferSize;
UInt64 maxUniformBufferSize;
UInt64 minStorageBufferOffsetAlignment;
UInt64 minUniformBufferOffsetAlignment;
};
struct RenderDeviceInfo