@@ -245,15 +245,13 @@ pub fn set_property(
245245 }
246246
247247 let param_name = find_param_containing_field ( & material. shader , name) ;
248- if let Some ( param_name) = param_name {
249- if let Some ( param) = material. shader . field_mut ( & param_name) {
250- if let ReflectMut :: Struct ( s) = param. reflect_mut ( ) {
251- if let Some ( field) = s. field_mut ( name) {
252- field. apply ( & * reflect_value) ;
253- return Ok ( ( ) ) ;
254- }
255- }
256- }
248+ if let Some ( param_name) = param_name
249+ && let Some ( param) = material. shader . field_mut ( & param_name)
250+ && let ReflectMut :: Struct ( s) = param. reflect_mut ( )
251+ && let Some ( field) = s. field_mut ( name)
252+ {
253+ field. apply ( & * reflect_value) ;
254+ return Ok ( ( ) ) ;
257255 }
258256
259257 Err ( ProcessingError :: UnknownMaterialProperty ( name. to_string ( ) ) )
@@ -281,12 +279,11 @@ fn material_value_to_reflect(value: &MaterialValue) -> Result<Box<dyn PartialRef
281279
282280fn find_param_containing_field ( shader : & DynamicShader , field_name : & str ) -> Option < String > {
283281 for i in 0 ..shader. field_len ( ) {
284- if let Some ( field) = shader. field_at ( i) {
285- if let ReflectRef :: Struct ( s) = field. reflect_ref ( ) {
286- if s. field ( field_name) . is_some ( ) {
287- return shader. name_at ( i) . map ( |s : & str | s. to_string ( ) ) ;
288- }
289- }
282+ if let Some ( field) = shader. field_at ( i)
283+ && let ReflectRef :: Struct ( s) = field. reflect_ref ( )
284+ && s. field ( field_name) . is_some ( )
285+ {
286+ return shader. name_at ( i) . map ( |s : & str | s. to_string ( ) ) ;
290287 }
291288 }
292289 None
0 commit comments