23 lines
2.5 KiB
Markdown

# Thob Observations: Task 2 - Texture Switcher
### Thob Observations from Task Notes
* **Possible**: Yes, Swapping between planetary textures (Earth/Moon) using a `RadioGroup` for selection.
* **Implementation used**: Hierarchical UI setup using a `RadioGroup` paired with a `For` loop to generate selectable items. Texture mapping was achieved by linking the `RadioGroup` state to a `MaterialVariant` node controlling the `map` property of the sphere.
* **What worked as expected**: High-resolution textures (Earth/Moon) mapped correctly to the Sphere geometry without UV distortion. The logical flow from UI selection to 3D texture update was instantaneous.
* **Main limitation observed**: Managing multiple textures in a loop requires specific binding syntax (like `$context.item_currentItem.id`) which is a "guessing game" without integrated docs.
* **Builder flow used**: Layers Panel (Node Hierarchy) -> Properties Panel (Texture Loading) -> UI Component Library (RadioGroup).
* **Complexity**: Medium-High. The complexity increases as you move from simple color swaps to multiple asset-based texture swaps in a logical loop.
* **Main limitation signals**: An extreme volume of `GetBindingData... method already registered` warnings appearing in clusters every time a new texture is selected.
* **Workaround status**: Successfully implemented using 100% native builder components.
### Console Warnings/Errors Seen (Deduplicated) and Probable Meaning
1. **Redundant Binding Registration**: `GetBindingData... method already registered`.
* *Probable Meaning*: This happens during UI interactions with the **For-loop**. It suggests that the builder is trying to re-calculate the bindings for all loop items every time the selection changes.
2. **Hydration & State Initialization**: `No HydrateFallback` and `uncontrolled to controlled` warnings.
* *Probable Meaning*: Standard startup noise from the builder engine when it begins matching the interactive UI to the 3D scene state.
3. **Resource Persistence**: `404 Not Found` for builder paths.
* *Probable Meaning*: Occurs when the builder tries to reference an asset or thumbnail before it has finished processing in the media library.
### Overall Read
Task 2 proves that Thob can handle high-quality asset swapping (Texture mapping) efficiently. The visual result is professional and production-ready. However, the background warnings during loop interactions indicate that the data-binding layer needs optimization to handle multiple options cleanly.