25 return supports_offscreen_msaa_;
36 return supports_texture_to_texture_blits_;
41 return supports_framebuffer_fetch_;
49 return supports_compute_subgroups_;
54 return supports_read_from_resolve_;
59 return supports_decal_sampler_address_mode_;
67 return default_color_format_;
72 return default_stencil_format_;
77 return default_depth_stencil_format_;
82 return supports_device_transient_textures_;
87 return default_glyph_atlas_format_;
92 return default_maximum_render_pass_attachment_size_;
106 return supports_extended_range_formats_;
117 return supports_texture_compression_bc_;
119 return supports_texture_compression_etc2_;
121 return supports_texture_compression_astc_;
123 return supports_texture_compression_astc_hdr_;
130 return max_sampler_anisotropy_;
135 return minimum_uniform_alignment_;
140 return needs_partitioned_host_buffer_;
146 bool supports_texture_to_texture_blits,
147 bool supports_framebuffer_fetch,
148 bool supports_compute,
149 bool supports_compute_subgroups,
150 bool supports_read_from_resolve,
151 bool supports_decal_sampler_address_mode,
152 bool supports_device_transient_textures,
153 bool supports_triangle_fan,
154 bool supports_extended_range_formats,
159 ISize default_maximum_render_pass_attachment_size,
160 uint32_t max_sampler_anisotropy,
161 size_t minimum_uniform_alignment,
162 bool needs_partitioned_host_buffer,
163 bool supports_texture_compression_bc,
164 bool supports_texture_compression_etc2,
165 bool supports_texture_compression_astc,
166 bool supports_texture_compression_astc_hdr)
167 : supports_offscreen_msaa_(supports_offscreen_msaa),
168 supports_ssbo_(supports_ssbo),
169 supports_texture_to_texture_blits_(supports_texture_to_texture_blits),
170 supports_framebuffer_fetch_(supports_framebuffer_fetch),
171 supports_compute_(supports_compute),
172 supports_compute_subgroups_(supports_compute_subgroups),
173 supports_read_from_resolve_(supports_read_from_resolve),
174 supports_decal_sampler_address_mode_(
175 supports_decal_sampler_address_mode),
176 supports_device_transient_textures_(supports_device_transient_textures),
177 supports_triangle_fan_(supports_triangle_fan),
178 supports_extended_range_formats_(supports_extended_range_formats),
179 needs_partitioned_host_buffer_(needs_partitioned_host_buffer),
180 default_color_format_(default_color_format),
181 default_stencil_format_(default_stencil_format),
182 default_depth_stencil_format_(default_depth_stencil_format),
183 default_glyph_atlas_format_(default_glyph_atlas_format),
184 default_maximum_render_pass_attachment_size_(
185 default_maximum_render_pass_attachment_size),
186 max_sampler_anisotropy_(max_sampler_anisotropy),
187 minimum_uniform_alignment_(minimum_uniform_alignment),
188 supports_texture_compression_bc_(supports_texture_compression_bc),
189 supports_texture_compression_etc2_(supports_texture_compression_etc2),
190 supports_texture_compression_astc_(supports_texture_compression_astc),
191 supports_texture_compression_astc_hdr_(
192 supports_texture_compression_astc_hdr) {}
196 bool supports_offscreen_msaa_ =
false;
197 bool supports_ssbo_ =
false;
198 bool supports_texture_to_texture_blits_ =
false;
199 bool supports_framebuffer_fetch_ =
false;
200 bool supports_compute_ =
false;
201 bool supports_compute_subgroups_ =
false;
202 bool supports_read_from_resolve_ =
false;
203 bool supports_decal_sampler_address_mode_ =
false;
204 bool supports_device_transient_textures_ =
false;
205 bool supports_triangle_fan_ =
false;
206 bool supports_extended_range_formats_ =
false;
207 bool needs_partitioned_host_buffer_ =
false;
212 ISize default_maximum_render_pass_attachment_size_ =
ISize(1, 1);
213 uint32_t max_sampler_anisotropy_ = 1;
214 size_t minimum_uniform_alignment_ = 256;
215 bool supports_texture_compression_bc_ =
false;
216 bool supports_texture_compression_etc2_ =
false;
217 bool supports_texture_compression_astc_ =
false;
218 bool supports_texture_compression_astc_hdr_ =
false;
362 supports_offscreen_msaa_,
364 supports_texture_to_texture_blits_,
365 supports_framebuffer_fetch_,
367 supports_compute_subgroups_,
368 supports_read_from_resolve_,
369 supports_decal_sampler_address_mode_,
370 supports_device_transient_textures_,
371 supports_triangle_fan_,
372 supports_extended_range_formats_,
377 default_maximum_render_pass_attachment_size_.value_or(
ISize{1, 1}),
378 max_sampler_anisotropy_,
379 minimum_uniform_alignment_,
380 needs_partitioned_host_buffer_,
381 supports_texture_compression_bc_,
382 supports_texture_compression_etc2_,
383 supports_texture_compression_astc_,
384 supports_texture_compression_astc_hdr_