Skip to content

Commit 6e6d480

Browse files
committed
Merge pull request #118396 from clayjohn/remove-discardable
Remove is_discardable property from several textures
2 parents a498231 + ba7f91c commit 6e6d480

2 files changed

Lines changed: 7 additions & 9 deletions

File tree

servers/rendering/renderer_rd/storage_rd/render_scene_buffers_rd.cpp

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -183,13 +183,13 @@ void RenderSceneBuffersRD::configure(const RenderSceneBuffersConfiguration *p_co
183183

184184
// Create our color buffer.
185185
const bool resolve_target = msaa_3d != RSE::VIEWPORT_MSAA_DISABLED;
186-
create_texture(RB_SCOPE_BUFFERS, RB_TEX_COLOR, get_base_data_format(), get_color_usage_bits(resolve_target, false, can_be_storage), RD::TEXTURE_SAMPLES_1, Size2i(), 0, 1, true, true);
186+
create_texture(RB_SCOPE_BUFFERS, RB_TEX_COLOR, get_base_data_format(), get_color_usage_bits(resolve_target, false, can_be_storage));
187187

188188
// TODO: Detect when it is safe to use RD::TEXTURE_USAGE_TRANSIENT_BIT for RB_TEX_DEPTH, RB_TEX_COLOR_MSAA and/or RB_TEX_DEPTH_MSAA.
189189
// (it means we cannot sample from it, we cannot copy from/to it) to save VRAM (and maybe performance too).
190190

191191
// Create our depth buffer.
192-
create_texture(RB_SCOPE_BUFFERS, RB_TEX_DEPTH, get_depth_format(resolve_target, false, can_be_storage), get_depth_usage_bits(resolve_target, false, can_be_storage), RD::TEXTURE_SAMPLES_1, Size2i(), 0, 1, true, true);
192+
create_texture(RB_SCOPE_BUFFERS, RB_TEX_DEPTH, get_depth_format(resolve_target, false, can_be_storage), get_depth_usage_bits(resolve_target, false, can_be_storage));
193193

194194
// Create our MSAA buffers.
195195
if (msaa_3d == RSE::VIEWPORT_MSAA_DISABLED) {
@@ -203,7 +203,7 @@ void RenderSceneBuffersRD::configure(const RenderSceneBuffersConfiguration *p_co
203203
// VRS (note, our vrs object will only be set if VRS is supported)
204204
RID vrs_texture;
205205
if (vrs && vrs_mode != RSE::VIEWPORT_VRS_DISABLED) {
206-
vrs_texture = create_texture(RB_SCOPE_VRS, RB_TEXTURE, get_vrs_format(), get_vrs_usage_bits(), RD::TEXTURE_SAMPLES_1, vrs->get_vrs_texture_size(internal_size), 0, 1, true, true);
206+
vrs_texture = create_texture(RB_SCOPE_VRS, RB_TEXTURE, get_vrs_format(), get_vrs_usage_bits(), RD::TEXTURE_SAMPLES_1, vrs->get_vrs_texture_size(internal_size));
207207
}
208208

209209
// (re-)configure any named buffers
@@ -531,8 +531,8 @@ void RenderSceneBuffersRD::allocate_blur_textures() {
531531
usage_bits += RD::TEXTURE_USAGE_COLOR_ATTACHMENT_BIT;
532532
}
533533

534-
create_texture(RB_SCOPE_BUFFERS, RB_TEX_BLUR_0, get_base_data_format(), usage_bits, RD::TEXTURE_SAMPLES_1, blur_size, view_count, mipmaps_required, true, true);
535-
create_texture(RB_SCOPE_BUFFERS, RB_TEX_BLUR_1, get_base_data_format(), usage_bits, RD::TEXTURE_SAMPLES_1, Size2i(blur_size.x >> 1, blur_size.y >> 1), view_count, mipmaps_required - 1, true, true);
534+
create_texture(RB_SCOPE_BUFFERS, RB_TEX_BLUR_0, get_base_data_format(), usage_bits, RD::TEXTURE_SAMPLES_1, blur_size, view_count, mipmaps_required);
535+
create_texture(RB_SCOPE_BUFFERS, RB_TEX_BLUR_1, get_base_data_format(), usage_bits, RD::TEXTURE_SAMPLES_1, Size2i(blur_size.x >> 1, blur_size.y >> 1), view_count, mipmaps_required - 1);
536536

537537
// TODO redo this:
538538
if (!can_be_storage) {
@@ -721,7 +721,7 @@ void RenderSceneBuffersRD::ensure_upscaled() {
721721
if (!has_upscaled_texture()) {
722722
uint32_t usage_bits = RD::TEXTURE_USAGE_SAMPLING_BIT | (can_be_storage ? RD::TEXTURE_USAGE_STORAGE_BIT : 0) | RD::TEXTURE_USAGE_COLOR_ATTACHMENT_BIT;
723723
usage_bits |= RD::TEXTURE_USAGE_INPUT_ATTACHMENT_BIT;
724-
create_texture(RB_SCOPE_BUFFERS, RB_TEX_COLOR_UPSCALED, get_base_data_format(), usage_bits, RD::TEXTURE_SAMPLES_1, target_size, 0, 1, true, true);
724+
create_texture(RB_SCOPE_BUFFERS, RB_TEX_COLOR_UPSCALED, get_base_data_format(), usage_bits, RD::TEXTURE_SAMPLES_1, target_size);
725725
}
726726
}
727727

@@ -730,7 +730,7 @@ void RenderSceneBuffersRD::ensure_upscaled() {
730730
void RenderSceneBuffersRD::ensure_velocity() {
731731
if (!has_texture(RB_SCOPE_BUFFERS, RB_TEX_VELOCITY)) {
732732
const bool msaa = msaa_3d != RSE::VIEWPORT_MSAA_DISABLED;
733-
create_texture(RB_SCOPE_BUFFERS, RB_TEX_VELOCITY, get_velocity_format(), get_velocity_usage_bits(msaa, false, can_be_storage), RD::TEXTURE_SAMPLES_1, Size2i(), 0, 1, true, true);
733+
create_texture(RB_SCOPE_BUFFERS, RB_TEX_VELOCITY, get_velocity_format(), get_velocity_usage_bits(msaa, false, can_be_storage));
734734

735735
if (msaa) {
736736
create_texture(RB_SCOPE_BUFFERS, RB_TEX_VELOCITY_MSAA, get_velocity_format(), get_velocity_usage_bits(false, msaa, can_be_storage), texture_samples, Size2i(), 0, 1, true, true);

servers/rendering/renderer_rd/storage_rd/texture_storage.cpp

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4044,7 +4044,6 @@ void TextureStorage::_create_render_target_backbuffer(RenderTarget *rt) {
40444044
tf.texture_type = RD::TEXTURE_TYPE_2D;
40454045
tf.usage_bits = RD::TEXTURE_USAGE_COLOR_ATTACHMENT_BIT | RD::TEXTURE_USAGE_STORAGE_BIT | RD::TEXTURE_USAGE_SAMPLING_BIT | RD::TEXTURE_USAGE_CAN_COPY_TO_BIT;
40464046
tf.mipmaps = mipmaps_required;
4047-
tf.is_discardable = true;
40484047

40494048
rt->backbuffer = RD::get_singleton()->texture_create(tf, RD::TextureView());
40504049
RD::get_singleton()->set_resource_name(rt->backbuffer, "Render Target Back Buffer");
@@ -4558,7 +4557,6 @@ void TextureStorage::_render_target_allocate_sdf(RenderTarget *rt) {
45584557
tformat.height = size.height;
45594558
tformat.usage_bits = RD::TEXTURE_USAGE_SAMPLING_BIT | RD::TEXTURE_USAGE_STORAGE_BIT | RD::TEXTURE_USAGE_COLOR_ATTACHMENT_BIT;
45604559
tformat.texture_type = RD::TEXTURE_TYPE_2D;
4561-
tformat.is_discardable = true;
45624560

45634561
rt->sdf_buffer_write = RD::get_singleton()->texture_create(tformat, RD::TextureView());
45644562

0 commit comments

Comments
 (0)