mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-02-05 15:40:10 +00:00
[rsx] reduce size of config structs
This commit is contained in:
parent
cccfb89aa0
commit
49c02854f5
@ -2,14 +2,14 @@
|
|||||||
|
|
||||||
namespace glsl
|
namespace glsl
|
||||||
{
|
{
|
||||||
enum program_domain
|
enum program_domain : unsigned char
|
||||||
{
|
{
|
||||||
glsl_vertex_program = 0,
|
glsl_vertex_program = 0,
|
||||||
glsl_fragment_program = 1,
|
glsl_fragment_program = 1,
|
||||||
glsl_compute_program = 2
|
glsl_compute_program = 2
|
||||||
};
|
};
|
||||||
|
|
||||||
enum glsl_rules
|
enum glsl_rules : unsigned char
|
||||||
{
|
{
|
||||||
glsl_rules_opengl4,
|
glsl_rules_opengl4,
|
||||||
glsl_rules_spirv
|
glsl_rules_spirv
|
||||||
@ -17,25 +17,25 @@ namespace glsl
|
|||||||
|
|
||||||
struct shader_properties
|
struct shader_properties
|
||||||
{
|
{
|
||||||
glsl::program_domain domain;
|
glsl::program_domain domain : 3;
|
||||||
// Applicable in vertex stage
|
// Applicable in vertex stage
|
||||||
bool require_lit_emulation;
|
bool require_lit_emulation : 1;
|
||||||
|
|
||||||
// Only relevant for fragment programs
|
// Only relevant for fragment programs
|
||||||
bool fp32_outputs;
|
bool fp32_outputs : 1;
|
||||||
bool require_wpos;
|
bool require_wpos : 1;
|
||||||
bool require_depth_conversion;
|
bool require_depth_conversion : 1;
|
||||||
bool require_texture_ops;
|
bool require_texture_ops : 1;
|
||||||
bool require_shadow_ops;
|
bool require_shadow_ops : 1;
|
||||||
bool require_texture_expand;
|
bool require_texture_expand : 1;
|
||||||
bool require_srgb_to_linear;
|
bool require_srgb_to_linear : 1;
|
||||||
bool require_linear_to_srgb;
|
bool require_linear_to_srgb : 1;
|
||||||
bool emulate_coverage_tests;
|
bool emulate_coverage_tests : 1;
|
||||||
bool emulate_shadow_compare;
|
bool emulate_shadow_compare : 1;
|
||||||
bool emulate_zclip_transform;
|
bool emulate_zclip_transform : 1;
|
||||||
bool emulate_depth_clip_only;
|
bool emulate_depth_clip_only : 1;
|
||||||
bool low_precision_tests;
|
bool low_precision_tests : 1;
|
||||||
bool disable_early_discard;
|
bool disable_early_discard : 1;
|
||||||
bool supports_native_fp16;
|
bool supports_native_fp16 : 1;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -42,11 +42,11 @@ namespace vk
|
|||||||
buffer::buffer(const vk::render_device& dev, u64 size, const memory_type_info& memory_type, u32 access_flags, VkBufferUsageFlags usage, VkBufferCreateFlags flags, vmm_allocation_pool allocation_pool)
|
buffer::buffer(const vk::render_device& dev, u64 size, const memory_type_info& memory_type, u32 access_flags, VkBufferUsageFlags usage, VkBufferCreateFlags flags, vmm_allocation_pool allocation_pool)
|
||||||
: m_device(dev)
|
: m_device(dev)
|
||||||
{
|
{
|
||||||
info.size = size;
|
|
||||||
info.sType = VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO;
|
info.sType = VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO;
|
||||||
info.sharingMode = VK_SHARING_MODE_EXCLUSIVE;
|
|
||||||
info.flags = flags;
|
info.flags = flags;
|
||||||
|
info.size = size;
|
||||||
info.usage = usage;
|
info.usage = usage;
|
||||||
|
info.sharingMode = VK_SHARING_MODE_EXCLUSIVE;
|
||||||
|
|
||||||
CHECK_RESULT(vkCreateBuffer(m_device, &info, nullptr, &value));
|
CHECK_RESULT(vkCreateBuffer(m_device, &info, nullptr, &value));
|
||||||
|
|
||||||
@ -67,11 +67,11 @@ namespace vk
|
|||||||
buffer::buffer(const vk::render_device& dev, VkBufferUsageFlags usage, void* host_pointer, u64 size)
|
buffer::buffer(const vk::render_device& dev, VkBufferUsageFlags usage, void* host_pointer, u64 size)
|
||||||
: m_device(dev)
|
: m_device(dev)
|
||||||
{
|
{
|
||||||
info.size = size;
|
|
||||||
info.sType = VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO;
|
info.sType = VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO;
|
||||||
info.sharingMode = VK_SHARING_MODE_EXCLUSIVE;
|
|
||||||
info.flags = 0;
|
info.flags = 0;
|
||||||
|
info.size = size;
|
||||||
info.usage = usage;
|
info.usage = usage;
|
||||||
|
info.sharingMode = VK_SHARING_MODE_EXCLUSIVE;
|
||||||
|
|
||||||
VkExternalMemoryBufferCreateInfoKHR ex_info;
|
VkExternalMemoryBufferCreateInfoKHR ex_info;
|
||||||
ex_info.sType = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHR;
|
ex_info.sType = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHR;
|
||||||
|
@ -15,17 +15,17 @@ namespace vk
|
|||||||
{
|
{
|
||||||
struct gpu_formats_support
|
struct gpu_formats_support
|
||||||
{
|
{
|
||||||
bool d24_unorm_s8;
|
bool d24_unorm_s8 : 1;
|
||||||
bool d32_sfloat_s8;
|
bool d32_sfloat_s8 : 1;
|
||||||
bool bgra8_linear;
|
bool bgra8_linear : 1;
|
||||||
bool argb8_linear;
|
bool argb8_linear : 1;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct gpu_shader_types_support
|
struct gpu_shader_types_support
|
||||||
{
|
{
|
||||||
bool allow_float64;
|
bool allow_float64 : 1;
|
||||||
bool allow_float16;
|
bool allow_float16 : 1;
|
||||||
bool allow_int8;
|
bool allow_int8 : 1;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct memory_type_mapping
|
struct memory_type_mapping
|
||||||
@ -54,17 +54,17 @@ namespace vk
|
|||||||
gpu_shader_types_support shader_types_support{};
|
gpu_shader_types_support shader_types_support{};
|
||||||
VkPhysicalDeviceDriverPropertiesKHR driver_properties{};
|
VkPhysicalDeviceDriverPropertiesKHR driver_properties{};
|
||||||
|
|
||||||
bool stencil_export_support = false;
|
bool stencil_export_support : 1 = false;
|
||||||
bool conditional_render_support = false;
|
bool conditional_render_support : 1 = false;
|
||||||
bool external_memory_host_support = false;
|
bool external_memory_host_support : 1 = false;
|
||||||
bool unrestricted_depth_range_support = false;
|
bool unrestricted_depth_range_support : 1 = false;
|
||||||
bool surface_capabilities_2_support = false;
|
bool surface_capabilities_2_support : 1 = false;
|
||||||
bool debug_utils_support = false;
|
bool debug_utils_support : 1 = false;
|
||||||
bool sampler_mirror_clamped_support = false;
|
bool sampler_mirror_clamped_support : 1 = false;
|
||||||
bool descriptor_indexing_support = false;
|
bool descriptor_indexing_support : 1 = false;
|
||||||
|
|
||||||
u64 descriptor_update_after_bind_mask = 0;
|
|
||||||
u32 descriptor_max_draw_calls = DESCRIPTOR_MAX_DRAW_CALLS;
|
u32 descriptor_max_draw_calls = DESCRIPTOR_MAX_DRAW_CALLS;
|
||||||
|
u64 descriptor_update_after_bind_mask = 0;
|
||||||
|
|
||||||
friend class render_device;
|
friend class render_device;
|
||||||
private:
|
private:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user