Reserve a graphics restriction for hardware skinning
This commit is contained in:
parent
fd0eaf064f
commit
1b70144c80
@ -246,6 +246,11 @@ void CentralVideoSettings::init()
|
|||||||
hasSRGBFramebuffer = false;
|
hasSRGBFramebuffer = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (!GraphicsRestrictions::isDisabled(GraphicsRestrictions::GR_HARDWARE_SKINNING))
|
||||||
|
{
|
||||||
|
Log::info("GLDriver", "Hardware Skinning enabled, method: %s",
|
||||||
|
isARBShaderStorageBufferObjectUsable() ? "SSBO" : "TBO");
|
||||||
|
}
|
||||||
#else
|
#else
|
||||||
if (m_glsl == true)
|
if (m_glsl == true)
|
||||||
{
|
{
|
||||||
@ -286,6 +291,10 @@ void CentralVideoSettings::init()
|
|||||||
{
|
{
|
||||||
m_need_vertex_id_workaround = true;
|
m_need_vertex_id_workaround = true;
|
||||||
}
|
}
|
||||||
|
if (!GraphicsRestrictions::isDisabled(GraphicsRestrictions::GR_HARDWARE_SKINNING))
|
||||||
|
{
|
||||||
|
Log::info("GLDriver", "Hardware Skinning enabled, method: 1024 * 16 RGBA float texture");
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Only unset the high def textures if they are set as default. If the
|
// Only unset the high def textures if they are set as default. If the
|
||||||
@ -527,7 +536,7 @@ bool CentralVideoSettings::isDefferedEnabled() const
|
|||||||
|
|
||||||
bool CentralVideoSettings::supportsHardwareSkinning() const
|
bool CentralVideoSettings::supportsHardwareSkinning() const
|
||||||
{
|
{
|
||||||
return true;
|
return !GraphicsRestrictions::isDisabled(GraphicsRestrictions::GR_HARDWARE_SKINNING);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool CentralVideoSettings::isARBTextureSwizzleUsable() const
|
bool CentralVideoSettings::isARBTextureSwizzleUsable() const
|
||||||
|
@ -44,37 +44,41 @@ namespace GraphicsRestrictions
|
|||||||
/** The list of names used in the XML file for the graphics
|
/** The list of names used in the XML file for the graphics
|
||||||
* restriction types. They must be in the same order as the types. */
|
* restriction types. They must be in the same order as the types. */
|
||||||
|
|
||||||
std::array<std::string, 30> m_names_of_restrictions = {
|
std::array<std::string, 31> m_names_of_restrictions =
|
||||||
"UniformBufferObject",
|
{
|
||||||
"GeometryShader",
|
{
|
||||||
"DrawIndirect",
|
"UniformBufferObject",
|
||||||
"TextureView",
|
"GeometryShader",
|
||||||
"TextureStorage",
|
"DrawIndirect",
|
||||||
"ImageLoadStore",
|
"TextureView",
|
||||||
"BaseInstance",
|
"TextureStorage",
|
||||||
"ComputeShader",
|
"ImageLoadStore",
|
||||||
"ArraysOfArrays",
|
"BaseInstance",
|
||||||
"ShaderStorageBufferObject",
|
"ComputeShader",
|
||||||
"MultiDrawIndirect",
|
"ArraysOfArrays",
|
||||||
"ShaderAtomicCounters",
|
"ShaderStorageBufferObject",
|
||||||
"BufferStorage",
|
"MultiDrawIndirect",
|
||||||
"BindlessTexture",
|
"ShaderAtomicCounters",
|
||||||
"TextureCompressionS3TC",
|
"BufferStorage",
|
||||||
"AMDVertexShaderLayer",
|
"BindlessTexture",
|
||||||
"ExplicitAttribLocation",
|
"TextureCompressionS3TC",
|
||||||
"TextureFilterAnisotropic",
|
"AMDVertexShaderLayer",
|
||||||
"TextureFormatBGRA8888",
|
"ExplicitAttribLocation",
|
||||||
"ColorBufferFloat",
|
"TextureFilterAnisotropic",
|
||||||
"DriverRecentEnough",
|
"TextureFormatBGRA8888",
|
||||||
"HighDefinitionTextures",
|
"ColorBufferFloat",
|
||||||
"HighDefinitionTextures256",
|
"DriverRecentEnough",
|
||||||
"AdvancedPipeline",
|
"HighDefinitionTextures",
|
||||||
"FramebufferSRGB",
|
"HighDefinitionTextures256",
|
||||||
"FramebufferSRGBWorkaround1",
|
"AdvancedPipeline",
|
||||||
"FramebufferSRGBWorkaround2",
|
"FramebufferSRGB",
|
||||||
"GI",
|
"FramebufferSRGBWorkaround1",
|
||||||
"ForceLegacyDevice",
|
"FramebufferSRGBWorkaround2",
|
||||||
"VertexIdWorking"
|
"GI",
|
||||||
|
"ForceLegacyDevice",
|
||||||
|
"VertexIdWorking",
|
||||||
|
"HardwareSkinning"
|
||||||
|
}
|
||||||
};
|
};
|
||||||
} // namespace Private
|
} // namespace Private
|
||||||
using namespace Private;
|
using namespace Private;
|
||||||
|
@ -64,6 +64,7 @@ namespace GraphicsRestrictions
|
|||||||
GR_GI,
|
GR_GI,
|
||||||
GR_FORCE_LEGACY_DEVICE,
|
GR_FORCE_LEGACY_DEVICE,
|
||||||
GR_VERTEX_ID_WORKING,
|
GR_VERTEX_ID_WORKING,
|
||||||
|
GR_HARDWARE_SKINNING,
|
||||||
GR_COUNT /** MUST be last entry. */
|
GR_COUNT /** MUST be last entry. */
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user