thob-capability-map/Week-1/GeneralNotes.md

29 lines
1.9 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Week 1 — General Notes & Personal Summary
## Milestone Recap: Tasks 14
* **Task 1 (Material Color)**: Handled color changes imperative (Vanilla), declarative (R3F), and UI-driven (Thob).
* **Task 2 (Texture Mapping)**: Successfully applied checkerboard and URL-based textures. **Thob speed was the highlight here.**
* **Task 3 (Hover Feedback)**: Identified a **major gap**—Hover is standard in code but missing from the builder UI.
* **Task 4 (Click Toggle)**: Discovered that the `onClick` interaction engine is currently **unstable/broken** in the builder.
---
## Top Reflections
### Speed vs. Control
* **The Thob Advantage**: Setting up a 3D scene (adding a cube + lighting + texture) in the builder is **lightning-fast**. What takes a 10-minute Vite setup in Vanilla takes **2 minutes** in the Thob UI.
* **The Interactivity Threshold**: As soon as we moved from "Static Visuals" to "Interactive Behavior," the strength shifted back to **R3F**. The builder's UI for interactions exists, but the execution logic isn't there yet.
### Declarative vs. Imperative
* Writing the **Raycaster** manually in Vanilla felt outdated and boilerplate-heavy compared to the clean **`onPointerOver`** props in R3F.
* **Insight**: Thob would benefit immensely by mirroring R3F's declarative event model (simple triggers linked to property changes).
---
## Critical Discoveries (The "Interaction Blackout")
The most valuable part of this week's sprint was identifying that:
1. **Hover (PointerOver/Out)**: Is not just "hidden"—it's currently missing as a first-class feature in the Thob engine.
2. **Click (Interaction Dispatcher)**: Is unreliable. Even when wired correctly in the UI, it doesn't always fire in the runtime.
3. **CORS/Asset Linking**: External URL textures are prone to browser blocking, making internal "Project Library" uploads the only safe path for now.
---