camera

Guide Bevy 0.15 orbital camera development with coordinate math and viewport conversions.

Updated Apr 21, 2026
One-click install
npx skills add https://github.com/gregoryraymond/claude-agents-and-skills --skill camera-gregoryraymond
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: camera
Source: https://github.com/gregoryraymond/claude-agents-and-skills/tree/main/skills/camera
Command: npx skills add https://github.com/gregoryraymond/claude-agents-and-skills --skill camera-gregoryraymond

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Bevy 0.15 camera tooling provides a reference implementation and guidance for building robust 3D camera systems, including orbital controls, raycasting, and world-space coordinate math, so developers can implement camera behavior consistently across projects.

Core Features & Use Cases

  • Orbital camera pattern using a MapCamera component with distance, pitch, yaw, and a target look-at point.
  • Viewport-to-world and world-to-viewport conversions for UI overlays and interaction.
  • Raycasting support for object selection and interaction using Bevy patterns.
  • Multi-camera setups with render order, per-camera configuration, FXAA, and debugging hooks.
  • Input handling for keyboard, mouse, and touch to pan, rotate, and zoom the camera.

Quick Start

Load this skill when modifying Bevy camera behavior and follow its guidance to spawn, configure, and control a 3D orbital camera.

Frequently Asked Questions about camera

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I set up an orbital camera in Bevy 0.15?

Set up an orbital camera in Bevy 0.15 by using a MapCamera component that manages distance, pitch, yaw, and a target look-at point. This component provides the mathematical foundation for rotating and zooming around a specific 3D target.

How do I convert screen coordinates to world space in Bevy for object selection?

Convert screen coordinates to world space in Bevy using viewport-to-world conversions combined with raycasting patterns. This approach translates 2D screen input positions into 3D rays for accurate object selection and interaction.

Can I configure multiple Bevy cameras with different render orders and FXAA?

Yes, you can configure multiple Bevy cameras by setting per-camera render order and applying FXAA. This setup allows distinct camera views to render sequentially with anti-aliasing and debugging hooks applied individually.

What is the best way to handle pan, rotate, and zoom input for a 3D camera in Bevy?

Handle pan, rotate, and zoom input in Bevy by processing keyboard, mouse, and touch events to update the camera transform. These inputs directly modify the orbital camera parameters for responsive 3D viewport navigation.

Does this Bevy camera guidance apply to projects needing custom viewport overlays?

Yes, this guidance applies to custom viewport overlays by providing world-to-viewport coordinate math. It translates 3D world positions into 2D screen space so UI elements can accurately track objects in the 3D environment.