UsdLayerManager/openspec/changes/viewport-custom-camera/specs/maya-viewport-controls/spec.md

2.1 KiB

ADDED Requirements

Requirement: Alt+LMB orbit navigation

The viewport SHALL orbit the camera around the focal point when the user holds Alt and drags with the left mouse button.

Scenario: Alt+LMB drag orbits the camera

  • WHEN the user holds Alt and drags with the left mouse button inside the viewport
  • THEN the camera orbits around the focal point based on the drag delta

Scenario: LMB without Alt does not orbit

  • WHEN the user drags with the left mouse button without holding Alt
  • THEN no orbit occurs and the click is forwarded for prim selection

Requirement: Alt+MMB pan navigation

The viewport SHALL pan the camera when the user holds Alt and drags with the middle mouse button.

Scenario: Alt+MMB drag pans the camera

  • WHEN the user holds Alt and drags with the middle mouse button inside the viewport
  • THEN the camera pans horizontally and vertically based on the drag delta

Requirement: Alt+RMB dolly navigation

The viewport SHALL dolly (zoom) the camera when the user holds Alt and drags with the right mouse button. Vertical drag upward moves the camera closer; downward moves it farther.

Scenario: Alt+RMB drag dollies the camera

  • WHEN the user holds Alt and drags vertically with the right mouse button inside the viewport
  • THEN the camera dollies in or out based on the vertical drag delta

Requirement: Scroll zoom without Alt

The viewport SHALL zoom the camera when the user scrolls the mouse wheel, without requiring the Alt modifier.

Scenario: Scroll wheel zooms

  • WHEN the user scrolls the mouse wheel while hovering over the viewport
  • THEN the camera zooms in or out based on the scroll direction

Requirement: Legacy input mappings removed

The previous input mappings (LMB for orbit, MMB for pan, Shift+LMB for pan) SHALL be replaced entirely by the Maya-style Alt+button scheme.

Scenario: MMB without Alt does not pan

  • WHEN the user drags with the middle mouse button without holding Alt
  • THEN no pan occurs

Scenario: Shift+LMB does not pan

  • WHEN the user holds Shift and drags with the left mouse button
  • THEN no pan occurs