Use bulbradius as the vsm_blur_width as well.
PiperOrigin-RevId: 937286692 Change-Id: I03502da45951f90979b8f8d58915c80656a5eac7
This commit is contained in:
committed by
Copybara-Service
parent
38956ed95c
commit
3d09a46d61
@@ -78,8 +78,6 @@ LightManager::LightManager(mjrfContext* ctx, mjrfScene* scene,
|
||||
const mjModel* model = model_objects->GetModel();
|
||||
default_shadow_map_size_ = ReadElement(
|
||||
model, "filament.shadows.map_size", default_shadow_map_size_);
|
||||
default_vsm_blur_width_ = ReadElement(
|
||||
model, "filament.shadows.vsm_blur_width", default_vsm_blur_width_);
|
||||
fallback_head_light_intensity_ =
|
||||
ReadElement(model, "filament.fallback.head_light_intensity",
|
||||
fallback_head_light_intensity_);
|
||||
@@ -129,11 +127,13 @@ void LightManager::Prepare() {
|
||||
params.color[2] = model->light_diffuse[2];
|
||||
params.type = (mjtLightType)model->light_type[i];
|
||||
params.cast_shadows = model->light_castshadow[i];
|
||||
// The bulb_radius is only used by DPCF or PCSS shadows. For VSM shadows,
|
||||
// we use light_bulbradius to control the blur width.
|
||||
params.bulb_radius = model->light_bulbradius[i];
|
||||
params.vsm_blur_width = model->light_bulbradius[i];
|
||||
params.range = model->light_range[i];
|
||||
params.intensity = model->light_intensity[i];
|
||||
params.shadow_map_size = default_shadow_map_size_;
|
||||
params.vsm_blur_width = default_vsm_blur_width_;
|
||||
if (params.type == mjLIGHT_SPOT) {
|
||||
params.spot_cone_angle = model->light_cutoff[i];
|
||||
}
|
||||
|
||||
@@ -51,7 +51,6 @@ class LightManager {
|
||||
UniquePtr<mjrfTexture> fallback_ibl_texture_{nullptr, nullptr};
|
||||
std::vector<UniquePtr<mjrfLight>> lights_;
|
||||
int default_shadow_map_size_ = 2048;
|
||||
float default_vsm_blur_width_ = 0.0f;
|
||||
float fallback_head_light_intensity_ = 0.f;
|
||||
float fallback_scene_light_intensity_ = 80'000.f;
|
||||
float fallback_environment_light_intensity_ = 5'000.f;
|
||||
|
||||
Reference in New Issue
Block a user