Variable should get bigger in fullscreen

I’ve noticed shown variables and lists stay the same size in full screen and in the editor. This is very annoying and makes it hard to see the variable in full screen. If this can be changed, I think the shading in the variable should increase in full screen to match the variable size

I don't quite understand the complaint. If the watcher is large enough to read in the editor, it doesn't get any smaller in presentation mode.

I can see how it might be problematic that in presentation mode parts of the stage that are covered by the watcher in the editor become exposed to view, which might make it harder to design the program's stage background, sprite positions, etc. Is that your issue?

The variable stays the same size in full screen and out of full screen. It should grow to fit the new size of stage compared to in the editor

Imo variable watchers should only be used for debugging and demonstrations, otherwise text engines are definitely the way to go because of how simple (really only a few blocks) they are
They just update way too slow to be accurately used for games and such

Umm you just said the same thing again that you said to start with. Could you answer my question?

Actually, sometimes text engines are faster, specifically using the write block in the pen category. If you stick that in a loop like this

untitled script pic (6)

It updates much much faster than a variable watcher. In fact using this method is still much faster than variable watchers.

untitled script pic (11)

i ment that variable watchers update too slow to be used in games, i dont think theres a single time ive ever used a variable watcher over even just a say block

maybe they should be updated to work kinda like this?
untitled script pic (6)
instead of like this
untitled script pic (7)
(it would only do the watcher updates on shown variables if it doesnt do that already)

some of these might be doable like render watcher if javascript allows you to read and write variable positons, you could use the create variable blocks to do that

I think you're trying to have it both ways. If we checked watched variables often enough to do instant updates, everything else would be way too slow. Trust me, Jens does timing experiments for things like this compulsively.

What about just storing a value for if the watcher should redraw, then every time to stage updates, it redraws the variable watchers that need to be redrawn.

but then why dont say blocks bug out when doing that

I believe that the watcher points to the variable, not the other way around, because you can have more than one watcher for the same variable (e.g., so that they have different display formats). And yes, we could put a list of watchers in the variable, but again, the goal is to keep things fast, which means keeping things simple.

I'm afraid I'm not sure what "that" refers to; there are too many questions on the table.

when a variable updates why dont say blocks also lag if the same where to happen to variable watchers

Oh. You're asking about untitled script pic (2)? The sequence of events is completely different. First, bear in mind, the variable itself is always correct at any instant, by definition; whatever's in the variable is in the variable. Next, remember that Snap! uses applicative order, which means that argument expressions are evaluated before the block is called. So the SAY block doesn't even know that its input value came from a variable, let alone which variable. It just knows the input value, namely, whatever value came from the variable. So then, however long it takes for the SAY to display its result on the stage, that result will contain the value that was in the variable before running SAY.

Watchers are different; they are associated with a particular variable, not with whatever value was in that variable when the watcher was created. So it's the watcher's job to stay up to date.

What im saying is why don’t watchers also do the same thing
I made a block that creates a variable watcher using the say block to demonstrate this point

without the mettaprogramming scope bug thing

Watchers just need to be glorified say blocks that render stuff at a position, they don’t write values or have anything involved other than showing or hiding so they really don’t need to be more

A long time ago I also made this

Well okay we'll think about this, but it doesn't feel urgent, so as usual, don't hold your breath.

That’s all I really want, just for it to be considered and for it to be recognized

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.