Renderer: Add support for device-enabled features (anisotropic filtering)
This commit is contained in:
@@ -13,6 +13,11 @@
|
||||
|
||||
namespace Nz
|
||||
{
|
||||
struct RenderDeviceFeatures
|
||||
{
|
||||
bool anisotropicFiltering = false;
|
||||
};
|
||||
|
||||
struct RenderDeviceLimits
|
||||
{
|
||||
UInt64 minUniformBufferOffsetAlignment;
|
||||
@@ -20,6 +25,7 @@ namespace Nz
|
||||
|
||||
struct RenderDeviceInfo
|
||||
{
|
||||
RenderDeviceFeatures features;
|
||||
RenderDeviceLimits limits;
|
||||
RenderDeviceType type;
|
||||
std::string name;
|
||||
|
||||
@@ -34,7 +34,7 @@ namespace Nz
|
||||
|
||||
inline RendererImpl* GetRendererImpl();
|
||||
|
||||
std::shared_ptr<RenderDevice> InstanciateRenderDevice(std::size_t deviceIndex);
|
||||
std::shared_ptr<RenderDevice> InstanciateRenderDevice(std::size_t deviceIndex, const RenderDeviceFeatures& enabledFeatures = {});
|
||||
|
||||
RenderAPI QueryAPI() const;
|
||||
std::string QueryAPIString() const;
|
||||
|
||||
@@ -37,7 +37,7 @@ namespace Nz
|
||||
virtual std::unique_ptr<RenderSurface> CreateRenderSurfaceImpl() = 0;
|
||||
virtual std::unique_ptr<RenderWindowImpl> CreateRenderWindowImpl(RenderWindow& owner) = 0;
|
||||
|
||||
virtual std::shared_ptr<RenderDevice> InstanciateRenderDevice(std::size_t deviceIndex) = 0;
|
||||
virtual std::shared_ptr<RenderDevice> InstanciateRenderDevice(std::size_t deviceIndex, const RenderDeviceFeatures& enabledFeatures) = 0;
|
||||
|
||||
virtual RenderAPI QueryAPI() const = 0;
|
||||
virtual std::string QueryAPIString() const = 0;
|
||||
|
||||
Reference in New Issue
Block a user