|
@@ -390,7 +390,7 @@ void SkyRD::ReflectionData::create_reflection_fast_filter(bool p_use_arrays) {
|
|
|
bool prefer_raster_effects = copy_effects->get_prefer_raster_effects();
|
|
bool prefer_raster_effects = copy_effects->get_prefer_raster_effects();
|
|
|
|
|
|
|
|
if (prefer_raster_effects) {
|
|
if (prefer_raster_effects) {
|
|
|
- RD::get_singleton()->draw_command_begin_label("Downsample radiance map");
|
|
|
|
|
|
|
+ RD::get_singleton()->draw_command_begin_label("Downsample Radiance Map");
|
|
|
for (int k = 0; k < 6; k++) {
|
|
for (int k = 0; k < 6; k++) {
|
|
|
copy_effects->cubemap_downsample_raster(radiance_base_cubemap, downsampled_layer.mipmaps[0].framebuffers[k], k, downsampled_layer.mipmaps[0].size);
|
|
copy_effects->cubemap_downsample_raster(radiance_base_cubemap, downsampled_layer.mipmaps[0].framebuffers[k], k, downsampled_layer.mipmaps[0].size);
|
|
|
}
|
|
}
|
|
@@ -403,14 +403,14 @@ void SkyRD::ReflectionData::create_reflection_fast_filter(bool p_use_arrays) {
|
|
|
RD::get_singleton()->draw_command_end_label(); // Downsample Radiance
|
|
RD::get_singleton()->draw_command_end_label(); // Downsample Radiance
|
|
|
|
|
|
|
|
if (p_use_arrays) {
|
|
if (p_use_arrays) {
|
|
|
- RD::get_singleton()->draw_command_begin_label("filter radiance map into array heads");
|
|
|
|
|
|
|
+ RD::get_singleton()->draw_command_begin_label("Filter Radiance Map into Array Heads");
|
|
|
for (int i = 0; i < layers.size(); i++) {
|
|
for (int i = 0; i < layers.size(); i++) {
|
|
|
for (int k = 0; k < 6; k++) {
|
|
for (int k = 0; k < 6; k++) {
|
|
|
copy_effects->cubemap_filter_raster(downsampled_radiance_cubemap, layers[i].mipmaps[0].framebuffers[k], k, i);
|
|
copy_effects->cubemap_filter_raster(downsampled_radiance_cubemap, layers[i].mipmaps[0].framebuffers[k], k, i);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
} else {
|
|
} else {
|
|
|
- RD::get_singleton()->draw_command_begin_label("filter radiance map into mipmaps directly");
|
|
|
|
|
|
|
+ RD::get_singleton()->draw_command_begin_label("Filter Radiance Map into Mipmaps Directly");
|
|
|
for (int j = 0; j < layers[0].mipmaps.size(); j++) {
|
|
for (int j = 0; j < layers[0].mipmaps.size(); j++) {
|
|
|
for (int k = 0; k < 6; k++) {
|
|
for (int k = 0; k < 6; k++) {
|
|
|
copy_effects->cubemap_filter_raster(downsampled_radiance_cubemap, layers[0].mipmaps[j].framebuffers[k], k, j);
|
|
copy_effects->cubemap_filter_raster(downsampled_radiance_cubemap, layers[0].mipmaps[j].framebuffers[k], k, j);
|
|
@@ -419,7 +419,7 @@ void SkyRD::ReflectionData::create_reflection_fast_filter(bool p_use_arrays) {
|
|
|
}
|
|
}
|
|
|
RD::get_singleton()->draw_command_end_label(); // Filter radiance
|
|
RD::get_singleton()->draw_command_end_label(); // Filter radiance
|
|
|
} else {
|
|
} else {
|
|
|
- RD::get_singleton()->draw_command_begin_label("Downsample radiance map");
|
|
|
|
|
|
|
+ RD::get_singleton()->draw_command_begin_label("Downsample Radiance Map");
|
|
|
copy_effects->cubemap_downsample(radiance_base_cubemap, downsampled_layer.mipmaps[0].view, downsampled_layer.mipmaps[0].size);
|
|
copy_effects->cubemap_downsample(radiance_base_cubemap, downsampled_layer.mipmaps[0].view, downsampled_layer.mipmaps[0].size);
|
|
|
|
|
|
|
|
for (int i = 1; i < downsampled_layer.mipmaps.size(); i++) {
|
|
for (int i = 1; i < downsampled_layer.mipmaps.size(); i++) {
|
|
@@ -436,7 +436,7 @@ void SkyRD::ReflectionData::create_reflection_fast_filter(bool p_use_arrays) {
|
|
|
views.push_back(layers[0].views[i]);
|
|
views.push_back(layers[0].views[i]);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
- RD::get_singleton()->draw_command_begin_label("Fast filter radiance");
|
|
|
|
|
|
|
+ RD::get_singleton()->draw_command_begin_label("Fast Filter Radiance");
|
|
|
copy_effects->cubemap_filter(downsampled_radiance_cubemap, views, p_use_arrays);
|
|
copy_effects->cubemap_filter(downsampled_radiance_cubemap, views, p_use_arrays);
|
|
|
RD::get_singleton()->draw_command_end_label(); // Filter radiance
|
|
RD::get_singleton()->draw_command_end_label(); // Filter radiance
|
|
|
}
|
|
}
|
|
@@ -449,7 +449,7 @@ void SkyRD::ReflectionData::create_reflection_importance_sample(bool p_use_array
|
|
|
|
|
|
|
|
if (prefer_raster_effects) {
|
|
if (prefer_raster_effects) {
|
|
|
if (p_base_layer == 1) {
|
|
if (p_base_layer == 1) {
|
|
|
- RD::get_singleton()->draw_command_begin_label("Downsample radiance map");
|
|
|
|
|
|
|
+ RD::get_singleton()->draw_command_begin_label("Downsample Radiance Map");
|
|
|
for (int k = 0; k < 6; k++) {
|
|
for (int k = 0; k < 6; k++) {
|
|
|
copy_effects->cubemap_downsample_raster(radiance_base_cubemap, downsampled_layer.mipmaps[0].framebuffers[k], k, downsampled_layer.mipmaps[0].size);
|
|
copy_effects->cubemap_downsample_raster(radiance_base_cubemap, downsampled_layer.mipmaps[0].framebuffers[k], k, downsampled_layer.mipmaps[0].size);
|
|
|
}
|
|
}
|
|
@@ -462,7 +462,7 @@ void SkyRD::ReflectionData::create_reflection_importance_sample(bool p_use_array
|
|
|
RD::get_singleton()->draw_command_end_label(); // Downsample Radiance
|
|
RD::get_singleton()->draw_command_end_label(); // Downsample Radiance
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- RD::get_singleton()->draw_command_begin_label("High Quality filter radiance");
|
|
|
|
|
|
|
+ RD::get_singleton()->draw_command_begin_label("High Quality Filter Radiance");
|
|
|
if (p_use_arrays) {
|
|
if (p_use_arrays) {
|
|
|
for (int k = 0; k < 6; k++) {
|
|
for (int k = 0; k < 6; k++) {
|
|
|
copy_effects->cubemap_roughness_raster(
|
|
copy_effects->cubemap_roughness_raster(
|
|
@@ -486,7 +486,7 @@ void SkyRD::ReflectionData::create_reflection_importance_sample(bool p_use_array
|
|
|
}
|
|
}
|
|
|
} else {
|
|
} else {
|
|
|
if (p_base_layer == 1) {
|
|
if (p_base_layer == 1) {
|
|
|
- RD::get_singleton()->draw_command_begin_label("Downsample radiance map");
|
|
|
|
|
|
|
+ RD::get_singleton()->draw_command_begin_label("Downsample Radiance Map");
|
|
|
copy_effects->cubemap_downsample(radiance_base_cubemap, downsampled_layer.mipmaps[0].view, downsampled_layer.mipmaps[0].size);
|
|
copy_effects->cubemap_downsample(radiance_base_cubemap, downsampled_layer.mipmaps[0].view, downsampled_layer.mipmaps[0].size);
|
|
|
|
|
|
|
|
for (int i = 1; i < downsampled_layer.mipmaps.size(); i++) {
|
|
for (int i = 1; i < downsampled_layer.mipmaps.size(); i++) {
|
|
@@ -495,7 +495,7 @@ void SkyRD::ReflectionData::create_reflection_importance_sample(bool p_use_array
|
|
|
RD::get_singleton()->draw_command_end_label(); // Downsample Radiance
|
|
RD::get_singleton()->draw_command_end_label(); // Downsample Radiance
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- RD::get_singleton()->draw_command_begin_label("High Quality filter radiance");
|
|
|
|
|
|
|
+ RD::get_singleton()->draw_command_begin_label("High Quality Filter Radiance");
|
|
|
if (p_use_arrays) {
|
|
if (p_use_arrays) {
|
|
|
copy_effects->cubemap_roughness(downsampled_radiance_cubemap, layers[p_base_layer].views[0], p_cube_side, p_sky_ggx_samples_quality, float(p_base_layer) / (layers.size() - 1.0), layers[p_base_layer].mipmaps[0].size.x);
|
|
copy_effects->cubemap_roughness(downsampled_radiance_cubemap, layers[p_base_layer].views[0], p_cube_side, p_sky_ggx_samples_quality, float(p_base_layer) / (layers.size() - 1.0), layers[p_base_layer].mipmaps[0].size.x);
|
|
|
} else {
|
|
} else {
|
|
@@ -1324,7 +1324,7 @@ void SkyRD::update_radiance_buffers(Ref<RenderSceneBuffersRD> p_render_buffers,
|
|
|
// Note, we ignore environment_get_sky_orientation here as this is applied when we do our lookup in our scene shader.
|
|
// Note, we ignore environment_get_sky_orientation here as this is applied when we do our lookup in our scene shader.
|
|
|
|
|
|
|
|
if (shader_data->uses_quarter_res && roughness_layers >= 3) {
|
|
if (shader_data->uses_quarter_res && roughness_layers >= 3) {
|
|
|
- RD::get_singleton()->draw_command_begin_label("Render Sky to Quarter Res Cubemap");
|
|
|
|
|
|
|
+ RD::get_singleton()->draw_command_begin_label("Render Sky to Quarter-Resolution Cubemap");
|
|
|
PipelineCacheRD *pipeline = &shader_data->pipelines[SKY_VERSION_CUBEMAP_QUARTER_RES];
|
|
PipelineCacheRD *pipeline = &shader_data->pipelines[SKY_VERSION_CUBEMAP_QUARTER_RES];
|
|
|
|
|
|
|
|
Vector<Color> clear_colors;
|
|
Vector<Color> clear_colors;
|
|
@@ -1345,7 +1345,7 @@ void SkyRD::update_radiance_buffers(Ref<RenderSceneBuffersRD> p_render_buffers,
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
if (shader_data->uses_half_res && roughness_layers >= 2) {
|
|
if (shader_data->uses_half_res && roughness_layers >= 2) {
|
|
|
- RD::get_singleton()->draw_command_begin_label("Render Sky to Half Res Cubemap");
|
|
|
|
|
|
|
+ RD::get_singleton()->draw_command_begin_label("Render Sky to Half-Resolution Cubemap");
|
|
|
PipelineCacheRD *pipeline = &shader_data->pipelines[SKY_VERSION_CUBEMAP_HALF_RES];
|
|
PipelineCacheRD *pipeline = &shader_data->pipelines[SKY_VERSION_CUBEMAP_HALF_RES];
|
|
|
|
|
|
|
|
Vector<Color> clear_colors;
|
|
Vector<Color> clear_colors;
|