Skip to content

OBJ Viewer: true wireframe + hidden-line removal, zoom/focus, multi‑axis rotation; README updates#2

Merged
newjordan merged 10 commits into
mainfrom
epic/raycaster-3d
Nov 6, 2025
Merged

OBJ Viewer: true wireframe + hidden-line removal, zoom/focus, multi‑axis rotation; README updates#2
newjordan merged 10 commits into
mainfrom
epic/raycaster-3d

Conversation

@newjordan

Copy link
Copy Markdown
Owner

This PR introduces a simplified, fast OBJ-based 3D viewer and updates documentation.

Highlights:

  • True mesh wireframe (edges + vertex dots) with hidden-line removal via depth buffer (no back/occluded edge clutter)
  • Simple solid shading mode (flat/diffuse)
  • DRY Transform3DControls: yaw/pitch/roll + zoom/scale + auto-rotate
  • Focus/Fit (F) and zoom (Z/X)
  • Controls: W (wireframe/solid), A/D (yaw), J/K (pitch), ,/. (roll), Z/X (zoom), F (focus), G/H (line px), T/Y (vertex px), R (auto-rotate)
  • README: New Quick Start for OBJ Viewer, capabilities bullet, gallery images (public/examples/*)

Notes:

  • Library builds are green (cargo build --lib). Full cargo test currently fails due to older example code and glTF tests that no longer apply. The app itself builds and runs.
  • README image paths are relative to repo (public/examples/..); they’ll display on main after merge.

Follow-ups (optional):

  • Update or remove glTF tests/examples referencing retired modules
  • Consider CI to build only the application and core tests initially

Pull Request opened by Augment Code with guidance from the PR author

…ne, wireframe grid + diffuse lighting, and Braille terminal conversion. Include tests and ray_tracer_demo example.
…D, implement Raycaster3DVisualizer, fix Braille dot mapping, and update channel cycling.
…ist via Application and rebuild visualizer on change.
…ult rotation\n\n- Wireframe: use hit normal (no hardcoded center/radius)\n- Controls: G/H step (density), T/Y thickness (tolerance), W toggles mode; UI overlay shows values\n- Renderer: orientation support (yaw/pitch) while keeping render() for compatibility\n- Visualizer: time-based yaw rotation by default\n- Tests/examples updated; add .gitignore for /target-test
- Default yaw rotation; auto-rotate on by default
- J/K adjust rotation speed; R toggles auto-rotate
- Keep wireframe controls: G/H (step), T/Y (thickness)
- Fix misplaced insertion that broke 'Y' handler in main.rs
…en-line removal, solid mode, zoom/focus, multi-axis rotation); usage instructions and keys. Also note models/ folder and loader behavior.
…ke head wireframe, solid sphere) and fix markup closing tags
…oom/focus; DRY Transform3DControls (yaw/pitch/roll); status text and controls; render_scale=1.0; add gallery images and README sections
@newjordan newjordan merged commit 0099ac3 into main Nov 6, 2025
6 of 14 checks passed
@newjordan newjordan deleted the epic/raycaster-3d branch November 7, 2025 04:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant