Comments (2)
Was this a purely cosmetic choice or is there a deeper reason for this fade, e.g. to hide the fact that some data is still loading?
Both. There are a variety of reasons why a puzzle can take a while to load, not the least of which is a flaky network connection. In the future we'll almost certainly also want to consider optimizations that save time/battery life, by only loading players once they are close to the viewport. And once we get back to playing with VR and/or environments with multiple puzzles, we'll need some cues to indicate that puzzles are appearing and disappearing on purpose, rather than due to rendering glitches.
Even if the players each load instantly like image, I can't really prevent a flash by removing the fade-in. In fact, the transition will be even more sudden. Is that a desirable effect?
from cubing.js.
I totally agree with needing some form of loading indicator for various situations and I'm not asking to remove that. I understand that you can't guarantee loading to be finished within a certain timeframe and fading in is a good solution for that use case. I'm just proposing that giving the user control over that effect could improve usability for certain use cases like mine.
The question between having sudden or animated transitions starts to matter once you get into the realm of having lots of players in your view and they all finish loading at roughly the same time. The fade in causes a flash while a sudden transition could be perceived as a part of the page load. In fact, the fade makes it very clear that not everything is loaded at the same time, which is slightly distracting.
See attached video for a demonstration. A 60 fps video doesn't capture the effect entirely, it's much more visible on my 144 Hz screen. Basically, the grid loads so quickly that the fade-in artificially prolongs the perceived loading time.
2024-02-22.16-05-44.mp4
from cubing.js.
Related Issues (20)
- [cubing.js issue] Something broke at least with PG3D visualization after 0.46.0 update HOT 3
- Nextjs experimentalAddMove applies move twice HOT 3
- [Twizzle issue] Twizzle deployment 500's for Square-1 reconstructions HOT 3
- [cubing.js issue] Incomplete turns in `<twisty-alg-viewer>` HOT 2
- [Feature request] Standalone controle panel elements, custom styling for components HOT 6
- [cubing.js issue] Detect partial solve HOT 4
- [Feature request] need a parameter to adjust speed of animation HOT 2
- [cubing.js issue] Scale of experimental-2D-LL sides stickers is inconsistent between cubes HOT 2
- How to change TwistyPlayer render size? HOT 6
- [cubing.js issue] With angular Twisty player cannot load HOT 9
- `cubing.js` compatibility notes
- [Feature request] - Some feedback after building a cfop tutorials page vs supported stickering or masking profiles HOT 3
- Cube rotations cause simultaneous moves to break HOT 4
- The return value of KTransformation.toKPattern() is not guaranteed to be immutable HOT 2
- Svelte / SvelteKit Module Worker Errors HOT 1
- [Twizzle issue] Incorrect GAP and Schreier-Sims permutation in PuzzleGeometry for icosamate HOT 2
- [cubing.js issue] Malformed types published with `v0.48.3` HOT 1
- [cubing.js issue] typo docs: decivingly - deceivingly HOT 1
- [Feature request] Validate moves for experimentalAddMove() HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cubing.js.