2026-04-23 00:51:56 +05:30

50 lines
3.6 KiB
Markdown
Raw 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.

# Divya Week 4 — Visual Priority Recommendations
## 3 Quick Wins
### 1. Asset Pipeline Validation & Feedback
- **Problem**: Texture uploads larger than 5MB fail silently without informing the user.
- **Why it matters**: It creates "Invisible Walls" for professional designers, leading to wasted time troubleshooting missing assets.
- **Recommendation**: Implement a simple file-size check and "Error Toast" notification when an upload is rejected.
- **Expected user impact**: Immediate reduction in "Unreliable Asset" complaints and faster authoring loops.
- **Confidence level**: High (This is a standard frontend validation).
### 2. $Context Syntax Dropdown / Autocomplete
- **Problem**: Binding UI triggers to Mesh IDs requires memorizing proprietary `$context` syntax.
- **Why it matters**: It is the single biggest friction point during the "Logic Linking" phase of building a configurator.
- **Recommendation**: Add a simple "Logic Picker" dropdown in the Binding panel that pre-fills valid $context paths.
- **Expected user impact**: Drastic reduction in "Interaction Drift" and a much lower learning curve for new designers.
- **Confidence level**: High.
### 3. Configurator Default State Persistence
- **Problem**: Active selections (like a chosen planet texture) reset to default on browser refresh.
- **Why it matters**: Makes "Reviewing" or "Sharing" specific configurations impossible during the build process.
- **Recommendation**: Store the active variant indices in the local editor session or URL params.
- **Expected user impact**: Improves the "QA and Review" workflow for design teams.
- **Confidence level**: Medium.
## 2 Medium Features
### 1. The "Selection Manager" Logic Primitive
- **Problem**: Managing mutual exclusivity (Single-Select) across 10+ parts is currently manual and fragile (State Explosion).
- **Why it matters**: This is the #1 requirement for complex retail configurators (e.g., choosing 1 wheel out of 20 options).
- **Recommendation**: Build a "Selection Group" node. Any mesh added to this group follows a "Radio Button" rule automagically.
- **Scope estimate**: 11.5 weeks.
- **Risk**: Low product risk; high engineering leverage.
### 2. Material Variant Block (Atomic UI)
- **Problem**: Creating a color switcher requires building individual buttons and linking manual visibility logic.
- **Why it matters**: Its the most common task but also the most repetitive.
- **Recommendation**: A dedicated UI component that automatically generates buttons for every Variant defined on a Material.
- **Scope estimate**: 2 weeks.
- **Risk**: Requires a tight bridge between the Material Schema and the UI Engine.
## 1 Deeper Architecture Concern
- **Problem**: Absence of Native 3D Raycasting (Interaction Engine).
- **Why it matters**: Without the ability to click 3D objects directly, Thob is a "UI Overlay" tool rather than a truly immersive 3D experience. Interaction remains shallow and limited to 2D buttons.
- **Why it is deeper than a quick fix**: This requires integrating a robust Pointer/Event system into the core Three.js render loop and exposing it through the Editor's Node system.
- **What kind of spike or investigation is needed**: A technical spike on "Pointer Event Propogation" in the Thob Fiber layer to see how to expose onClick and onPointerOver triggers to the user.
## Final Recommendation
- If only 1 visual/product-facing thing should be built first, it is the **Selection Manager Logic Primitive**. Direct interaction is the ultimate goal, but a "Selection Manager" would immediately unlock the ability to build massive, professional configurators that are currently too "Fragile" to maintain.