@@ -156,9 +156,9 @@ def __init__(self, cfg: CameraCfg):
156156 self ._sensor_prims : list [UsdGeom .Camera ] = list ()
157157 # Create empty variables for storing output data
158158 self ._data = CameraData ()
159- # Renderer and render data — initialized in _initialize_impl
160- self .renderer : BaseRenderer | None = None
161- self .render_data = None
159+ # Renderer and render data — assigned in _initialize_impl.
160+ self ._renderer : BaseRenderer | None = None
161+ self ._render_data = None
162162
163163 if not has_kit ():
164164 return
@@ -181,8 +181,8 @@ def __del__(self):
181181 # unsubscribe callbacks
182182 super ().__del__ ()
183183 # cleanup render resources (renderer may be None if never initialized)
184- if hasattr ( self , "renderer" ) and self . renderer is not None :
185- self .renderer .cleanup (getattr ( self , "render_data" , None ) )
184+ if self . _renderer is not None :
185+ self ._renderer .cleanup (self . _render_data )
186186
187187 def __str__ (self ) -> str :
188188 """Returns: A string containing information about the instance."""
@@ -409,12 +409,12 @@ def _initialize_impl(self):
409409 # Initialize parent class
410410 super ()._initialize_impl ()
411411
412- self .renderer = Renderer (self .cfg .renderer_cfg )
413- logger .info ("Using renderer: %s" , type (self .renderer ).__name__ )
412+ self ._renderer = Renderer (self .cfg .renderer_cfg )
413+ logger .info ("Using renderer: %s" , type (self ._renderer ).__name__ )
414414
415415 # Stage preprocessing must happen before creating the view because the view keeps
416416 # references to prims located in the stage.
417- self .renderer .prepare_stage (self .stage , self ._num_envs )
417+ self ._renderer .prepare_stage (self .stage , self ._num_envs )
418418
419419 # Create a view for the sensor with Fabric enabled for fast pose queries.
420420 # TODO: remove sync_usd_on_fabric_write=True once the GPU Fabric sync bug is fixed.
@@ -444,7 +444,7 @@ def _initialize_impl(self):
444444 self ._sensor_prims .append (UsdGeom .Camera (cam_prim ))
445445
446446 # View needs to exist before creating render data
447- self .render_data = self .renderer .create_render_data (self )
447+ self ._render_data = self ._renderer .create_render_data (self )
448448
449449 # Create internal buffers (includes intrinsic matrix and pose init)
450450 self ._create_buffers ()
@@ -459,13 +459,13 @@ def _update_buffers_impl(self, env_mask: wp.array):
459459 if self .cfg .update_latest_camera_pose :
460460 self ._update_poses (env_ids )
461461
462- self .renderer .update_transforms ()
463- self .renderer .render (self .render_data )
462+ self ._renderer .update_transforms ()
463+ self ._renderer .render (self ._render_data )
464464
465465 for output_name in self ._data .output :
466466 if output_name == "rgb" :
467467 continue
468- self .renderer .read_output (self .render_data , output_name , self ._data )
468+ self ._renderer .read_output (self ._render_data , output_name , self ._data )
469469
470470 """
471471 Private Helpers
@@ -568,7 +568,7 @@ def _create_buffers(self):
568568
569569 self ._data .output = data_dict
570570 self ._data .info = [{name : None for name in self .cfg .data_types } for _ in range (self ._view .count )]
571- self .renderer .set_outputs (self .render_data , self ._data .output )
571+ self ._renderer .set_outputs (self ._render_data , self ._data .output )
572572
573573 def _update_intrinsic_matrices (self , env_ids : Sequence [int ]):
574574 """Compute camera's matrix of intrinsic parameters.
@@ -622,9 +622,9 @@ def _update_poses(self, env_ids: Sequence[int]):
622622 quat , origin = "opengl" , target = "world"
623623 )
624624 # notify renderer of updated poses (guarded in case called before initialization completes)
625- if self .render_data is not None :
626- self .renderer .update_camera (
627- self .render_data , self ._data .pos_w , self ._data .quat_w_world , self ._data .intrinsic_matrices
625+ if self ._render_data is not None :
626+ self ._renderer .update_camera (
627+ self ._render_data , self ._data .pos_w , self ._data .quat_w_world , self ._data .intrinsic_matrices
628628 )
629629
630630 """
0 commit comments