tangram-play
tangram-play copied to clipboard
Fine-tune Tangram's feedback response timing with user input in the editor.
Conversation!
Karim Naaji [4:00 PM]
when you edit a shader for example, I sometimes feel like it could be comfortable to wait for the user to hit a "run the scene" button before seeing the errors incrementally while you edit
Varun Talwar [4:01 PM]
^^ more on the lines of how shadertoy behaves?
Brett Camper [4:01 PM]
oh yeah we talked about that before
Karim Naaji [4:01 PM]
@varun: yes
Brett Camper [4:02 PM]
I guess I wouldn't mind a mode, but I actually worry this makes it harder for newer people to understand
learning the process of writing shaders... personally I'd like to see us find ways to keep real-time feedback but make it less intrusive/distracting
Lou Huang [4:02 PM]
can we have a formal comment on https://github.com/tangrams/tangram-play/issues/14 ?
Brett Camper [4:03 PM]
for example experiment with an ambient color (red/green) in the background that reflects compilation status (for example)
(like html form validation, which can also suffer from overly eager error handling)
Matt Blair [4:05 PM]
Is it possible to put a hook on ctrl-s? Certainly we could have a button too but I think there's some muscle memory we can tap into here.
Generally I'd strongly prefer text editing to not be slowed down by constantly trying to update the scene.
And honestly sometimes it's reassuring to have some way to tell Play to update the scene because I often can't tell what it's doing.
Brett Camper [4:06 PM]
hmm... again, I think part of this is not the fact of real-time feedback (which I feel strongly is important! :) but the degraded UX it's currently causing
there are a lot of things going on
for example, as @matt says, we don't provide any feedback right now that Play is responding to you / doing anything (updating the scene, etc)
these are definitely challenging design issues, but I feel like it is worth trying to improve that experience before falling back on forcing the user into an explicit update action (I don't mind making that available as an option though, like disabling auto updates)
a lot of the current behavior, like the typing debounce timeout, are not very consciously tuned
and different behavior may be appropriate for something like a color picker vs. editing a complex shader (edited)
Patricio Gonzalez Vivo [4:11 PM]
@karim: is funny someone made a PR to glslEditor asking for that exact same feature https://github.com/patriciogonzalezvivo/glslEditor/pull/5
I will suggest two (non-exclusive) options:
- Visible toggle for auto-update: The constant updating can slow down text editing and put an excessive strain on my processor and battery, so I'd enjoy having a UI switch that disables automatic scene updates. This also implies a way to manually trigger an update, which could be both a UI element and a keyboard shortcut.
- Visual indicator of compilation/update process: Part of the reason I want a manual "update" button is that sometimes I can't tell whether my change is still being applied or whether it just did nothing! This could be a simple binary indicator, either "scene is still updating something" or "scene is done".