[Remote rendering 3.5] Server-authoritative color variable lookup tables
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 35/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- python, wasm
- Ambito
- backend, computer-graphics
Direzione di ricerca
Inizia da RuntimeAppState e dal percorso LUT attuale gestito dal client su main, quindi confrontalo con il branch dello spike round-trip e con le responsabilità di mapper/lookup-table. Sposta la selezione dei componenti con SelectColorArray(name), VectorMode e VectorComponent, verificando al contempo il comportamento noto della cache del framework. Il lavoro è completato quando la LUT applicata dal server sopravvive a un refresh o a un reconnect e non produce differenze visive rispetto a main.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
📝 Description of the feature
Intent: The lookup table backing each color variable, the color mapping itself rather than a part's reference to it, becomes server-owned. This is the last piece of the state to invert.
Context: Story 3.1 makes each part's reference server-authoritative: which color variable it uses, which component, over what range. the lookup table that reference resolves against still lives client-side on the wasm path, so the server cannot reconstruct what a scene actually looks like, and a user-modiifed color mapping is lost on reload. RuntimeAppState reserves a slot for this; this story fills it.
Also move component selection from the mapper to the lookup table (SelectColorArray(name) plus VectorMode / VectorComponent), which is required for magnitude coloring of vector variables. The serialized reference can stay as it is, since component: -1 already means magnitude, but decide whether to keep that sentinel or mirror VTK's two-field shape.
Known risk: the lookup table sync issue: On the round-trip spike branch, the LUT state failed to reach the renderer correctly: the framework's client-side cache applied a stale snapshot instead of the state the server delivered. It was diagnosed as a framework-level issue, with no viable local workaround, and has not been retested since.
What kept this from being an issue on main is that the client rebuilds its own LUT on every color change, which creates a fresh object (and object ID) every time, and the framework's stale cache is keyed on object ID. This story removes that, so this is the story that creates that condition; it is therefore expected here. See the first comment below for more details on diagnosing the issue.
If we do encounter a similar issue in this user story, it can be deferred until 6.2 [to add link to user story once it's created] - where we retest after bumping the vtk-wasm and trame-vtklocal versions to be current (we are currently a major version behind on both dependencies). Defer by leaving the client owning its own LUT on the wasm path, which is what main does today. The spike branch tried making the server own the LUT state and adding a client-side reapply to compensate; this did not reliably work, so is not a recommended stop-gap.
The remote rendering work that follows in Phase 4 and Phase 5 is not dependent on the present user story.
Acceptance Criteria
- Color LUT is applied on the server side, so on a refresh or reconnect, the LUT is preserved.
- No in-visualizer differences from main.
💵 Business Value
No response
🔗 Useful links and references
No response
- Lingua principale
- Python
- Stelle
- 1
- Fork
- 0
- Merge medio
- 1g 21h
- PR unite (30g)
- 46
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di ansys/Visual-Interactive-Simulation-Object-Renderer
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 50/100
-
Library updates Apertatechnical
ansys/Visual-Interactive-Simulation-Object-Renderer#136 · 1 assegnatario ·
-
[User Story]: Fix workflows Apertamaintenance
ansys/Visual-Interactive-Simulation-Object-Renderer#131 · 1 assegnatario ·
-
Release 1.0.2 Apertamaintenance
ansys/Visual-Interactive-Simulation-Object-Renderer#130 · 1 assegnatario ·
-
enhancement
ansys/Visual-Interactive-Simulation-Object-Renderer#126 · 1 assegnatario ·
Tutte le issue di ansys/Visual-Interactive-Simulation-Object-Renderer
Issue simili
-
bug confirmed issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
open-webui/open-webui#30750 · 1 commento ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
OpenwaterHealth/openmotion-bloodflow-app#604 · 1 commento ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
-
good first issue
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100