Skip to content

World setting no_rendering_mode is broken #9535

@Kait0

Description

@Kait0

Setup
Describe the setup you are using to run CARLA along with its version:

  • CARLA version: 0.9.16
  • Platform: Ubuntu 22.04
  • Python version: 3.10
  • GPU: Tested on 3090, A100 and L40S
  • GPU Drivers: Tested 535, 575, 580

Describe the bug

When using the no_rendering mode of CARLA (tested in sync mode) and using camera sensors, the cameras still render the image.
Additionally, the feature introduces a silent bug where the cameras gradually take longer and longer to render with every simulator tick.

Steps to reproduce
Use these world settings and spawn some camera sensors (I tested with 3x cameras, a 384x384 resolution).
Visualize what the camera sensor return in their callback (still render images) and measure the time it takes for the callback to respond. Simulate ticks in a for loop.
The camera still works, but the time until the camera sensor returns the image increases over time.

settings = carla.WorldSettings(
            synchronous_mode = True,
            fixed_delta_seconds = 1.0 / args.frame_rate,
            deterministic_ragdolls = True,
            no_rendering_mode = True,
            spectator_as_ego = False,
        )

client.get_world().apply_settings(settings)

Expected behavior
If it is undefined behavior to spawn cameras in no_rendering_mode=True than I would expect an error raised by the simulator or client.
If this use case was intended, the cameras should return black images, and the rendering time should not increase over time.

Additional context
Potentially related issues:
#4860
#4101

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions