Search Unity

  1. Unity 2020.1 has been released.
    Dismiss Notice
  2. Good news ✨ We have more Unite Now videos available for you to watch on-demand! Come check them out and ask our experts any questions!
    Dismiss Notice

Massive Clouds Atmos / Massive Clouds

Discussion in 'Assets and Asset Store' started by mewlist, Nov 9, 2018.

  1. mewlist

    mewlist

    Joined:
    May 22, 2017
    Posts:
    226
    Cloud Shadow feature problem is that I do not aware.
    Is the problem occurred on Camera Effect Mode or Post Process Mode?
    Or.. specific version of Unity?
    Would you tell more detail how to reproduce.

    Sorry for the inconvenience.
     
    protopop likes this.
  2. mewlist

    mewlist

    Joined:
    May 22, 2017
    Posts:
    226
    Thank you for using MassiveClouds.

    Spherical rendering is not support in current version.
    And I recognize this feature is expected from number of developers.

    After HDRP feature is released, I try to think about this.

    Thanks
     
  3. protopop

    protopop

    Joined:
    May 19, 2009
    Posts:
    1,379
    Thank you. So far I am able to change the clouds at runtime using a script so I can work around this. I am using unity 2019.2.8.

    I will take another look and try to be clear about the exact steps.

    It is a wonderful asset:)
     
  4. protopop

    protopop

    Joined:
    May 19, 2009
    Posts:
    1,379
    I would like to change the current cloud profile in a C# script at runtime.

    How would I write this?

    (
    public CloudProfile profile;
    massiveclouds.profile = profile1
    .. etc)
     
  5. protopop

    protopop

    Joined:
    May 19, 2009
    Posts:
    1,379
    I figured the both out:)

    I found your MassiveCloudsProfileChanger.cs script which shows hoot change profiles from a script. Thank you.

    For the cloud profiles, I was clicking on the profile in the Project panel, then changing the parameters in the inspector.

    I should have clicked on the profile in the MassiveClouds component layer and edit the profile there, then click Save to View. I noticed I missed this after re reading the manual.

    Thank you for all of this - I'm very excited to keep playing around with this more. It is exactly what I was hoping for.
     
    mewlist likes this.
  6. whidzee

    whidzee

    Joined:
    Nov 20, 2012
    Posts:
    122
    I notice that sometimes i make changes to the cloud profile and sometimes it doesn't update. i'll start doing drastic changes and i wont be seeing any changes, but then sometimes it'll accept the update. Is anyone else experiencing this problem? at the moment I am having a situation where i have two cameras, both have exactly the same cloud settings, when i switch between one and the other i get very large differences in the clouds, because i have been playing around with the cloud settings and only one of the cameras is seeming to accept the change. eventhough they both have the same one applied.

    I'm using the standard renderer and using the clouds as the camera effect.
     
  7. protopop

    protopop

    Joined:
    May 19, 2009
    Posts:
    1,379
    I don't know if this is related, but I was selecting the profile I wanted to change in the Project panel, and making changes in the inspector. But this isn't the way to do it because it only accepts changes sometimes when you switch profiles manually. The correct way, at least fro what I've seen, is to load the profile into the component layer. Then click on that layer and the profile details will appear below the layer. It will look just like if you click on a profile in the project panel except there will also be a Save to profile button you can click after you make changes. this solved the problem for me.

    By the way I like to copy the profiles into a custom folder so I don't mess with the originals.
     
  8. whidzee

    whidzee

    Joined:
    Nov 20, 2012
    Posts:
    122
    Hey, I'm not sure what you mean by loading the profile into the component layer.
     
  9. whidzee

    whidzee

    Joined:
    Nov 20, 2012
    Posts:
    122
    @mewlist
    is the cloud system dependant on an FPS lock? my frame rate is 30 on the dot when there are clouds in view. Never more, never less. I am wondering if you maybe lock the FPS to render the clouds. without pretty much anything else in my scene i get a frame rate drop to 30 when i look up to the sky. Any idea what is going on?
     
  10. mewlist

    mewlist

    Joined:
    May 22, 2017
    Posts:
    226
    Massive Clouds does not set or overwrite framerate setting.
    Probably, it is caused by vsync synchronization. If it costs heavy for gpu in 60fps vsync-ed application, framerate are dropped to 30fps next.
    Vsync can be disabled in Unity Quality Setting window. or if you use 2019.x in Editor window, Vsync checkbox is found in Resolution menu of Game view.
     
  11. gamerpc36

    gamerpc36

    Joined:
    Jul 10, 2017
    Posts:
    4
    @mewlist Will there be an HDRP version supporting the newer hdrp versions?
     
  12. ElevenGame

    ElevenGame

    Joined:
    Jun 13, 2016
    Posts:
    32
    @gamerpc36 I think that's exactly the feature mewlist is working on right now. So yes, there will be a Version like that. I know it's doable, because I coded my own solution that works well with the latest hdrp as a custom post process (minus cloud shadows, but i don't need them).
     
    gamerpc36 likes this.
  13. mewlist

    mewlist

    Joined:
    May 22, 2017
    Posts:
    226
    Hello I have plan to release new hdrp feature, after Unity 2019.3.0f1 will be released!
     
    ftejada likes this.
  14. taylank

    taylank

    Joined:
    Nov 3, 2012
    Posts:
    170
    Hi, is it possible to query the cloud coverage of a world space point at runtime? Is it possible paint areas for cloud coverage (e.g. no clouds over this area, heavy clouds over this other area, etc)? Is there online documentation I can take a look at before buying this asset? I just wanna make sure I understand the workflow and the possibilities before I commit.
     
  15. mewlist

    mewlist

    Joined:
    May 22, 2017
    Posts:
    226
    Hi.
    Sorry, It is not able to control density of clouds by world x-z pos.
    And Online Documentation is not available. But I think It is worth prepare them.
    I will work for online document in next version.

    Thanks.
     
    Last edited: Nov 26, 2019
  16. eisen_montalvo

    eisen_montalvo

    Joined:
    Jan 30, 2018
    Posts:
    2
    Hi mewlist,

    Great cloud package. I was able to make the clouds look exactly how I wanted them very quickly.

    But I ran into two issues that I haven't been able to figure out.

    The first one: I have two extra cameras rendering to textures. When using Massive Clouds, the extra cameras aren't rendering correctly. Sometimes I see a faint ghostly image, but most of the time the camera is rendering transparent. When I disable MassiveClouds, the cameras render correctly.

    The second issue: I have a world space UI. No matter what I try, the clouds are always rendered above the UI. I need the UI to be the last layer to render.

    Any help or guidance is appreciated.

    Thank you.
     
  17. mewlist

    mewlist

    Joined:
    May 22, 2017
    Posts:
    226
    Do you use Standard RP ?
    Please try to separate UI camera from main camera and adjust camera depth.

    If you use LWRP or UniversalRP, you need to setup RendererFeature and adjust UI rendering order.
    UI is rendered as Transparent object.
    Changing Render Pass Event to BeforeRenderingTransparents or AfterRenderingSkybox may resolve world UI order problems.

    Thanks.


    upload_2019-12-4_22-47-48.png
     
  18. eisen_montalvo

    eisen_montalvo

    Joined:
    Jan 30, 2018
    Posts:
    2
    Thank you mewlist. I'm using LWRP. I found the Render PassEvent settings a few days ago and was able to switch clouds to render after skybox, which fixed the UI render order as you mention.

    As for the other issue, it was the shader I was using to render the texture.
     
    Last edited: Dec 4, 2019
    mewlist likes this.
  19. taylank

    taylank

    Joined:
    Nov 3, 2012
    Posts:
    170
    @mewlist Any word on Crest integration? I have the same problem of clouds not rendering over the ocean when the camera is above clouds.
     
  20. mewlist

    mewlist

    Joined:
    May 22, 2017
    Posts:
    226
    upload_2020-1-6_22-43-39.png

    Hello. Sorry for forgetting to report.

    Crest Ocean system renders ocean on Transparent pass.
    So please set Camera Event to After Forward Alpha.
    upload_2020-1-6_22-44-56.png

    If you use LWRP(URP)
    Set After "Rendering Transparents" in Renderer Feature Asset.

    upload_2020-1-6_22-49-45.png

    Thanks
     
  21. taylank

    taylank

    Joined:
    Nov 3, 2012
    Posts:
    170
    The problem with that is, while the clouds do render in that mode, they also seem to interfere with Crest's LOD system, such that only the closest distance LOD layer renders and nothing beyond that. As soon as you disable the clouds, the missing LODs pop back into view again.
     
  22. mewlist

    mewlist

    Joined:
    May 22, 2017
    Posts:
    226
    I checked it.

    If use HightFog, the ocean is filled with HeightFog color.
    Height Fog is not working AfterTransparent pass.
    And it is assumed that ocean have flat plane horizontally.
     
  23. taylank

    taylank

    Joined:
    Nov 3, 2012
    Posts:
    170
    Turning off height fog in the cloud profile did not seem to make a change. Was it supposed to?

    EDIT: There appears to be a bug in the material assignment? If I make changes to the profile in the editor, the changes are not reflected in the scene. Only after removing the profile from the MassiveClouds script and reassigning it, the changes take effect.
     
    Last edited: Jan 7, 2020
  24. mewlist

    mewlist

    Joined:
    May 22, 2017
    Posts:
    226
    Oh.. sorry
    MassiveClouds Camera Effect has bug that it is not affect on render pass changing.
    Please disable it and re-enable, then it properly change camera command buffer timing.
     
  25. taylank

    taylank

    Joined:
    Nov 3, 2012
    Posts:
    170
    Thanks @mewlist now I have proper rendering over clouds and the ocean LOD is not affected. One remaining issue is Crest's underwater effect, as MassiveClouds appear to be overriding it. Has anyone had success in getting that to work?
     
  26. niknakgames

    niknakgames

    Joined:
    Aug 7, 2015
    Posts:
    25
    Hey! Gatta say I love this asset!
    Having a small issue though. On my IOS build the sky is MUCH brighter than what I see in the editor / game view of my game. Any suggestions?
     
  27. mewlist

    mewlist

    Joined:
    May 22, 2017
    Posts:
    226
    To achieve this, it is required dynamically render pass control.
    Please try to overwrite Update function in MassiveCloudsCameraEffecct.cs.

    this script is sample of changing Render Pass timing, over sea or under sea.

    Code (CSharp):
    1.         private void Update()
    2.         {
    3.             if (!MassiveClouds.enabled)
    4.             {
    5.                 Clear();
    6.                 return;
    7.             }
    8.            
    9.             if (commandBuffer == null) Create();
    10.  
    11.             const float seaHeight = 10f;
    12.             if (TargetCamera.transform.position.y >= 10)
    13.                 cameraEvent = CameraEvent.AfterForwardAlpha;
    14.             else
    15.                 cameraEvent = CameraEvent.AfterSkybox;
    16.            
    17.  
    18.             if (currentCameraEvent != cameraEvent)
    19.             {
    20.                 Clear();
    21.                 Create();
    22.             }
    23.         }
     
    ProtoPottyGames likes this.
  28. taylank

    taylank

    Joined:
    Nov 3, 2012
    Posts:
    170
    Thanks! One last question: since I need to set the render pass to After Forward Alpha to have proper rendering over the ocean, it is also affecting any particle effects in the scene that have transparent particles. Any ideas on how to sort particle transparency?

    Actually, two questions. Is there any way to detect whether the sun light source is covered by clouds?
     
    Last edited: Jan 11, 2020
  29. mewlist

    mewlist

    Joined:
    May 22, 2017
    Posts:
    226
    I do not recognize that case.
    Can I see how looks that deference ?
     
  30. mewlist

    mewlist

    Joined:
    May 22, 2017
    Posts:
    226
    In UniversalRP, custom pass order is available by ScriptableRendererFeature.
    But, In Legacy RP this way is not allowed.
    To realize it in Legacy RP, particle shader is render as Opaque object with No Z-Writing.
     
  31. taylank

    taylank

    Joined:
    Nov 3, 2012
    Posts:
    170
    Thanks again. I'll give that a try. Could you also answer the second question? Is there a way to detect whether the light source is behind cloud coverage? I want to dim the light and turn-off sun's reflection on water surface when it is behind the clouds.
     
  32. mewlist

    mewlist

    Joined:
    May 22, 2017
    Posts:
    226
    There is no function to detect light source coverage.

    It is very interesting idea to detect it.
     
  33. taylank

    taylank

    Joined:
    Nov 3, 2012
    Posts:
    170
    Let me know if you decide to add it. It'd be very helpful in creating believable post process effect stacks.
     
  34. protopop

    protopop

    Joined:
    May 19, 2009
    Posts:
    1,379
    I have. problem where SOLID and LUCID clouds look very noisy on iOS 13 but only on iPad, so I think hey are not working with iPadOS (iOS 13 iPad).

    If I use SURFACE or AUTHENTIC there is no problem.

    IMG_0109.PNG

    They work on iPad with iOS 10,11,12 and on all versions of iPhone iOS - where they look great:)

    IMG_1096.PNG

    Do you have any idea what the problem might be? If not that is OK but I thought I should check.
     
    mewlist likes this.
  35. mewlist

    mewlist

    Joined:
    May 22, 2017
    Posts:
    226
    Thank you for your report of Bug.
    I do not aware of that case.
    I do not have iPad, so I plan to get iPad.

    And what iPad do you use. (iPad pro or Air or standard / Generation)

    Thanks.
     
  36. jamespaterson

    jamespaterson

    Joined:
    Jun 19, 2018
    Posts:
    239
    Hi! I am really liking MassiveClouds. A quick question if I may please. What is the correct way to script changes to features such as the constant colour for the Fog Color please? Looking at the MassiveClouds monobehaviour I see private variables and "get" but not "set" accessors I think?

    Many thanks in advance for your help!
     
  37. mewlist

    mewlist

    Joined:
    May 22, 2017
    Posts:
    226
    Hello.
    This is Example of change parameter,
    please set parameter entirely to change cloud.

    Code (CSharp):
    1.            var parameter = massiveClouds.Parameters[0];
    2.             parameter.Density = 0.5f;
    3.             massiveClouds.Parameters[0] = parameter;
    In MassiveCloudsScriptableScrollSample.cs, dynamically change parameter demo code is placed.

    Thanks.
     
  38. jamespaterson

    jamespaterson

    Joined:
    Jun 19, 2018
    Posts:
    239
    Hi, thanks for your fast response. How can I change the Constant Fog Colour setting shown below (red circle) through the parameter settings please?

     
  39. mewlist

    mewlist

    Joined:
    May 22, 2017
    Posts:
    226
    Fog Color setting is not in parameter. And it is not able to change from script in current version.
    Would you try to add Setter in MassiveClouds.cs.

    Code (CSharp):
    1.         public Color FogColor
    2.         {
    3.             get
    4.             {
    5.                 switch (fogColorMode)
    6.                 {
    7.                     case ColorMode.FogColor: return RenderSettings.fogColor;
    8.                     case ColorMode.Ambient: return ambient.EquatorColor;
    9.                     case ColorMode.Constant:
    10.                     default: return fogColor;
    11.                 }
    12.             }
    13.             set { fogColor = value; } // add this line
    14.         }
    15.  
    If fog color mode is set to Constant Mode, it can be changed from script.

    Code (CSharp):
    1. massiveClouds.FogColor = Color.red;
    Thanks
     
  40. jamespaterson

    jamespaterson

    Joined:
    Jun 19, 2018
    Posts:
    239
    Hi, thanks again for your response i will make this change.
     
    mewlist likes this.
  41. b1gry4n

    b1gry4n

    Joined:
    Sep 11, 2013
    Posts:
    72
    Is there any way to change a minimum distance required to draw? I would like to have a layer of clouds that are very low resolution very far away that appear to have a lot of detail, when you get too close they dont draw, then have a closer layer of clouds with different settings.

    Layer 0 - Draw from 10000-20000 (very low resolution, low raymarching, look bad up close but good far away)
    Layer 1 - Draw from 1000-5000 (a bit higher resolution, decent raymarch, look ok from medium range)
    Layer 2 - Draw from 50-500 (high resolution, high raymarch, look good close)

    Would something like this be a good way to optimize cloud visuals as well? I would imagine you wouldnt even need to check for raymarch steps if the distance is below minimum. Ideally this setting would work just like "max distance" but opposite, for min distance. It could even be displayed as a slider value in the profiles like the min height/max height slider except min couldnt go below 0 as thats the camera position.

    I understand theres an optimization setting that kind of does this, but it doesnt give control over how the clouds look at the distances. I would like to change the way the clouds are lit, even their shape, based on the minimum/maximum distances by swapping between layers. I guess its a different way of using the layers. Standard way to use layers is to literally layer clouds over eachother. I want to create somewhat of a LOD system with the layers by having the layer that draws close to the camera have the highest settings while the layer that draws furthest from the camera with low settings.
     
    Last edited: Feb 2, 2020
  42. b1gry4n

    b1gry4n

    Joined:
    Sep 11, 2013
    Posts:
    72
    Im not entirely sure if this would be the correct way to do it, I am not very talented with shaders, but I am getting the results I expect. I just dont know if this is actually optimizing anything.

    I added a draw distance to the profiles:
    upload_2020-2-1_19-18-13.png

    and inside the
     inline Ray CalculateHorizontalRayRange
    I changed these lines of code.

    Code (CSharp):
    1.     float  bottomDist       = max(_MinDistance, dbottom / horizontalFactor);
    2.     float  topDist          = max(_MinDistance, dtop / horizontalFactor);
    I also changed this line
    if (ray.to <= _MinDistance) return screenCol;
    in
    MassiveClouds.cginc
    and
    MassiveCloudsMaterial.cginc


    Obviously Ive added the
    _MinDistance
    to the shaders and they are being updated.

    upload_2020-2-1_19-31-48.png

    Since the draw order matters and I am no longer dealing with height based clouds but distanced based I needed to add this to the MassiveClouds script under Update

    Code (CSharp):
    1.             //sortedIndex.Sort(distanceComparer);
    2.             CustomDrawOrder(ref sortedIndex);
    And the method used sorts the profiles starting with the furthest distance and then to the closest.
    F = far, M = medium, MS = medium short, S = short
    upload_2020-2-1_21-16-47.png
    Code (CSharp):
    1.         public void CustomDrawOrder(ref List<int> sort)
    2.         {
    3.             sort = new List<int>();
    4.             for (int i = 0; i < profiles.Count; i++)
    5.             {
    6.                 sort.Add(i);
    7.             }
    8.         }
    If you use the same noise generation and just tweak visual colors/lighting, you can fly to the distant clouds and the "LOD" system works well.

    And here are the results. I am using drastically different raymarching steps between the layers. The far layer has only 10 with a optimization value of 1. The medium and medium short have 25 and 35 raymarching and a 0.8 optimization, The close has 40 raymarch and a 0.3 optimization

    upload_2020-2-1_21-32-0.png

    The performance seems ok, I could probably tweak this more. Unless there is some extra step I need to do in the shader, I am skipping huge chunks of raymarching steps by spacing out the lods. Keep in mind these clouds are being generated in a 20k+ thickness (900m - 22000m)

    Far: min = 10000, max = 20000
    Med: min = 3000, max = 5000
    MedS: min = 400, max = 1000
    Short: min = 100, max = 300

    Maybe there is a way to stagger the resolution scale? The far away clouds could be extremely low resolution which would help optimize. I am going to experiment with trying to get different resolutions per profile.
     
    Last edited: Feb 2, 2020
  43. b1gry4n

    b1gry4n

    Joined:
    Sep 11, 2013
    Posts:
    72
    I gave the profiles a render resolution slider
    upload_2020-2-1_23-34-42.png

    When
    Build()
    is called in
    MassiveClouds
    I update a float array that stores these render resolutions
    Code (CSharp):
    1.  myresolutions = new float[parameters.Count];
    2.             for (var i = 0; i < profiles.Count; i++)
    3.             {
    4.                 myresolutions[i] = parameters[i].RenderResolution;
    When the render textures are created in the
    BuildCommandBuffer
    I create my own.
    Code (CSharp):
    1.  var myrendertextures = new CustomRenderTextures(TargetCamera, commandBuffer, myresolutions);
    2.             for (var i = 0; i < profiles.Count; i++)
    3.             {
    4.                 commandBuffer.SetGlobalTexture("_ScreenTexture", renderTextures.From);
    5.                 var index = sortedIndex[i];
    6.                 if (profiles[index] == null) continue;
    7.                 var m = mixers[index];
    8.                 var material = m.Material.CloudMaterial;
    9.                 commandBuffer.Blit(renderTextures.From, myrendertextures.Next(i), material);
    10.                 commandBuffer.Blit(myrendertextures.Next(i), renderTextures.To, m.Material.MixMaterial);
    11.                 renderTextures.Flip();
    12.             }
    I created my own struct to handle this
    Code (CSharp):
    1.  public struct CustomRenderTextures
    2.     {
    3.         readonly int[] sortedIDs;
    4.         private readonly RenderTextureFormat format;
    5.         public CustomRenderTextures(
    6.             Camera targetCamera,
    7.             CommandBuffer commandBuffer,
    8.             float[] resolutions)
    9.         {
    10.             int idHeader = 1+2+3+resolutions.Length+4+5+6; // probably unnecessary...yolo
    11.             sortedIDs = new int[resolutions.Length];
    12.             for (int i = 0; i < resolutions.Length; i++)
    13.             {
    14.                 sortedIDs[i] = idHeader + i;
    15.             }
    16.  
    17.             format = targetCamera.allowHDR
    18.                 ? RenderTextureFormat.DefaultHDR
    19.                 : RenderTextureFormat.Default;
    20.             CreateRenderTextures(targetCamera, commandBuffer, resolutions);
    21.         }
    22.         private void CreateRenderTextures(
    23.            Camera targetCamera,
    24.            CommandBuffer commandBuffer,
    25.            float[] resolution
    26.           )
    27.         {
    28.             for (int i = 0; i < sortedIDs.Length; i++)
    29.             {
    30.                 commandBuffer.GetTemporaryRT(sortedIDs[i],
    31.               Mathf.RoundToInt(targetCamera.pixelWidth * resolution[i]),
    32.               Mathf.RoundToInt(targetCamera.pixelHeight * resolution[i]),
    33.               0, FilterMode.Trilinear, format);
    34.             }
    35.         }
    36.         public void Release(CommandBuffer commandBuffer)
    37.         {
    38.             for (int i = 0; i < sortedIDs.Length; i++)
    39.             {
    40.                 commandBuffer.ReleaseTemporaryRT(sortedIDs[i]);
    41.             }
    42.         }
    43.         public int Next(int i)
    44.         {
    45.             return sortedIDs[i];
    46.         }
    47.     }
    The result is 150fps in these clouds rendering at 22000m. I have not spent a lot of time tweaking the values and making the clouds as good as they can look, these are the clouds I was working with when I set this up. I am sure I can make it look much better in time.
    upload_2020-2-1_23-46-10.png

    upload_2020-2-1_23-48-46.png

    This of course does not take into account shadows or any of the other features of Massive clouds. They could probably be done in a similar way. Hopefully @mewlist integrates this somehow :)
     
    Last edited: Feb 2, 2020
  44. b1gry4n

    b1gry4n

    Joined:
    Sep 11, 2013
    Posts:
    72
    One last update, sorry for the spam. Because the clouds are being rendered at a lower resolution, this allows us to bump up the raymarching steps and lighting quality. On lower resolution textures the raymarching effect is increased. This gives the far away layer, rendering at 0.2 resolution, a much more full look to the clouds. Here are a few more screenshots after I tweaked with some of the settings. Fps is the same. I have also applied the post processing blur at a 2000m distance to help blend the lower resolution popping. I have not tried to "authentic" mode yet, but I want to try it next. These clouds are on surface.

    Since all clouds are being clipped by a mindistance, maybe a way you could show closer clouds is with a particle effect and a shader that renders after the clouds.
    upload_2020-2-2_1-13-36.png
    In this screenshot you can really see the far and medium layer clouds at work
    upload_2020-2-2_1-15-1.png
    I think the coolest part of this whole thing is that you can fly to and inside any of the clouds you see. The very full clouds will surround you to the point of not being able to see inside them, but because of the minimum draw distance you can still see your character
    upload_2020-2-2_1-18-4.png
    I have a feeling there is more I can do to get more detail out of the clouds and keep performance higher. That plus extra effects like particles and some distance scattering fog overlayed on the clouds could really make it pop more. Maybe theres even a way to render the godrays behind one of these layers. Theres quite a few things I want to try, but today was pretty successful
     
    Last edited: Feb 2, 2020
  45. TokyoWarfareProject

    TokyoWarfareProject

    Joined:
    Jun 20, 2018
    Posts:
    623
    Hello,

    Asset is looking epic, its been like 15 mins since I brought for testing but I can´t find parameter to control the ground fog

    upload_2020-2-2_21-43-5.png

    height fog seems not to be the case or if it is then may be there is bug

    edit. after duplicating the asset for the cloud settings, changes took effect and now displays ok, strange, I'm using 2019.3 f3I shall upgrado to final release may be

    edit2 I confirm, that for changes to be take effect I need to duplicate and assign the .asset

    refresh or reimport does not work. very rare

    edit3: for the profile to be updated I need to asign another profile, edit the one I need to modify and reasign it to the camera :\

    edit4 I'm using Standard RP and i've also tested to add is as post FX in the volume, still not realtime parameter update from .asset
     
    Last edited: Feb 2, 2020
  46. b1gry4n

    b1gry4n

    Joined:
    Sep 11, 2013
    Posts:
    72
    Theres quite a few things I discovered today that I did wrong. Instead of posting all the changes, mew if youre interested, send me a message.
     
  47. mewlist

    mewlist

    Joined:
    May 22, 2017
    Posts:
    226
    I try to reproduce it case. On Unity on 2019.3.0f6

    But I can not reproduce it.

    Do you mean "Height Fog Contoller" is not working ?
    upload_2020-2-3_22-42-23.png

    Please would you describe steps to reproduce.

    Thanks.
     
    Last edited: Feb 3, 2020
  48. mewlist

    mewlist

    Joined:
    May 22, 2017
    Posts:
    226
    Setting resolution separately is amazing good for look and performance.
    Awesome work.
     
  49. jamespaterson

    jamespaterson

    Joined:
    Jun 19, 2018
    Posts:
    239
    The work from b1gry4n looks really useful. Is there any chance this might make it into a future release of massiveclouds please?
     
    r3ndesigner likes this.
  50. b1gry4n

    b1gry4n

    Joined:
    Sep 11, 2013
    Posts:
    72
    I switched from trying to adjust the horizontal cloud style, instead, I modified the
    CalculateSphericalRayRange 
    code to account for a defined region, same as horizontal does, and adjusted some of the shader code to allow horizontal calculation even if its turned off in the profile. This gives the ability to add cloud layers via height, ability to set a min/max distance to the clouds, and gives the clouds a much cleaner look with less artifacts at the horizon.

    upload_2020-2-3_17-57-59.png

    Tall clouds viewed from above with a minimum and maximum distance from the camera. Notice the "ring" shape

    upload_2020-2-3_18-0-47.png

    A ring of clouds surrounding the camera with a minimum height so they dont clip the ocean and minimum draw distance

    upload_2020-2-3_18-6-22.png
    An extreme example showing you still have control over the top/bottom smoothness/shape
    upload_2020-2-3_18-10-59.png
     
    Last edited: Feb 4, 2020
unityunity