Adding skybox to motion_blur example
Fixes #13632
I like the choice of sky box, although AI-generation will be controversial even for test assets. CC-BY is a fine license.
I like the choice of sky box, although AI-generation will be controversial even for test assets. CC-BY is a fine license.
I can look for some other one if its prefered. Let me know what you think.
Everything else being equal, let's look for a different one. Criteria for me are a) human-made b) permissively licensed c) pretty d) mostly sky
Ideally we would also have an envmap, so the lighting matches the skybox. You can use https://github.com/pcwalton/gltf-ibl-sampler-egui to generate skyboxes and specular/diffuse envmaps from hdr skyboxes you find online.
I found a CC0 skybox, but the suggested tool produces a rather large asset file. Let me know if you are content with this.
@aevyrie can you tag someone from the said experts please? It would probably be beneficial if they give their input regarding picking a skybox then.
Hopefully I got this right: @superdump @pcwalton @JMS55 @IceSentry
Could we use existing skybox and environment map textures in the repository to avoid having to add new ones? Having large binary files in the repository should have good motivation and if we already have something then maybe we don’t need to add more.
The motivation for this issue is that the existing assets are kind of ugly and don't work well for this particular case. @aevyrie can say more about what's lacking.
In general, I'd really like to move towards using nicer assets for our examples: they're the first thing people see and it's hard to disentangle "ugly/broken asset" from "ugly/broken engine".
To try to push this forward: with the currents assets (10 megs including all the files, including the suggested compression) it looks like the following:
https://github.com/bevyengine/bevy/assets/25829992/7e99e1df-393b-40d2-b839-d834c2973da7
I will move them to the env maps folder so they sit together.
Let me know what you think
Unfortunately, 10 Mb is likely too large to be in tree, but that is not my call to make. Not sure what the limits or alternatives are.
As for the skybox itself, I would personally prefer we go with something lower detail, like other engines. I'd also expect that should be compressible down to a few Kb.
I have two issues with the skybox chosen here
- The fidelity isn't great, and doesn't leave a good impression with me. The highlights are blown out and hue shifted, and the clouds have a sort of dirty appearance. A photoreal skybox like this is likely always going to look terrible once it has been compressed down to an acceptable size to live in tree.
- The aesthetic doesn't seem to fit with the general feel of bevy. I'm not an authority here at all, this is my impression. Given the sort of "friendly" cartoony vibe of the logo and aesthetic elsewhere, I assume that when the org has the resources, it will be commissioning stylized assets, rather than photoreal ones? This is complete vibes-based speculation on my part though!
To give more a more concrete suggestion, if we are going to add a better default skybox, it should probably be something similar to other engines:
Fyrox
Unity
Godot

It's possible these are also just using a simple shader for the skybox and envmap, which would completely eliminate the need for a skybox texture.
I agree a default skybox like that would be better, but for the motion blur example, I'd would prefer a skybox with more stuff in it so you can actually see the blur. Otherwise we don't need to add one to that example.
I agree a default skybox like that would be better, but for the motion blur example, I'd would prefer a skybox with more stuff in it so you can actually see the blur. Otherwise we don't need to add one to that example.
I agree with the statement here. I was searching for free to use hdri skyboxes that would be potentially better in low res but I couldn't find one.
I am open for suggestions as I think it would look better with a nicer environment for this example.
I tried to create some skyboxes but none of them were able to jump the bare minimum of being acceptable so I am looking for input about this.
With your suggestion I was able to remove the 4 megs of the cubemap.
I wouldnt scale down the resolution further because it gets really ugly :(