Search Unity

Time of Day - Dynamic Sky Dome

Discussion in 'Assets and Asset Store' started by andererandre, Mar 4, 2013.

  1. schipman

    schipman

    Joined:
    Jan 22, 2010
    Posts:
    45
    Is there any way to get the unity billboard trees to play nicely with the atmospheric scattering? I've tried a number of different solutions around the forums and none seem to work. I know that the billboard trees are pretty janky but I am not a shader guy and I'm just looking for a simple solution. I've spent alot of money on unity trees from the asset store and I'm not looking to have to switch to Speedtree. Here's a test scene I whipped up to show the problem.

    Thanks for the help.
     

    Attached Files:

  2. KevRR

    KevRR

    Joined:
    May 7, 2015
    Posts:
    1
    Is there any way to increase the size of the moon?
     
  3. andererandre

    andererandre

    Joined:
    Dec 17, 2010
    Posts:
    683
    There's a new update in the pipeline, more info when it's done.

    Are you using a custom cloud texture? In that case you have to make it fill the entire range from black to white.
     
  4. andererandre

    andererandre

    Joined:
    Dec 17, 2010
    Posts:
    683
    You have to either make them write to the depth buffer (this is what the SpeedTree shaders do) or write alpha values to the color buffer (remove ColorMask RGB from the tree billboard shader), for example like this:

    Code (csharp):
    1. Shader "Hidden/TerrainEngine/BillboardTree" {
    2.     Properties {
    3.         _MainTex ("Base (RGB) Alpha (A)", 2D) = "white" {}
    4.     }
    5.    
    6.     SubShader {
    7.         Tags { "Queue" = "Transparent-100" "IgnoreProjector"="True" "RenderType"="TreeBillboard" }
    8.        
    9.         Pass {
    10.             Blend SrcAlpha OneMinusSrcAlpha
    11.             ZWrite Off Cull Off
    12.            
    13.             CGPROGRAM
    14.             #pragma vertex vert
    15.             #pragma fragment frag
    16.             #pragma multi_compile_fog
    17.             #include "UnityCG.cginc"
    18.             #include "TerrainEngine.cginc"
    19.  
    20.             struct v2f {
    21.                 float4 pos : SV_POSITION;
    22.                 fixed4 color : COLOR0;
    23.                 float2 uv : TEXCOORD0;
    24.                 UNITY_FOG_COORDS(1)
    25.             };
    26.  
    27.             v2f vert (appdata_tree_billboard v) {
    28.                 v2f o;
    29.                 TerrainBillboardTree(v.vertex, v.texcoord1.xy, v.texcoord.y);  
    30.                 o.pos = mul (UNITY_MATRIX_MVP, v.vertex);
    31.                 o.uv.x = v.texcoord.x;
    32.                 o.uv.y = v.texcoord.y > 0;
    33.                 o.color = v.color;
    34.                 UNITY_TRANSFER_FOG(o,o.pos);
    35.                 return o;
    36.             }
    37.  
    38.             sampler2D _MainTex;
    39.             fixed4 frag(v2f input) : SV_Target
    40.             {
    41.                 fixed4 col = tex2D( _MainTex, input.uv);
    42.                 col.rgb *= input.color.rgb;
    43.                 clip(col.a);
    44.                 UNITY_APPLY_FOG(input.fogCoord, col);
    45.                 return col;
    46.             }
    47.             ENDCG          
    48.         }
    49.     }
    50.  
    51.     Fallback Off
    52. }
    Increase the Moon -> Mesh Size parameter on the TOD_Sky script.
     
  5. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    4,030
    No, I didn't use a custom skybox. I dragged the prefab Sky Dome into my scene and it is using Time of Day/Cloud Layer.
     
  6. local306

    local306

    Joined:
    Feb 28, 2016
    Posts:
    155
    Heyo,

    I've noticed that having taken TOD and all of it's components out of a scene has resulted in the scene loading as a black empty sky every time I fire up my project. I've made sure that the skybox is enabled and that the camera is set to clear the sky box like a default camera, and the problem still persist.

    The only way I can get the generic skybox to render back into the scene is to add a TOD skydome and toggle it on and off.

    Is there a way to fix this scene without having to redo it all?

    EDIT: It's also performance heavy drawing the black sky for whatever reason. Kind of a nuisance for my current VR project having to toggle the TOD skydome in order to get my FPS back up to 90.
     
  7. schipman

    schipman

    Joined:
    Jan 22, 2010
    Posts:
    45
    I tried the custom shader you posted for me but it didn't work.. Here is a picture (the pinetree billboards are using the shader- all the other trees are Speedtree trees.)
     

    Attached Files:

  8. olavrv

    olavrv

    Joined:
    May 26, 2015
    Posts:
    515
    That would be fantastic. If this is fixable on your end, we would really appriciate it if we could get a temp fix until the next update on assetstore.
     
  9. olavrv

    olavrv

    Joined:
    May 26, 2015
    Posts:
    515
    Is it possible to adjust the far clipping planes for the reflection probe generated at runtime? We are working on a large scale scene (80km x 80km) and the default far range of 1000 is too low for our situation.
     
  10. o1o101

    o1o101

    Joined:
    Jan 19, 2014
    Posts:
    639
    As the sun becomes low in the sky, shadows stretch to crazy lengths, and they become very buggy, does anyone have a solution to this?
    upload_2016-6-29_12-28-11.png
     
  11. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    4,030
    Long shadows are a natural consequence of having the sun close to the horizon. That's just the way it would be in real life. Just google "long shadows" and switch to images and see examples. As far as them being buggy, what do you mean? But off the top of my head I'd say the only way to reduce bugginess would be to increase shadow quality at the expense of performance. Unless it's simply a Unity bug no matter how high your shadow quality is.
     
  12. o1o101

    o1o101

    Joined:
    Jan 19, 2014
    Posts:
    639
    Yes, I am aware of that, except shadows tend to fade when they are long like that, its looks very strange having a crisp shadow stretched over half the the map. Is there a way in time of day so that I can lower the shadow strength the shadow around sunrise and sunset? That would be very handy. Thanks!
     
  13. o1o101

    o1o101

    Joined:
    Jan 19, 2014
    Posts:
    639
    Sorry, I thought you were the developer, my bad.
     
  14. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    4,030
    No, I'm not the developer, but what you're asking is a Unity issue not a ToD issue. Shadows are handled by Unity's lighting system and unless you replace it with a completely custom shadow solution then you're stuck with what you see.
     
  15. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,782
    You can extend your shadow distance - but it will make your system work harder - you need to decide if the performance cost is worth it. Edit -> Project Settings -> Quality -> Shadow Distance.

    Love to know whats coming - was just asked about TOD in the Gaia thread and thought it may have been abandoned.
     
    Teila likes this.
  16. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    4,030
    But does this fade them?
     
  17. emrys90

    emrys90

    Joined:
    Oct 14, 2013
    Posts:
    755
    Does this have volumetric clouds? I've seen the semi-volumetric clouds, but not sure what that means. I'm going to have flying in my game, so it would be nice to be able to fly through clouds.

    Does this have networking support?
     
  18. andererandre

    andererandre

    Joined:
    Dec 17, 2010
    Posts:
    683
    Looks like the forums were rolled back a week. Here's the readonly version of this thread on the new forum software, just for reference: https://community.unity.com/t5/Asset-Store/Time-of-Day-Dynamic-Sky-Dome/td-p/1351343/page/80

    Flying through clouds is not supported at the moment.

    See http://modmonkeys.net/dat/doc/timeofday/#networking

    Not sure what you mean, but you have to attach TOD_Camera to your main camera to scale the sky dome to your far clipping plane. If you did that it should look identical in small and large worlds.
     
  19. AR_Rizvi

    AR_Rizvi

    Joined:
    Aug 12, 2013
    Posts:
    40
    Plz can some one tell me i an updating the value of hour by my coustm made clock to TOD_Sky.cs's sky.cycle.Hour
    but my day or date is not updating when pass 24 hour mark Why?? and is there any Way to Change only hour and it updates the Whole system
     
  20. olavrv

    olavrv

    Joined:
    May 26, 2015
    Posts:
    515
    Here are a couple of screenshots from our ship simulator system that we are developing.

    This location is a 80km x 80km terrain which goes from fjords to coastline into open ocean.
     

    Attached Files:

    Last edited: Jul 28, 2016
    jazz75, web76, thylaxene and 2 others like this.
  21. DivergenceOnline

    DivergenceOnline

    Joined:
    Apr 19, 2015
    Posts:
    244
    Way beyond the boundaries allowed by floating-point errors. How did you solve that?
     
    Tethys likes this.
  22. olavrv

    olavrv

    Joined:
    May 26, 2015
    Posts:
    515
    Floating origin, but it is not ideal solution - so hope Unity implement double precision soon!
     
  23. DivergenceOnline

    DivergenceOnline

    Joined:
    Apr 19, 2015
    Posts:
    244
    I wouldn't hold your breath ;) Looks AAA though, my guess is mesh terrains that you can't really walk on? And the water looks more like CETO than Playway.
     
  24. ghiboz

    ghiboz

    Joined:
    Sep 7, 2012
    Posts:
    465
    impressive shots!!!
    what means floating origin? you placed the center of your scene at 0.0.0 or you move the scene?
     
    olavrv likes this.
  25. DivergenceOnline

    DivergenceOnline

    Joined:
    Apr 19, 2015
    Posts:
    244
    It means you set up your game scene to periodically move your main character/camera back to 0,0 while simultaneously moving the entire contents of the scene to 0.0 "under its feet" as well. If done correctly, the player/camera never sees that its been moved because both it and the contents of your scene move simultaneously.

    This works well in single-player games, but not in multiplayer games, or games with a persistent state based on interpretation of unity's in-scene coordinates (such as longitude/latitude) because of the fact this is purely a client-side graphical change.
     
    ghiboz and BackwoodsGaming like this.
  26. DivergenceOnline

    DivergenceOnline

    Joined:
    Apr 19, 2015
    Posts:
    244
    So just so we're clear, you have no real intention of ever upgrading the clouds, correct? It's been more than a year since there was a single update to ToD and nothing visual to demonstrate progress since last year.
     
    olavrv and BackwoodsGaming like this.
  27. olavrv

    olavrv

    Joined:
    May 26, 2015
    Posts:
    515
    I agree - a year is a long time between updates! TOD is great, but there is so much more that could be done to make it even greater...
     
  28. Steve2375

    Steve2375

    Joined:
    Mar 28, 2015
    Posts:
    42
    Yes, it would be great to get a statement if there will be volumetric clouds in the next update...or ever in any update.
    Regardings updates it feels like this project is dead...
     
  29. proso

    proso

    Joined:
    May 24, 2012
    Posts:
    67
    Hi, I've got a question, I hope someone can help me with this. In a previous version everything worked perfect. Now I'm using Unity 5.4 and the latest TOD.
    My problem is that my sky is not corresponding the sunposition anymore. I compared the previous version with my current version and noticed that the light intensity is off (0.2114824 against 0.9782268 with the same settings). How can I fix this?
     

    Attached Files:

  30. ghiboz

    ghiboz

    Joined:
    Sep 7, 2012
    Posts:
    465
    please can you post all the screenshot with the properties?
     
  31. proso

    proso

    Joined:
    May 24, 2012
    Posts:
    67
    Hi ghiboz, I'm not at work for a few days so I can post it later on when needed:
    Both the settings are exactly the same as in the original prefab, only with the time and location different as in the screenshot.
    To find a solution I simple created a new project and downloaded the TOD asset, added the prefab to the scene and changed the time and location settings. When I look outside my window at 6 am, I can confirm it is still dark :confused:. Height of the sun looks OK, intensity not.
     
  32. DivergenceOnline

    DivergenceOnline

    Joined:
    Apr 19, 2015
    Posts:
    244
    Oh I think that 13-months means we're passed the point where statements carry any merit really.
     
  33. olavrv

    olavrv

    Joined:
    May 26, 2015
    Posts:
    515
    That would be very sad, because it is a beautiful system :(
     
  34. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,684
    I think that like many devs, @plzdiekthxbye was probably waiting for Unity 5.4 to come out before updating, and it was an unexpectedly long and difficult rollout (originally expected to be final in March, IIRC). I'm getting updates for other plugins that are solidifying their 5.4 functionality. Perhaps we'll see something from ToD before long.
     
    olavrv likes this.
  35. DivergenceOnline

    DivergenceOnline

    Joined:
    Apr 19, 2015
    Posts:
    244
    "Wishful thinking is the formation of beliefs and making decisions according to what might be pleasing to imagine instead of by appealing to evidence, rationality, or reality."
     
    Rowlan likes this.
  36. olavrv

    olavrv

    Joined:
    May 26, 2015
    Posts:
    515
    haha. He just wrote me that an update is on the way :)
     
  37. DivergenceOnline

    DivergenceOnline

    Joined:
    Apr 19, 2015
    Posts:
    244
    Yeah i remember getting those in 2015.
     
  38. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    4,030
    lol. Sounds like Darwinian evolution.
     
    docsavage likes this.
  39. andererandre

    andererandre

    Joined:
    Dec 17, 2010
    Posts:
    683
    To clear up a few things: The new update is still on the way. There won't be fully volumetric clouds in it, but I still plan on looking into that at some point. Time of Day is my personal project that I work on in my free time. My main job is working on a game that's currently in Steam Early Access, which has been taking up an incredible amount of my time. This game and two other games that are currently being developed by the same company are using Time of Day, so whenever there was a major issue with it from a Unity update I immediately fixed it and put it on the Asset Store. However, Unity themselves went through a fairly buggy year so there have been some issues that couldn't be fixed on my end and we all simply had to wait for Unity to address those.

    We're currently using an updated version of Time of Day internally that has a few more features that we wanted for our games, but I haven't had time to update the docs, which is why this internal version not on the Asset Store yet. If you want the latest internal build you can send me an email with your invoice #, but you'll have to figure the changes our on your own. I'm hoping to find some time next month to wrap up the docs and check off a few last things from my TODO list, but I cannot give any guarantees at this point. I try to check this thread as often as possible to address any issues or concerns and I'm sorry if the intervals between my replies have been too long lately.

    Use the AddHours method on the TOD_Time component.
     
    radimoto, hopeful and elbows like this.
  40. danger726

    danger726

    Joined:
    Aug 19, 2012
    Posts:
    184
    Hey @plzdiekthxbye,

    I've just upgraded to Time of Day 3.1.0 from 2.3.5 (I know, I've been behind the times!) In order to get it to work, I had to make a few tweaks and fixes.

    Apologies if any of these issues have already been discussed, I haven't had a chance to read through all the posts since I was last here. Anyway, hopefully you'll be able to roll some of these fixes into a future release!

    Setting the skybox

    In the TOD_Camera Update function where the skybox is assigned, I had to change this:-

    Code (CSharp):
    1. #if UNITY_EDITOR
    2. if (RenderSettings.skybox != sky.Resources.Skybox)
    3. #endif
    4. {
    5.     RenderSettings.skybox = sky.Resources.Skybox;
    6. }
    To this:-

    Code (CSharp):
    1. if (RenderSettings.skybox != sky.Resources.Skybox)
    2. {
    3.     RenderSettings.skybox = sky.Resources.Skybox;
    4.  
    5.     // Need to call this whenever modifying RenderSettings.skybox (refer to https://docs.unity3d.com/ScriptReference/RenderSettings-skybox.html)
    6.     DynamicGI.UpdateEnvironment();
    7. }
    Otherwise the ambient lighting doesn't get updated if RenderSettings.ambientMode is set to RenderSettings.AmbientMode.Skybox. This may not be a problem if the Sky Dome is already part of the scene from the get go, but I'm instantiating my Sky Dome at runtime just after the scene is loaded.

    Clear alpha

    I'm rendering the Sky Dome into the reflection probe, but for me the sky was appearing black:-



    To fix this, in the Clear Alpha shader, I had to change the alpha value returned by the fragment function to be a non-zero value:-

    fixed4 frag(v2f i) : COLOR {
    return fixed4(0, 0, 0, 0.001);
    }

    Presumably there's an alpha test somewhere, not sure if this in Time of Day or something Unity is doing, but this fixed it anyway:-



    Atmosphere depth

    I'm applying the atmospheric scattering to the whole scene (terrain etc.), so I need it to properly take depth into account, and I had to make some changes in TOD_Scattering.cginc.

    Currently there's a linear depth falloff, but I find this doesn't ramp up the atmosphere effect quickly enough over distance. So in ScatteringCoefficients(...), I removed the "* depth" from this line:-

    float kScale = TOD_kScale.x * depth;

    Instead I needed an exponential depth falloff to get a nice ramp up over distance. Also, the height being used wasn't correct for a depth of anything other than 1. So I changed the part that calculates the length through the atmosphere to this:-

    // Length of the atmosphere
    float height = dir.y * depth;
    float far = (sqrt(kOuterRadius2 + kInnerRadius2 * height * height - kInnerRadius2) - kInnerRadius * height) * depth;


    The night sky and moon halo colors didn't take depth into account at all, so would appear over everything in my scene. So I modified ScatteringColor(...) to take in depth, and passed this through to the NightSkyColor(...) and MoonHaloColor(...) functions.

    I changed NightSkyColor(...) to use an exponential falloff (unfortunately this adds some extra computation, but I'm not sure of a better way given that the day and night atmosphere are now evaluated entirely separately):-

    inline float3 NightSkyColor(float3 dir, float depth)
    {

    dir.y = max(0, dir.y);

    float height = dir.y * depth;

    float density = 10.0; // TODO: Expose this param?
    float expFalloff = 1.0 - exp(-density * depth);

    return TOD_MoonSkyColor * (1.0 - 0.75 * height) * expFalloff;
    }

    And MoonHaloColor(...) to use a simple linear falloff (I just wanted to stop it showing through the terrain more than anything else):-

    inline float3 MoonHaloColor(float3 dir, float depth)
    {

    return TOD_MoonHaloColor * pow(max(0, dot(dir, TOD_LocalMoonDirection)), TOD_MoonHaloPower) * depth;
    }

    Reflection probe settings

    I needed to change the reflection probe clipping planes and clear color from the defaults. I was able to do this by getting access to the probe from the sky instance once it had been created, but it would be nice to have these exposed in TOD_ReflectionParameters.

    Ok, that's it, cheers!
    Sam
     
    Last edited: Aug 15, 2016
    smada-luap and hopeful like this.
  41. bradcode

    bradcode

    Joined:
    Dec 22, 2015
    Posts:
    3
    Hello,

    I am able to see some beautiful cloud shadows on normal 2d desktop...but they do not render in VR.

    Any idea why?

    I am using latest Unity 5.4.0f3, latest TOD plugin and Vive.
     
  42. gecko

    gecko

    Joined:
    Aug 10, 2006
    Posts:
    2,241
    Is it possible to fully alter the sky color? I'm trying to create the beige/brown sky on Mars, but TOD insists on a blue sky despite the Sky Color colors....
     
  43. ftejada

    ftejada

    Joined:
    Jul 1, 2015
    Posts:
    695
    Hi

    I am very interested in your product, but I would like to know a few things before you buy it.

    1) In the options "Lighting-> Enviroment Lighting-> Ambient Source" Can Unistorm use Skybox or Gradient?

    2) Can set parameters to change in real time the values of "Ambient Intensity" and "Reflection Intensity"?

    Regards
     
  44. andererandre

    andererandre

    Joined:
    Dec 17, 2010
    Posts:
    683
    Thanks - those should all be addressed / better in the next release, aside from the exponential falloff for the night sky color.

    I can't verify this myself right now, but if you send me your invoice # I can send you the latest internal version with revamped cloud shadows to see if it's fixed there?

    This is definitely possible with adjusted Rayleigh / Mie scattering multipliers and a red gradient as the sky color.

    All ambient light modes are supported.

    Yes, those parameters can be changed at runtime.
     
  45. Ninjaxim

    Ninjaxim

    Joined:
    Jul 23, 2013
    Posts:
    105
    @schipman Not sure if you (or anyone else) still has this problem with billboard tree shaders and atmospheric scattering, but what worked for me was changing the transparency queue on the built in shader from -100 to -500, like so:

    Code (csharp):
    1. Shader "Hidden/TerrainEngine/BillboardTree" {
    2.    Properties {
    3.      _MainTex ("Base (RGB) Alpha (A)", 2D) = "white" {}
    4.    }
    5.    
    6.    SubShader {
    7.      Tags { "Queue" = "Transparent-500" "IgnoreProjector"="True" "RenderType"="TreeBillboard" }
    8.      
    9.      Pass {
    10.        ColorMask rgb
    11.        Blend SrcAlpha OneMinusSrcAlpha
    12.        ZWrite Off Cull Off
    13.        
    14.        CGPROGRAM
    15.        #pragma vertex vert
    16.        #pragma fragment frag
    17.        #pragma multi_compile_fog
    18.        #include "UnityCG.cginc"
    19.        #include "TerrainEngine.cginc"
    20.  
    21.        struct v2f {
    22.          float4 pos : SV_POSITION;
    23.          fixed4 color : COLOR0;
    24.          float2 uv : TEXCOORD0;
    25.          UNITY_FOG_COORDS(1)
    26.        };
    27.  
    28.        v2f vert (appdata_tree_billboard v) {
    29.          v2f o;
    30.          TerrainBillboardTree(v.vertex, v.texcoord1.xy, v.texcoord.y);  
    31.          o.pos = UnityObjectToClipPos(v.vertex);
    32.          o.uv.x = v.texcoord.x;
    33.          o.uv.y = v.texcoord.y > 0;
    34.          o.color = v.color;
    35.          UNITY_TRANSFER_FOG(o,o.pos);
    36.          return o;
    37.        }
    38.  
    39.        sampler2D _MainTex;
    40.        fixed4 frag(v2f input) : SV_Target
    41.        {
    42.          fixed4 col = tex2D( _MainTex, input.uv);
    43.          col.rgb *= input.color.rgb;
    44.          clip(col.a);
    45.          UNITY_APPLY_FOG(input.fogCoord, col);
    46.          return col;
    47.        }
    48.        ENDCG      
    49.      }
    50.    }
    51.  
    52.    Fallback Off
    53. }
    54.  
    Hope this helps someone!
     
    magique and exploitedtaken like this.
  46. mons00n

    mons00n

    Joined:
    Sep 18, 2013
    Posts:
    304
    Does moon phase impact light intensity at night in TOD? From the changelog it seems that it only effects the halo; if this is the case how would I best go about altering the night light intensity to correspond with the current showing moon phase?

    I'm having an issue where the terrain is quite dark regardless of the moon phase. This is a good thing when the moon is not up as the atmosphere matches the darkness, but when the moon is out the atmosphere is quite a bit lighter than the terrain itself (which seems to stem from moon light color being a dark blue at 0.5 intensity).
     
  47. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,267
    Is there an ETA for the next release? And which features does it include? I'm looking for a solution like ToD, but have seen that other packages offer more features like flashes, aurora, rainbows, milky way, etc for the same price. However, since I need it for VR and read that ToD is performing very well in VR while others don't, I rather like to stick with ToD.

    Does ToD come with rain effect and sounds? In the web player I only see the "storm" option, but it doesn't do anything other than change the color. There's no weather effect. Nor do I see moving clouds. The description of the asset however says there's wind.

    Also, is it possible to have multiple suns / moons, i. e. simulate another planet?
     
    Last edited: Sep 6, 2016
  48. Reiner

    Reiner

    Joined:
    Dec 2, 2012
    Posts:
    214
    Please add a demo scene
     
    Salvador-Romero likes this.
  49. andererandre

    andererandre

    Joined:
    Dec 17, 2010
    Posts:
    683
    Moon phase does affect the moon light source intensity. If you tweak the brightness at full moon by adjusting the moon light color and intensity parameters it should still be dark whenever the moon isn't visible.

    Milky way is supported if you plug in one of the many milky way cubemaps from the internet into the "space" child object. flashes / aurora / rainbows won't be in the next release, but as I said earlier I can send you the current internal version for you to check out.

    Clouds are moving, but the web player doesn't increase the wind intensity on the storm option - you can do that in your project though. There are no sound effects included.

    Yes, but you have to update the position of the second moon yourself or make it a child object of the first moon.
     
  50. Crossway

    Crossway

    Joined:
    May 24, 2016
    Posts:
    507
    It doesn't work with Unity 5.5 b3 anymore, can you please check this out?