Hi,
I’m a bit stuck with trying to get volumetric clouds to stay in place. I looked through and tried some of the stuff mentioned in the “placing actors” section of the documentation but to no effect. I imagine unreal’s volumetric clouds wouldn’t need to be georeferenced as they already simulate a spherical atmosphere by the looks of it. So, how would I keep them in place?
Many thanks!
Hello,
Volumetric clouds and origin rebasing don’t get along well, unfortunately. Unreal’s Volumetric Clouds are very different than a typical actor, and the best solution I am aware of is just to not use them if origin rebasing is required for a project. If you are working on a project in only one location on the globe, though, you can disable the “Keep World Origin Near Camera” setting on the Georeference, and the volumetric clouds will stay in place during play.
Of course, we’re always looking to improve the plugin - If you find any fixes or anything that helps with this issue, please let us know!
Having the same issue with a flight simulator I am developing. Rebasing is necessary due to distances that are simulated, and volumetric clouds (using ultradynamic sky plugin) is also needed. Did you get anywhere in your own?
Thanks!
Hi @Cloudhopper3,
First of all, you may want to try increasing the Maximum World Origin Distance on the CesiumGeoreference. If increasing this value significantly (Like to 10000000 or higher) doesn’t impact your physics/gameplay too much, this might be helpful for reducing the frequency of the flickering, though it doesn’t solve the core problem.
To the best of my knowledge, this flickering occurs because the texture used for the cloud detail assumes you are staying in the same location, and so you “reset” to the center of that texture every time the origin is rebased. There may be a way to modify the volumetric cloud actor itself, but most likely this would be easier to do by applying an offset to the texture UVs in the material whenever the origin is rebased.
There’s not currently anything out of the box that I know of to use for this, and the approach may not even be possible with the Ultra Dynamic Sky plugin, depending on how they implemented their clouds. I’d like to test this out further, though I suspect it will be a while before I’m able to get around to it. It may be useful to reach out to the creator of the Ultra Dynamic Sky plugin to see if this is something they have encountered before, or if there is a way to edit the offset of the volumetric cloud texture.
-Alex
Thanks for your reply. I was able to solve this problem with a minor change to the ultradynamic sky plugin. I will share the details of my solution later. I detect the jump in coordinates, and offset the clouds this amount to compensate. It is totally seamless.
Hi, is there any new progress? I’m very interested in this.
Thanks!
I will try to post my solution later today.
The solution I came up with was to modify three materials from UltraDynamicSky: The Volumetric_Clouds Material. and the Inside_Clouds_Fog_Particle, and the Sun Cloud Shadows MID. Create a new vector parameter input… I call mine “Offset”. Add this vector parameter to all places where you find “Absolute World Position” in the blueprint.
Four places in Fog, and three in volumetric clouds.
Finally, in my level blueprint, I use an actor in my level which contains only the default scene root and a cesium GloveAnchor initially placed at 0,0,0. It will have its coordinates updated by Cesium (like everything else) when rebasing occurs, and it provides the total offset to the Dynamic Material Instances
Hello, my English is not good. I used your method, but the volume cloud flickers every time the origin returns to zero. Do you have this situation?
I do not see what you describe. There are no visual artifacts. I am happy to advise you if you wish to provide more details. Please tell me what you mean by flicker. How long does it last, and how rapidly?
Thank you for your willingness to help me. My problem is that when the coordinates of the volume cloud are updated, the vision will flicker, just like the cloud is updated, and the location changes suddenly. I will upload the video later.
https://www.bilibili.com/video/BV1Mq4y1q7uF/
I upload a video and hope you see it.
Yes…I can see. I suspect what is happening related to the timing between the jump occurring, and the new value being updated in the cloud shader.
It looks like for one frame, the clouds jump, and then the value is updated, and the clouds return to the correct position.
Check that the tick is running on every frame in the function that is watching the position of the reference object for its location to jump.
Tom
Thank you for your reminder. The problem has been solved. I put the computing unit into the level blueprint and solved the problem perfectly. I am a R & D personnel of flight simulator and hope to communicate with you about the problems of flight simulator.
Hi, did you see any problem with textures when flying for a long time? Like when substantial amount of offsets accumulate over time to the point floating point precision is lost. If you did, how did you solve them?