Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. We have updated the language to the Editor Terms based on feedback from our employees and community. Learn more.
    Dismiss Notice
  3. Join us on November 16th, 2023, between 1 pm and 9 pm CET for Ask the Experts Online on Discord and on Unity Discussions.
    Dismiss Notice

ULTIMATE Fog of War

Discussion in 'Assets and Asset Store' started by MaxProude, Dec 5, 2016.

  1. MaxProude

    MaxProude

    Joined:
    Feb 24, 2013
    Posts:
    175
    ULTIMATE Fog of War 1.1 Released on the Asset Store

    LARGE_IMAGE.png

    Watch the Trailer:


    This Fog of War Solution is easy to use, but flexible and powerful. You can use it with Unity Terrain, a custom Terrain engine or even Tile based levels. It is fast, reliable and supports every platform.

    ULTIMATE Fog of War is a grid based editor extension, that supports a full 360° Field of View for Revealers. Vision can be blocked by a static level, Terrain height or dynamicly by Objects on the Map.
    The Level is stored in a Resistence Map and can be easily modified by artists and programmers alike.

    This tool is entirely threaded and supports hundreds of revealers, even on mobile.

    Screenshot_4.png

    ULTIMATE Fog of War is shader based and comes with all necessary Shaders to make a complete game work, including Terrain Shaders (Diffuse, Standard, Specular), Detail Shaders, Water Shaders, Tree Creator +Speed Tree Shaders and many more. This way, the Fog of War comes very cheaply and does NOT add a single draw call. But of course, other methods like projectors and plane overlay can be used too.
    Screenshot_1.png

    This Fog of War Solution is a perfect choice for beginners and professionals, prototypes and commercial products. I will add more and more features over time! If you have suggestions, you can always contact me and request a feature: support@maxproude.com

    At the moment, this tool is available for 60$ on the Asset Store and available for purchase HERE.
    Also check out the DEMO!



    I'd love to know what you think. Cheers!

    Max

    UPDATE 1.2 (Pending Review)

    The new Update 1.2 brings a ton of new features that make editing simpler and extend the functionality of the Fog.
    -You can now create vertical Games using Canvas and Sprites. (Shaders included)
    -It is now possible to create Vision Modifiers (aka tall grass like in Dota or LoL)
    Screenshot_5.png
    -The Resistance Map can now be edited in the Editor (Hard blocker, Height and Modifiers)
    Screenshot_7.png
    -In the Scene view, you can now see all necessary information.
    -New Particle Effect Shaders (Vertical & Horizontal) are included.

    UPDATE 1.1 (Released)

    Update 1.1 has been released.
    -Multiple simultaneous factions. It is now possible to test what Unit is revealed by what faction.
    -Save the current state of the Fog
    -Additional performance optimizations and bug fixes

    UPDATE 1.2 (Release soon)
    -League of Legend style grass/ Field of View modifieres.
    -Vertical Support including a complete set of Sprite Shaders and Templates (XY instead of XZ axis)
    -Bug fixes
     
    Last edited: Feb 18, 2017
    theANMATOR2b likes this.
  2. DawidMoza

    DawidMoza

    Joined:
    Nov 24, 2016
    Posts:
    216
    Reliable price for a great product, and I heard that exactly it is the key to success ;)
     
    MaxProude likes this.
  3. b4c5p4c3

    b4c5p4c3

    Joined:
    Jan 4, 2013
    Posts:
    537
    Looks very cool
     
    MaxProude likes this.
  4. Dee_Lucky

    Dee_Lucky

    Joined:
    Jun 26, 2015
    Posts:
    53
    Can you add some video tutorials how to add simple walls that block visions? Does the map has to have terrain to use this asset? Or can it be done on simple planes?
     
  5. MaxProude

    MaxProude

    Joined:
    Feb 24, 2013
    Posts:
    175
    Hey Dee_Lucky,
    There are multiple ways to set up walls with blockers. The easiest is to paint it into the R channel of the resistance map. You can use any photo editing tool like photoshop. There's also a tool in the fog of war manager to change if a patching blocking or not. Simply click and it switches. Another way is to use height blockers, which use the green channel in the resistance map.

    You also don't need to use a terrain to make it work. If you create a plane, simply pick a shader from the UFoW folder and you are good to go. The fog will always stay in the frustum, though! If you need another Shader, there's a guide on how to convert your shader to work with UFoW.
     
  6. Dee_Lucky

    Dee_Lucky

    Joined:
    Jun 26, 2015
    Posts:
    53
    Thanks for quick answer. It helped me a lot!
    I've got one more question - is it possible to change your Fog of War shaders so the parts which weren't yet discovered to be completely black?
     
  7. andympage101

    andympage101

    Joined:
    Jun 7, 2013
    Posts:
    12
    This is working really well, I have found a way to make a few modifications to create a height-map for my dungeon which is generated at runtime. I am having a few issues with the revealer, it seems that it can overlap a hard blocked and high height fog cell by a small amount which I would prefer to remove since it means the players can see slightly over the walls. Any ideas how to do this?
    fog.jpg

    Thanks
     
  8. Dee_Lucky

    Dee_Lucky

    Joined:
    Jun 26, 2015
    Posts:
    53
    About my question with completely black undiscovered places - I've managed to write down a shader which is on a black plane over the map. The efffect:
    https://gyazo.com/28d449118c02ddadbd3187053d46a075

    and the shader:
    Code (csharp):
    1.  
    2.  
    3. // Upgrade NOTE: replaced '_Object2World' with 'unity_ObjectToWorld'
    4.  
    5. Shader "IceCodeGames/FogOfWarCompletelyBlackShader" {
    6.     Properties
    7.     {
    8.         _Color("Color", Color) = (1,1,1,1)
    9.         _MainTex("Base (RGB)", 2D) = "white" {}
    10.     _TintColor("Tint Color", Color) = (0.5,0.5,0.5,0.5)
    11.  
    12.     _FogOfWarFade("Fog of War reveal", Range(0,1)) = 1
    13.     }
    14.     SubShader
    15.     {
    16.         Tags
    17.     {
    18.         "Queue" = "Transparent"
    19.         "IgnoreProjector" = "True"
    20.         "RenderType" = "Transparent"
    21.         "PreviewType" = "Plane"
    22.         "CanUseSpriteAtlas" = "True"
    23.     }
    24.         Cull Off
    25.         Lighting Off
    26.         ZWrite Off
    27.         ZTest On
    28.         Blend SrcAlpha OneMinusSrcAlpha
    29.         Pass
    30.     {
    31.         CGPROGRAM
    32. #pragma vertex vert
    33. #pragma fragment frag
    34. #pragma multi_compile_particles
    35. #pragma multi_compile_fog
    36.  
    37. #include "UnityCG.cginc"
    38. #include "FogOfWarMath.cginc"
    39.  
    40.     struct appdata_t {
    41.         float4 vertex : POSITION;
    42.         fixed4 color : COLOR;
    43.         float2 texcoord : TEXCOORD0;
    44.     };
    45.     struct v2f {
    46.         float4 vertex : SV_POSITION;
    47.         fixed4 color : COLOR;
    48.         float2 texcoord : TEXCOORD0;
    49.         float3 worldPos : TEXCOORD1;//FOG OF WAR
    50.         UNITY_FOG_COORDS(2)
    51.     };
    52.     uniform sampler2D _FogOfWar;
    53.     uniform float _LevelWidth;
    54.     uniform float _LevelHeight;
    55.     float _Scale;
    56.     float4 _Origin;
    57.     float4 _MainTex_ST;
    58.  
    59.     sampler2D _MainTex;
    60.     fixed4 _TintColor;
    61.  
    62.     v2f vert(appdata_t v)
    63.     {
    64.         v2f o;
    65.         o.vertex = UnityObjectToClipPos(v.vertex);
    66.         o.worldPos = mul(unity_ObjectToWorld, v.vertex);//FOG OF WAR
    67.         //o.color = v.color;
    68.         //o.texcoord = TRANSFORM_TEX(v.texcoord, _MainTex);
    69.         //UNITY_TRANSFER_FOG(o, o.vertex);
    70.         return o;
    71.     }
    72.  
    73.     sampler2D_float _CameraDepthTexture;
    74.     float _InvFade;
    75.  
    76.     fixed4 frag(v2f i) : SV_Target
    77.     {
    78.         //FOG OF WAR
    79.         //float2 UV = float2(Remap(i.worldPos.x, _Origin.x, _Origin.x + _LevelWidth * _Scale, 0, 1), Remap(i.worldPos.z, _Origin.z, _Origin.z + _LevelHeight * _Scale, 0, 1));
    80.        
    81.         float2 UV = float2(Remap(i.worldPos.x, _Origin.x + _LevelWidth * _Scale, _Origin.x, 1, 0), Remap(i.worldPos.z, _Origin.z + _LevelHeight * _Scale, _Origin.z, 1, 0));
    82.  
    83.         half4 Fog = tex2D(_FogOfWar, UV);
    84.         fixed4 col = 2.0f * i.color * _TintColor * tex2D(_MainTex, i.texcoord);
    85.         if (Fog.r < 0.1)
    86.         {
    87.             //if (Fog.r > 0.3)
    88.             //    col.a = 1;
    89.             if(Fog.g > 0.9)
    90.                 col.a = 0.2;
    91.  
    92.             return col;
    93.         }
    94.         UNITY_APPLY_FOG_COLOR(i.fogCoord, col, fixed4(0, 0, 0, 0)); // fog towards black due to our blend mode
    95.  
    96.         //return col * Fog.g;
    97.         //if (Fog.g < 1)
    98.         //{
    99.         //    return col * Fog.g;
    100.  
    101.         //}
    102.         //else
    103.         {
    104.             col.a = 0.1;
    105.             return col * Fog.g;
    106.  
    107.  
    108.         }
    109.     }
    110.  
    111.  
    112.         ENDCG
    113.     }
    114.     }
    115. }
    116.  
    I hope it helps anyone!
     
  9. andympage101

    andympage101

    Joined:
    Jun 7, 2013
    Posts:
    12
    I thought the plugin already did this? There are 3 sliders on the fog manager, the top is the opacity for discovered areas with a revealer present in the location, the middle for discovered areas when your revealer has left the location and the last slider controls the opacity for undiscovered areas, changing this to 0 made any unexplored areas on my map completely black. Might save you using a shader on a plane if this works :)
     
  10. Dee_Lucky

    Dee_Lucky

    Joined:
    Jun 26, 2015
    Posts:
    53
    Hehe, unfortunetely, it did not work for me :p
     
  11. Dee_Lucky

    Dee_Lucky

    Joined:
    Jun 26, 2015
    Posts:
    53
    Is there any way to speed up calculating the fog of war without decreasing the size of it?
     
  12. Dee_Lucky

    Dee_Lucky

    Joined:
    Jun 26, 2015
    Posts:
    53
    Do you know, why the FoW has small periods of higher computation time?


    Also, I deep-profiled your scripts, and you use Mathf.FloorToInt on integers, which makes absolutely nothing and it is slows down the whole algorithm by a lot.
    Also changing Mathf.abs to lambda expressions resulted in getting a little better performance
     
    Last edited: Aug 16, 2017
  13. Dee_Lucky

    Dee_Lucky

    Joined:
    Jun 26, 2015
    Posts:
    53
    This asset stopped working in current version - 2017.2.
     
  14. MaxProude

    MaxProude

    Joined:
    Feb 24, 2013
    Posts:
    175
    Hey Dee_Lucky,

    Im going to release an update soon. Do you have any error messages or compiler errors? What happens exactly?
    I'll try to get it fixed asap.

    I didn't see your message immediately. Sorry about that. It seems I dont always get a message if someone psts something here.
    You can always get in touch with me through support@maxproude.com

    Cheers,

    Max
     
  15. gaurav

    gaurav

    Joined:
    Aug 29, 2013
    Posts:
    1
    Hi there, really awesome tool you built. Any ETA for the next update ?
     
    blitzvb likes this.
  16. MaxProude

    MaxProude

    Joined:
    Feb 24, 2013
    Posts:
    175
    Hello gaurav, Thank you very much.
    The next update has been submitted and is being reviewed at this point by Unity. Cheers,

    Max
     
    movra likes this.
  17. EnigmaJJ

    EnigmaJJ

    Joined:
    Apr 2, 2015
    Posts:
    1
    hi there, is there any way to support infinite terrain? :)
     
  18. MaxProude

    MaxProude

    Joined:
    Feb 24, 2013
    Posts:
    175
    Hey EnigmaJJ,

    unfortunately I dont know this tool so I have to assume it will not work out of the box. You'll have to convert the shaders in order to make it work.

    Cheers,

    Max
     
  19. Westy661

    Westy661

    Joined:
    Sep 13, 2015
    Posts:
    14
    Hi, im randomly getting nullpointers, both in the tutorial scene, and my own enviroment.

    FogOfWar.Factions[f].FogTexture.SetPixels(FogOfWar.Factions[f].FogOfWarMapData);

    Fogtexture is null, but it randomly fixes itself for a period of time, then starts throwing nulls again. Any ideas?

    Thank sin advance,
    Peter
     
  20. MaxProude

    MaxProude

    Joined:
    Feb 24, 2013
    Posts:
    175
    Hey Peter,
    did you just recently import the project? Sometimes unity does not import everything correctly or something goes wrong when importing. If so, try to reimport the folder by right-clicking on the folder and select reimport. If that does not fix it, can you tell me something about what you have done prior to this? Which Unity version are you using?
     
  21. Westy661

    Westy661

    Joined:
    Sep 13, 2015
    Posts:
    14
    Thank you for the fast response!
    Im using 2017.4.01f. After importing the package i got several error messages, because the player script the project uses for its demo is conflicting with the devdog demo player script (im using inventory pro and devdog general). I added a namespace to it, but i dont think that should be a problem.

    As i said im getting a nullpointer exception at
    "FogOfWar.Factions[f].FogTexture.SetPixels(FogOfWar.Factions[f].FogOfWarMapData);" every frame. I havent start to investigate yet, but im guessing FogTexture is missing from the current faction.

    I also tried the module with a completly new project, and i did not experience the problem there. Maybe there are multiple assets conflicting?

    As far as i can see, in FogOfWar.InitializeFogOfWar we are already passing empty Factions.
     
    Last edited: Mar 27, 2018
  22. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    592
    Hi, can I use this asset without changing the shader on my mesh renderers? I don't need the feature to cast light in a direction to determine what is visible and what is not visible. I need just a circle/sphere based revealer. I may adapt my own shader later, but that has very low priority.

    Can I configure UFoW in a simple way, or is it necessary to adapt the shader?
     
  23. MaxProude

    MaxProude

    Joined:
    Feb 24, 2013
    Posts:
    175
    Hey mkgame,

    UFoW only is visible with a shader that samples the fog map and multiplies the result with your output Color. It's very simple and only requires a couple of lines of code. You can take a look at the documentation (link on the store front) to see how it's done. I can help you as well if you share the shader with me.
    Support@maxproude.com

    So you can use your own shader and implement UFoW or use an existing one.

    Cheers,

    Max
     
  24. MKrohn

    MKrohn

    Joined:
    Apr 5, 2018
    Posts:
    23
    Hi MaxProud,

    is it thinkable to perhaps add support of Unitys new Lightweight Render Pipeline (LWRP) to the asset? Right now it does not work, since LWRP uses a different set and design of single pass shaders.
    Also, it would be so cool to have a custom node in Unitys new Shader Graph editor, that automatically adds the fog-of-war-related code to any shader created using Shader Graph.
     
  25. MaxProude

    MaxProude

    Joined:
    Feb 24, 2013
    Posts:
    175
    Hey MKrohn,

    It is absolutely possible to do that but it's quite some work ;) I wanted to to add some lightweight shaders as soon as the new terrain is available. Shouldn't be too long apparently. I also have to dig some more into the new HDR and LDR pipelines to get everything right.
    I'm currently working on another asset but I have this on my to-do list. What shader are you using? Some shaders should definitely work.
     
  26. MKrohn

    MKrohn

    Joined:
    Apr 5, 2018
    Posts:
    23
    Hi Max,

    thank you for your fast response and your good intentions to further develop and update UFoW :) . In our case, we decided against using LWRP, for now. But it would be really cool if LWRP and UFoW would get along together in the future.
     
  27. MaxProude

    MaxProude

    Joined:
    Feb 24, 2013
    Posts:
    175
    I'll definitely update it, but since the store is still in development and changing constantly, I would have to edit the shaders permanently. I'll let it settle a little bit. If you need specific shaders I can help you convert them of course.
     
  28. The_BenEvans

    The_BenEvans

    Joined:
    Jul 31, 2012
    Posts:
    138
    I was thinking of changing over to this system, but the top review on the Asset Store page says it's not working currently in 2018.x.

    Is that true / is there an update in the works for 2018.3 specifically?

    Thanks
     
    MaxProude likes this.
  29. MaxProude

    MaxProude

    Joined:
    Feb 24, 2013
    Posts:
    175
    Hey, The_BenEvans,

    I just saw the review :( That guy is simply wrong; I have it open right now (2018.3.0b6). I told him to re-import the folder because there are sometimes errors after the first import from the asset store. (I dont know why).
    The problem is the new SRP. It introduces a bunch of new Shaders that do not work if the settings are not set up correctly. e.g: The standard Shaders don't work in the Lightweight pipeline. That being said, the core of the Asset, which is the CPU based calculation of the Fog does work. I will definitely update the Shaders, after 2018.3 is out of beta + a couple of days to do so. The Asset is not abandoned and I will keep updating it in the future.

    If you still have trouble with the Asset, simply send me an email to support@maxproude.com or leave a comment in this forum. I'll answer it as soon as possible.
     
  30. The_BenEvans

    The_BenEvans

    Joined:
    Jul 31, 2012
    Posts:
    138
    @MaxProude thanks for the lightning reply!

    Glad to see it's not abandoned, I'll let you know if I run into any issues.
     
    MaxProude likes this.
  31. digiross

    digiross

    Joined:
    Jun 29, 2012
    Posts:
    323
    I've had this bookmarked for awhile and saw the same review as the previous poster. Glad to see a dev reply, I will add it to my next buy order. :c)
     
    Last edited: Nov 28, 2018
    MaxProude likes this.
  32. MaxProude

    MaxProude

    Joined:
    Feb 24, 2013
    Posts:
    175
    Thank you! Your support is deeply appreciated!
     
  33. The_BenEvans

    The_BenEvans

    Joined:
    Jul 31, 2012
    Posts:
    138
    Having a great time with it so far, no functionality issues (possibly a bit more in the way of documentation/tooltips wouldn't hurt).

    Is there any in-built way of having an area be revealed (preferably using something like adjustable bounds)? For example, if I want the player to see the zone they have to capture.
     
  34. MaxProude

    MaxProude

    Joined:
    Feb 24, 2013
    Posts:
    175
    Good to hear you like it. If I can find the time to do so, I'll make a tutorial to explain the inner workings
    and best practices. If you have questions, obviously you can just talk to me as well.

    If you want to reveal an area, you can simply use an invisible Revealer. Specific shapes are currently not supported. Do you have an example of a game for me? I'm sure I can implement it in the next update.
     
  35. The_BenEvans

    The_BenEvans

    Joined:
    Jul 31, 2012
    Posts:
    138
    I thought they had done it in "The Culling" in WC3 (turns out it was just the houses that were constantly visible). But the idea is that the city would be marked as "Explored"/"Never Fogged" with rectangles or volumes placed by a designer.

    It's not a massive deal if it's going to be a tonne of work, so don't worry about it just for me, the solution you gave above should work just fine :)

    upload_2018-12-4_15-51-41.png
     
  36. MaxProude

    MaxProude

    Joined:
    Feb 24, 2013
    Posts:
    175
    I'll keep it on a list to define permanently revealed patches anyways. For the next update :)
     
  37. The_BenEvans

    The_BenEvans

    Joined:
    Jul 31, 2012
    Posts:
    138
    Also is there an easy way of disabling the Fog Of War and having the entire map fully revealed always?

    For example, if the players decide to disable FoW in the game settings before starting a game
     
  38. MaxProude

    MaxProude

    Joined:
    Feb 24, 2013
    Posts:
    175
    At the moment there is no dedicated feature like this. It's relatively easy to implement but I never thought someone would need it. For now, would it be ok to use a revealer that simply has a very large field of view? I add this to the scope of the next update.
     
  39. The_BenEvans

    The_BenEvans

    Joined:
    Jul 31, 2012
    Posts:
    138
    I luckily saw your example of creating the Fog Of War manager at run-time, which gave me the idea to just check the if the player-setting was on/off during an Awake function on Scene Load, and then find and disable the Fog Of War Manager accordingly before it initializes itself.

    Seems to work well!
     
    MaxProude likes this.
  40. Eck0

    Eck0

    Joined:
    Jun 6, 2017
    Posts:
    48
    How can I show some revealrer of one color and others of other color?
     
  41. DJ_Design

    DJ_Design

    Joined:
    Mar 14, 2013
    Posts:
    124
    Hello! We are using a custom material for our terrain (microsplat), would it still be possible to utilize the fog of war? One idea was to duplicate the terrain and use it with the "only fog of war" shader but that doesn't fit well and I feel it would be fairly costly on performance?
     
    Last edited: Jan 31, 2022
  42. MaxProude

    MaxProude

    Joined:
    Feb 24, 2013
    Posts:
    175
    Hey DJ_Design,
    the part where the fog map is generated is usable on every platform and SRP. The part that displays it however is so different for every platform and SRP, that I cant include a solution that works for everyone, especially people also want to use 3rd party assets. That being said, there is a conversion guide for.shaders that is super simple and guides you step by step on how to add this function to any system you like. The only fog shader would work, but since it is a projector I would not recommend using it other than prototyping, because it is not cheap. Instead, add the UFoW fog lookup code sniper into your shader and have it at almost no cost. If you need help converting the shader, you can ask me here or send an email to m4xproud@gmail.com.
     
  43. tolgakaranlik

    tolgakaranlik

    Joined:
    Oct 8, 2020
    Posts:
    7
    Hey Max, it seems that FoW is deprecated. Did you abandon the project? If you did, I am terribly sorry because that was absolutely the best FoW component in the asset store...
     
  44. MaxProude

    MaxProude

    Joined:
    Feb 24, 2013
    Posts:
    175
    Thank you very much, but it turned into a lot of work that I couldn't really keep up with it. Unity is progressing too fast for me and small changes in API or workflow result in having to constantly update. But maybe I'll put it on GitHub for free. I'll post here once I've come to a conclusion.
     
  45. Eck0

    Eck0

    Joined:
    Jun 6, 2017
    Posts:
    48
    Hello, I wanted to thank you enormously for the work of Fog Ultimate, I am writing to you in case you could guide me on how to adapt the shaders to the Universal Render Pipeline system since they are currently not compatible, would there be any possibility? thank you
     
  46. MaxProude

    MaxProude

    Joined:
    Feb 24, 2013
    Posts:
    175
    @Eck0, I've converted shaders many times as Unity keeps changing them. There is a guide in the doc on how to convert a shader. For the terrain shaders, it's more complicated as it is also different in each pipeline. The last version I've created can be downloaded here:

    URP: https://www.dropbox.com/s/s606dywpygwekhm/URPTerrainShader.zip?dl=0
    HDRP: https://www.dropbox.com/s/jiw42sbeqps4cpb/FogOfWarHDRPTerrainShader.zip?dl=0
    Built-in: Included in package

    And finally here's an image on what it should look like in shader graph:
    FogOfWarShader.png

    I hope this helps.
     
  47. Eck0

    Eck0

    Joined:
    Jun 6, 2017
    Posts:
    48

    Thank you very much for the shaders, I have downloaded the URP package and when I put them in the Shaders folder I get these errors:
    upload_2023-4-17_12-2-17.png

    upload_2023-4-17_1-40-24.png

    I have version 1.6, maybe that's the problem, maybe fogofwarmath is different in newer version. Is there a way to download the latest version?

    I managed to fix most of the bugs by changing the variables from type fixed4 to float4 in fogofwarmath.

    Now I only have errors in the WavingGrass and WavingGrassBillboard shaders:
    upload_2023-4-17_12-19-29.png


    I also wanted to ask you if you have all the shaders that existed passed to URP:
    upload_2023-4-17_12-20-39.png


    In the vast majority of my materials I used the UFoW/Standart shader.
    Could you upload this shader adapted to URP? I would really appreciate it

    I was looking for the guide but I couldn't find it

    I made a shader graph based on the image you uploaded thinking that it would serve as a substitute for UFoW/Standart but I'm not too good at shaders and I probably lacked assigning the input variables and so on:
    upload_2023-4-17_17-34-16.png
     
    Last edited: Apr 20, 2023
  48. tolgakaranlik

    tolgakaranlik

    Joined:
    Oct 8, 2020
    Posts:
    7
    Oh I am very sorry to hear that... I am lucky that I had it before it disappeared from that asset store.