A resource is global state attached to the world, not to any entity. Delta time. The input snapshot for this frame. The list of loaded materials. The active camera. Each resource type exists exactly once in the world and lives on world.resources.
Systems read and write resources directly. There are no accessor functions, no per-resource fan-out. The freecs macro generates the Resources struct from the declaration block and gives every field public access.
Operations that need GPU access, or that have to happen at a defined point in the frame, go through world.queue_command. The command queue is a Vec<WorldCommand> that the renderer drains at frame setup.
The render-time commands are GPU uploads and screenshot captures. The ECS-time commands (DespawnRecursive, ReloadMaterial) are drained by the process_commands_system in the frame schedule. The full breakdown of immediate-versus-deferred operations is in Tags, Events, and Commands.