[TUTORIAL] Quick Time-of-Day Setup

UPDATE: pre-made blueprint is available for download! Get it here: https://apps.gregbrisebois.com/downl…eOfDay_1.4.

  • Extract archive;
  • Copy “Content” folder into your project folder (it should merge with content folder already there);
  • When it asks if you want to merge folders, say yes;
  • Launch UnrealEd, and load project you copied that folder to;
  • Go to ‘File > Open Level’ and choose “TimeOfDayTemplate.umap” (it should be located under \YourProject\Content\Maps);
  • Hit simulate, and watch sun move!

Experiment with properties in blueprint. I’ve written comments for all of them (I think), so it shouldn’t be too hard to figure it out. Quick tip: If you want to change speed of time, “Time Speed” is what you’re looking for.

For more details about blueprint, go here: https://gregbrisebois.com/index.php/…aynight-cycle/

If it isn’t working, please make sure that you followed all of steps above correctly. They are all necessary!

Finally, please give feedback! Was it useful? Not useful? Too complicated? Broken? Let me know below!

[EDIT Updated to v1.2]

Original Post:

Hey all,

I’ve created a quick tutorial on how to set up a dynamic day-night cycle on wiki: https://wiki.unrealengine.com/Tutorial:_Time_of_Day

I noticed that there wasn’t much info on , so after figuring it out I decided to share it with you all.

Hope helps some people! And feedback is welcome :slight_smile:

EDIT: Updated tutorial to include a section on environment customization events. Now you can change things based on level being day or night!

One question. How did you get “Light Source” as target for Add Actor Local Rotation?

In 3D viewport, select your sun lamp, then right-click in level blueprint editor and choose “Add reference to light source.”

should work for you :slight_smile:

Thanks , is great. Nice and simple!

Thanks ! :smiley:

Ha, so simple, no wonder I didn’t think of it. is really cool now that I have it working. Now I’m trying to think about how I can cause events to trigger based on it being “night time”.

I would go about it by, in blueprint, check your sun’s rotation and see if it is in “night” range (aka below horizon). Then cause events to happen if it is. If you check skydome’s blueprint (select it and click “Edit BP_Sky_Sphere” in details panel) they have setup for , which they used to blend in stars.

EDIT: I’ll update tutorial to include something like when I have time :slight_smile:

Very good, congratulations, I really liked it.
It was easy to understand and quick to implement.

Thanks! That’s good to hear, means I did my job right :slight_smile:

Hi i have working but I am looking for a way to get night to look correctly is in engine or in editor itself? I am also getting light from under terrain that i believe i can fix via BP but i need a better night sky but i can not find sky settings for night anywhere.

You can make changes to sky in skydome blueprint (just select it and, in details panel, click “Edit BP_Sky_Sphere”). underground lighting could probably be fixed by turning off sun when it goes below horizon, I’m working to update tutorial in relation to demonstrate how to set up something like :slight_smile:

Holy **** did not think that was a BP … now i said it it starts with bp… But yes i turn on and off Sun brightness at 0.1 adn that works i just need to change night settings now thanks.

Okay, to see where sun is, just check your light’s “Pitch” rotation value. If that’s positive, it means it’s nighttime. Here’s blueprint setup I used:

(Just look at bottom section, starting with “Get Actor Rotation.”) You can then make decisions based on “Night” boolean. “Night Threshold” float determines how many degrees sun must be below horizon for it to count as night.

Alright, I’ve added new section to tutorial. should fix “sun coming through ground” problem, and also give you a way to customize environment to day or night. :slight_smile:

you could use sun height to tell day and night at night height is <0 To get sky to actually change to night i had to modify lerp to make my own night lery color and transition to that but now if i use a sky light my terrain gets bright at night. I’m going to see if yours does same… are u using a terrain?

Also I think im going to add skylight behavior to Sky sphere. its still weird that when night starts skylight seems to illuminate like mad

I don’t think height<0 will work, sun in UE4 goes by rotation, not height. No, I’m not using a terrain in tutorial, but I have used it before and it should work.

I see now I dont know what changed but sun height does not even get to top of or or -1 now. but i have it working. I’m adding ability to control day cycle based on a total Seconds for cycle also I’m making a get Time function that works for 24 or 12 hour days., I’ve also integrated your change into BP it self. Would you want me to share once I’m done? I’m brain storming adding Day night cycle and stor cycle to be able to blend to a weather environment state machine at random of on call.

Wow, nice work man! Sounds like you’ve made progress :slight_smile: Feel free to add it to wiki page if you want of course!

Awesome job man! I really liked way you added in parts to trigger events for at day/night. much simpler version I created ( Working Basic Day/Night Cycle w/ Updating sun - Blueprint - Epic Developer Community Forums ) didnt have that, but I’ll likely be adding it.