gallium: add mesh shader caps
Reviewed-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Yonggang Luo <luoyonggang@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36596>
This commit is contained in:
@@ -808,6 +808,38 @@ struct pipe_compute_caps {
|
||||
uint64_t max_global_size;
|
||||
};
|
||||
|
||||
struct pipe_mesh_caps {
|
||||
unsigned max_task_work_group_total_count;
|
||||
unsigned max_mesh_work_group_total_count;
|
||||
unsigned max_mesh_work_group_invocations;
|
||||
unsigned max_task_work_group_invocations;
|
||||
unsigned max_task_payload_size;
|
||||
unsigned max_task_shared_memory_size;
|
||||
unsigned max_mesh_shared_memory_size;
|
||||
unsigned max_task_payload_and_shared_memory_size;
|
||||
unsigned max_mesh_payload_and_shared_memory_size;
|
||||
unsigned max_mesh_output_memory_size;
|
||||
unsigned max_mesh_payload_and_output_memory_size;
|
||||
unsigned max_mesh_output_vertices;
|
||||
unsigned max_mesh_output_primitives;
|
||||
unsigned max_mesh_output_components;
|
||||
unsigned max_mesh_output_layers;
|
||||
unsigned max_mesh_multiview_view_count;
|
||||
unsigned mesh_output_per_vertex_granularity;
|
||||
unsigned mesh_output_per_primitive_granularity;
|
||||
unsigned max_preferred_task_work_group_invocations;
|
||||
unsigned max_preferred_mesh_work_group_invocations;
|
||||
bool mesh_prefers_local_invocation_vertex_output;
|
||||
bool mesh_prefers_local_invocation_primitive_output;
|
||||
bool mesh_prefers_compact_vertex_output;
|
||||
bool mesh_prefers_compact_primitive_output;
|
||||
unsigned max_task_work_group_count[3];
|
||||
unsigned max_mesh_work_group_count[3];
|
||||
unsigned max_task_work_group_size[3];
|
||||
unsigned max_mesh_work_group_size[3];
|
||||
bool pipeline_statistic_queries;
|
||||
};
|
||||
|
||||
struct pipe_caps {
|
||||
bool graphics;
|
||||
bool npot_textures;
|
||||
@@ -1007,6 +1039,7 @@ struct pipe_caps {
|
||||
bool astc_decode_mode;
|
||||
bool shader_subgroup_quad_all_stages;
|
||||
bool call_finalize_nir_in_linker;
|
||||
bool mesh_shader;
|
||||
|
||||
int accelerated;
|
||||
int min_texel_offset;
|
||||
@@ -1113,6 +1146,8 @@ struct pipe_caps {
|
||||
float min_conservative_raster_dilate;
|
||||
float max_conservative_raster_dilate;
|
||||
float conservative_raster_dilate_granularity;
|
||||
|
||||
struct pipe_mesh_caps mesh;
|
||||
};
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user