I spent 4 months making a huge OPEN WORLD for my INDIE GAME - Resttore Devlog
Vložit
- čas přidán 28. 06. 2024
- 𝗦𝗨𝗣𝗣𝗢𝗥𝗧 𝗠𝗘
● Wishlist Resttore on 𝗦𝗧𝗘𝗔𝗠: store.steampowered.com/app/27...
● Support Me on 𝗣𝗔𝗧𝗥𝗘𝗢𝗡: / s4bishii
Affiliate Links:
► Learn how to animate like a pro using Blender: toanimate.teachable.com/a/aff...
------------------------------
Hi, welcome to another Resttore devlog.
This is a huge update since the last devlog, I've added a lot of things to the game, just to mention a few: a new day/night cycle, a weather system, a wind system, new trees, rocks, grass, a complete overhaul of the water shader, and even a fully functional sailing mechanic. Sit back and enjoy while I bring you up to date.
𝗦𝗢𝗖𝗜𝗔𝗟𝗦
Twitter - / s4bishii
Discord - / discord
𝗖𝗛𝗔𝗣𝗧𝗘𝗥𝗦
00:00 - Intro
00:48 - Day and Night Cycle
02:23 - Weather
04:04 - Wind
05:23 - New Trees
05:55 - Reworking everything else
06:15 - Water
07:37 - Boat
09:19 - 4km x 4km Map
10:16 - Optimization
𝗠𝗨𝗦𝗜𝗖
Track: FREE FOR PROFIT - Chill Lo-fi Type Beat - Chill | Chillax Instrumental - K!o
Watch: • FREE FOR PROFIT - Chi...
------------------------------
Track: Aspire - Pryces
Music from #Uppbeat (free for Creators!):
uppbeat.io/t/pryces/aspire
License code: D5ORS6AOWVZKMBIX
------------------------------
Track: Fluffy Clouds - Fugu Vibes
Music from #Uppbeat (free for Creators!):
uppbeat.io/t/fugu-vibes/fluff...
License code: SWHPRGFRAMLFQXZD
------------------------------
Track: The Witcher 3: Wild Hunt OST - Sword of Destiny - Main Theme
Watch: • The Witcher 3: Wild Hu...
------------------------------
Track: Undertale OST: 015 - sans.
Watch: • Undertale OST: 015 - s...
------------------------------
Track: Cult of the Lamb [Official] - Start a Cult
Watch: • Cult of the Lamb [Offi...
------------------------------
Track: Like That - Anno Domini Beats
Watch: • Like That
------------------------------
Track: Smile For Me - Kidcut
Music from #Uppbeat (free for Creators!):
uppbeat.io/t/kidcut/smile-for-me
License code: PL21JSYNRI8A5JP7
------------------------------
Track: • Hateno Village (The Le...
Watch: • Hateno Village (The Le...
--------------- - Hry
The wind looks REALLY AWESOME and brings so much life to the world. Would seriously love a breakdown video detailing how it's done
Will do at some point. Stay tuned.
the last thing i would be working on is the day/night wind weather. all that crap, wont finish the game, it will eat up a TON of time and probably just to get changed and altered down the road. build the bones of your game first, the game play loop. get the main logic in, then expand outwards adding in those types of features. or this type of video will be coming out every 6 months for ever.
yeah I know, I got carried away, I need to focus more on gameplay stuff and less on the art side of things. It was pretty fun tho :D
@@s4bishiiaye man… you have a lot more progress than most these internet commenters…just do what’s fun for you. Progress is progress.
@RandomNoob1124 Absolutely, doing fun stuff will always be one of my priorities, and I learnt a lot of new things in this 4 months, I only need to control my scope a bit better.
@@s4bishii amazing, your work is motivating and beautiful 🙏🏾.
this advice applies to 95% of "Devlog #0"-youtubers. But you have to let them do what they enjoy too. If they were trying to at some point ship the game, then this is great advice, if they just want to have fun making games, let them :)
11:40 i belive the lag comes mostly from loading the landscape because of its size so try using culling only on foliage and not the landscape itself and for the landscape try using around 5 levels of lods.
hope this helps✌️🙂/works 😅
keep it up 👑
mmmmm interesting, will try out and I'll let you know! thanks for the help
@@s4bishii
your welcome man
good luck 👍
I think you should still do a little bit of frustum culling on the landscape.
Maybe you could also try integrating Frame Generation.
Like DLSS, FSR and XeSS.
I am not to sure on hard it is for a solo developer to add in this type of stuff.
But having Frame Generation will almost double frame rate
I don't think you should have used Lumen.
Your game isn't using any hyper Realistic texture and super high ploy count surfaces, so switching from UE4's lighting to UE5's doesn't seem like the best idea in my eyes.
I am not a game development expert.
Only been into this for 3 months or so
u can reduce the size of the cell for the world partition and therefore probably smooth ur lag spike@@s4bishii
I absolutely love the concept of Old Bob being New Bobs bigest hater in the meta of these devlogs lmao
he will never outlive being replaced
I just started following this series and its awesome! It gives me really cozy and immersive vibes which gives it so much life! I want to get into gamedev with unreal and this is a real inspiration! keep it up and good luck man!
I'm glad you are enjoying it! Learn how to create games, you will not regret it 😁. Good luck!
Nice video, love your sense of humor, I think every gamedev can relate to the feature creep problem ;) But everything you did looks awesome. Also thanks for the breakdown of the nothern lights, I would love to see more of that.
Thanks, I'm glad the breakdown was helpful.
I'm planning to start creating some breakdown videos too so stay tuned.
Very impressive!! I had a similar issue in my game where loading far away chunks would cause a lag spike. I solved this by turning the loading loop into a recursive function that is called once (or twice) per frame per chunk until the chunk is done loading. This spreads out the loading over several frames, eliminating the lag spikes.
Mmmm makes sense, will see how it works in Unreal 🤔
Really funny video!! love how you just keep adding awesome stuff XD
Keep up the great work!!
Glad you enjoy it! 😁
YES. YES. YES. PLEASE EXPLAIN THE TREE WIND AND RAIN SPLINE IM BEGGING
Will do!
@@s4bishii i love you
@@s4bishii soo uh mr s4bishii... Hows development going
been watching your devlogs and i am loving it so far! just added it to my wishlist on steam, im looking forward to playing it when it releases
thanks! I'm glad to have you on board 😁
An amazing video as always the goat is on a streak
thanks as always!
Really awesome insights and breakdowns, thank you very much for sharing
Glad it was helpful!
Holy moly the quality of this video is amazing, very cool 👍
Been watching from start. I like this project!
Thanks for your support dude! I really appreciate it 🙇♂️
Great progress bro! 😊
Thanks 😁
This is incredible man, great job
Glad you like it!
Dude this looks amazing nice work
thanks!
The game looks amazing! Cant wait to see whats next!
Me neither!
omg howww did i missed your videosssss so far !!!! they are so funny and interesting ! i love your humor !!!! really congratzzzz !!!
Thank you so much!! Glad you like them!
This game looks amazing keep up the great work man
Thanks, I will 😁
such a huge step forward amazing
totally!
11:41 Not sure in UE5 but I have the same problem in UE4 when loading levels using world composition. However it only happens in the editor and not in the built version. The reason (well, my guess) is that for some reason in the editor it's not using async loading and it blocks the thread. Does it also happen to you in a built version? cheers!
Oooooh I haven't tried to built the game yet, I hope that's the solution. I'll try to build it and I'll let you know. Thanks for the help!
@@s4bishii Great! 😁
Looking so good!!
Thanks man, part of the credit goes to you for helping me with the sky and the waterfall
amazingly fun video and educational. i subbed
Thanks for the sub! Glad you liked it!
For your issues with chunk loading and world partition toward the end of the video, I'd recommend looking into Unreal's HLOD system. It allows you to generate clusters in the map that group multiple actors together, and from there the engine can generate low-poly proxy meshes for those clusters (helps reduce draw calls). So for example, you have whiterun in the distance with all of its buildings and barrels, etc. While you can use pop-in for the small stuff, you can cluster all of the buildings together and bake them into their own mesh that is swapped out with the individual meshes by the engine when they're needed. Same can be done with forests or really anything you can think of.
Interesting, sounds like a better option than just culling everything. I did try to create HLODs for the landscape, but it crashed the engine every time, so I discarded it. I'll look into it better and test it properly. Thanks for the advice!
Awesome devlog cant wait for more :D
see you in another ### months :D
see you in the 22 century then :D@@s4bishii
@@fiireek 😂😂😂
Definitely wanna see how you did the wind!
stay tuned, I want to start making tutorials soon
Great stuff! I missed you
Thanks! It´s good to be back
this looks sick!!! i feel like i could spend hours just messing around the map lol
that's the goal!
The game is looking amazing, you've made so much progress since the first devlog and it's really cool to see!
I wish I had any advice on that chunk loading issue but those are some of the most annoying issues to deal with and it's an area that is far from my expertise, so I can only wish you good luck!
I'm glad you like it man :)
keep up the good work you too!
That water looks amazing
looks sick man
thanks man
You, I gotta say, you are my inspiration to keep going when im making my game. You are really good and I really love your project!
Thanks! I am grateful to inspire others to stick to the gamedev journey
@@s4bishii No problem, Imma be dead honest, you are the person that made me get back into game developing when I saw your game for the first time! Also, like Valltrax said the other day, I feel like what you could do is raycast for the whole screen and anything that isn't in there, cull it, just leave the map itself loaded in
@@Vermetra I think Unreal Engine do the culling stuff out of the box, so there is no need to worry about that, I will look into it in case I'm wrong.
@@Vermetra :S You would never want to cast a ray to all game objects in your camera frustrum... that's just sick! There are way better ways to check if smth is visible. Especially for culling. This is done primarily using tree structures like BVHs, octrees or k-d trees. Such that if a node isn't visible, you can immediately cull away all child nodes, without needing to check them as well.
Imagine a hill, if you can see the backside of it, you can immediately cull away the entire village there aswell. With just one check. Simplified ofc.
Normally, the loading of assets before rasterization, already utilizes spatial partitioning, to not even load those assets.
You have to realize, the slow part is the rasterizing of the visible fragments (vertecies in the camera frustrum) to the final pixel on the screen. Not holding all the geometry/data in memory, that's pretty easy.
Every renderer/rasterizer is built the same and is very stupid, and just rasterizes from back to front, all triangles in the camera frustrum.
So it might rasterize (calculate the shader) for a pixel, only for it to later draw the same pixel again, bcs of another triangle which was in front.
This is where we can save tons of time, by removing all triangles again, which we just loaded in, to reduce the work we end up doing twice when shading.
(the "meat" or sauce of a renderer are its shaders, and maybe the implementation, but if they are based on the same paper, should be the same regardless of which renderer is used, if the shader/BSDF is the same. Also rasterizers are also all about the same. The only new wave recently is people, like epic, are starting to implement micropolygon rendering techniques into realtime applications and mesh rendering since modern APIs expose them for realtime apps now, both of which have been about a decade old at this point)
What you are describing with shooting a ray to each object, would already be akin to a offline path tracer, but even worse, as it would scale with the amount of objects in your scene rather than screen-resolution.
Path tracing is what you want eventually. You trace each pixel to the first visible object, and render the pixel. done.
Sounds easy, but isn't
As this is very accurate it takes shit ton of time.
Not bcs tracing shading/suddenly takes so much loner per pixel, no. Bcs tracing a line through a (mostly empty) volume isn't finished science, and there only exist crude approximations until now in mathematics.
The only pure solution (which isn't either an approximation with discrete steps, or an analytical approach, akin to newton procedure when trying to find a null point of a curve) is an integral solution, which a classical computer cannot solve.
Simply bcs to solve you have to run the "limit" of a integral aka to infinity, which you would need a quantum computer or human for.
So lots of science still to be done here!
There are also other ways, such as all the tons of "Volume" rendering techniques, such as raymarching, or pure function drawing like CAS, which functions more like vector drawing.
I really love that you realized that you said that this game will have an anime style hope it will look good
😂😂😂
amazing! i love your videos
I'm glad you like them and thank you so much for the donation! I'll use it wisely
Amazing work man!, im thinking of also making something similar ( open world landscape ) for some game i want to do, but seeing how much knowledge you have and that it took you 4 months probably working full day on it ... i feel like i will take like years xDDD
just do it, no matter how long it takes, it's a lot of fun 😂😂
Well, well my idea of sailing got in the game i see
yeah 😂.... so what's next?
Good shit my guy I love open world devs shaders are the hardest process for me but finally getting the hang of it 😂
keep it up, you'll get there!
Great work
thanks!
@@s4bishii I’m also a game developer making a world but yours is way better 😂
@@ScrqpYT I'm sure yours is pretty good too 😁
this look sooo good!! are there going be different biomes in the game with different weather?
absolutely, at least 2 or 3 different ones
Congratulations on such an outstanding WORLD for mr BOB! !!! ❤🤍
it's getting better and better!
This looks awesome, could you think about adding more foliage? like large bushes, vines ferns and more
Yes! Is missing more foliage, will work on that in the future.
It's incredible how much progress you're making, and I love everything about it! The boat mechanic looks incredibly polished already, wow! Open world optimization will also be a big topic for me. But here are some ideas (I don't know how or if this works in UE):
1. Objects that are far away could be impostors instead of using LODs. However, this requires you to create different variations since you have a day/night cycle (different lightings).
2. Instead of terrain parts popping in all at once, could you export terrain parts that are far away as a mesh and not render them as terrain?
3. Are you using terrain culling?
Thanks man, means a lot coming from you! The boat was a big pain so I'm happy that it ended up looking good 😂
About your ideas:
1. I'm already using impostors for the trees and yes, I'm having problems with the lighting. I'm interested in what you mean by having different variations.
2. Interesting, I'll try to having them as meshes instead of terrain and see what happens
3. Yes
@@s4bishii Depends on what you're using as your lowest lod ("imposter")
If you do a cage mesh with octa-hedral projection, you only need one per asset. This requires you to do lighting in shader and render out multiple perspectives of an asset to flipbook.
Same technique you use for other volumetrics, such as smoke/fire etc.
If you dont do volume textures and raymarching.
After some googling, it's apparently coming from Unity devs this word "Imposter", to describe a lod, which uses 6 way lightmap material.
But most tutorials don't and just slap a pre-rendered image onto a hexagon or the like and call it a "imposter". Hence the lighting wont match the world lighting, if the lighting differs from that with which the flipbook was made from.
Instead, do render out different flipbooks for each texture map(albedo, normal, translucency), for each perspective. And do the lighting in the shader.
Example can be found online or in UEs starter content.
Pretty stupid imo. Its just an lod. :shrug:
Videazo manin🔥🔥🔥🔥
videazo papá
Great Video, before you publish your first version of the game you should also look into the Topic of Imposters there are quite usefull especially if you have many trees in your scene
actually I´m already using impostors, I just didn't mention them because the video was getting too long 😅
That's the forth comment or so I read about "using Imposters instead of LODs"
Where does this come from may I ask?
Like the obsession to call a lod with a different material a "imposter".
Octa-hedral projection or anything is else is still just an lod (level of detail) of an actual mesh.
@@MrSofazocker I really thought they were called impostors, in any case I think that's how most people know them and it's an easy way to refer to them.
Boat was a great decision it helps that adventure feeling a lot, great work so far!
yes, I think so too, it will help the player feel absorbed in the world 🚣
Looks fire 🔥 next vid when? I would make the nights a bit darker and add a lantern or torch
Yeah lighting is a thing I'll keep tweaking until the end, but I'll wait until I get a better monitor cause mine's colors are not great.
PS: next video really really soon
cool try, wish bob can upgrade his boat in his trip. e.g.: a water-proof tent, storage, booster...
PS: Nice work! keep going! the artwork is super cool!!!
That's the idea, I will add the ability to upgrade the boat in the future.
I'm glad you like the visuals :D
Now Resttore has graphics I only hope Revym can achieve one day! Great job, never stop being an inspiration for other devs out there!😀
Keep working on it, you will get there at some point
11:32 If you have a way to load the terrain on a separate CPU thread, then it won't halt the flow of other systems like camera rendering, character controller/movement physics. CPU Multi-threading is the term for it. This way you can keep the idea of partitioning/culling what doesn't need to be there, and not have to worry about loading it back in
Good luck!
Interesting, I don't know how to make multithreading for specific things in Unreal but it seems like a good idea. Thanks for the tip!
UE is inherintly single-threaded EPIC is planning to do more optimizations by moving stuff from the main thread onto workers such as the animation system and asset loading in 5.4.
AFAIK for using WorldPartition effectively, you need access to UEs source code as described in the usage documentation for experimental features.
They use it successfully for Fortnite already.
great video.. subscribed
Thanks and welcome!
Really nice progress! The world really looks amazing. Could you go into a bit more details about the tree pipeline in Houdini? Also how many vertices does LOD0 for a tree have, on average?
Every tree has between 3k - 4k vertices.
About the tree pipeline in Houdini, try to join the discord server if you can and DM me there so I can share screenshot with you.
1.Broo u should add more than just trees like bushes, dead branches, and mossy rocks to really enhance the experience
2.I am started to like it and plz release a beta version so we can play and give a feedback🙂
Noice game
beta versions are one of my goals for next year, hopefully you guys can start testing the game soon
@@s4bishii yes of course but make sure the game is dope
@@s4bishii take as much time u want but make a good game🙂
Just like rockstar doing with gta6🙂
@@fissionwave9525 Will do 😂😂
men rain is such a nice mood
It is 🌧
yes, new vid after so long
finally 😭
Ay! Here A Idea! When Going To Island or New islands You Can Unlock Certain Type Of Material or skin for your boat to upgrade it and custom make fabric for the boat!
Interesting 🤔, I hadn't thought about unlocking skins for the boat, I like that idea
Bob got a bigger home!!! 🤍
🤍🤍🤍
Damn! that's a hell lot of work. finally bob got a new world😅😂
It was about time 😅
cool progress. with all those scope creep its actually easy to digress and lose motivation. Gambatte!! (GoodLuck).
Would love to see you start working on the boss monster and boss fight. If its me, Ill probably just make the boss into sphere blobs. Almost like a bunch of spheres come together hahaha. and then like give the boss monster 5 attack pattern (Basic Attack combo 1, Basic Attack combo 2, Basic Attack combo 3, Surprise Attack, Ultimate Skill) pew psh pow!! And give the player like 3 attack pattern + dodge (dont do parry or block yet).
Again this is just me hahaha xD. Looking forward to your future devlogs!!
Thanks man 😁
Still a while until I work on bosses but if you feel like it join the discord server, I will love to know your ideas for bosses
Maybe you could make the world partition resolution slightly higher, and offset the range that objects get loaded in, so they aren't loaded in all at once? Like trees for example probably need a higher radius, and stuff like rocks would need a smaller radius, and foliage smaller still.
Interesting, I'll try and let you guys know, thanks for the idea!
I'm invested, great vid! What type of "open world" game is this going to be? RPG? Cozy sim? MMO?
It will be a mix of adventure with puzzles + some rpg elements + some survival elements. I'm not quite sure of the formula yet and I have to do some beta testing to prove what's the most fun.
BOB, I HAVEN'T SEEN HIM FOR...A DECADE YOU... CRIMINAL !
the looks pretty dope tho
it's been to long I know 😔
Would love to see a breakdown of the wind system
I'll be working on it soon (hopefully)
Clever!
One thing that could potentially also improve performance while maintaining a larger view distance is to disable weather effects on objects that are at a lower LOD or distance to the player. I don't know if you already thought of this, but there's no reason to spend precious calculations on wind/weather effects on vegetation that is far away where these effects would not be as noticeable anyways. Also, increase the LOD levels on the terrain that is far in the distance to maintain a far view distance while not impacting much of the performance. You should then be able to load in most of the terrain as it is static it should not cause much performance impact if low LOD's at a great distance. World partitioning EVERY object including the terrain in this way will cause stuttering.
Actually the weather effects on the materials are distance dependent (some of them at least) so they are omitted if the mesh is far away from the player, but I'm sure I can optimize that even more somehow.
About the LODs in the terrain, I'm only using 3 at the moment, I can try to use 4 or 5 and not load it with world partition and let it persistent in the world instead.
Thanks for the tips, really good stuff.
That’s it, I’m switching to unreal engine, loving your game dev journey so far
No way!!! I feel so powerful now
6:00 it looks much better than Pokemon Shield and the other games that came out afterwards
thanks :D
Wow!
you could try to cull what is not shown by the camera rather than what is a certain distance away
11:40 - Is there some way for you to make the objects load in based on distance to you, so it wouldn't load them all at once?
Like loading them in waves, or a circular radius around you might be easier.
Could even use "Line of Sight" to optimize it further? - but that may as well increase the scope even further hahah, there might be some code uploaded already on it (idk)
Good luck, and thanks for the video!
Could also add a sphere around the player, and if any object touches the sphere then it loads in, but idk if that works without a server tho?
Idk if a server would even be needed, but I thought a server could also be used to tell the player when the player's sphere(as in invisible zone around you) hits any object that the server sees.
I assume, the player would only need to load what it's told? (idk)
Mb if none of this would even be helpful haha
I can try a mix of loading some assets in chunks and loading some other assets based in distance (like the small rocks and foliage). Sounds like it should help performance.
You lied about scope creep cause everything mentioned in the video had the right purpose and added to the atmosphere of the game making it more immersive.
Optimization is also great and organized. Thank you for the video.
Not really, making a sailing mechanic wasn't in the plans for the game, but it was really fun to create
@@s4bishii Ok how much of the world is water?
@@PutineluAlin not sure yet, but I want to add islands to explore
Wind's Howling!!!
I wish
the lag can be solved using multi threading.... threading is basically letting something process over multiple frames so you are not waiting for it to lead on a single frame, which causes lag. you gotta load and unload chunks in a different thread. i don't much bout it fam, but am sure you can figure it out
Interesting, I hadn't thought of that. I will look into it. Thanks for the advice.
I am not completely sure how difficult this would be, but if the grass could sway in waves when it was windy that would look so cool. Also, game is looking 👌.
It kinda does that right now. Maybe it is not too noticeable 🤔
Reminds me my good old Unity days. I used to spend weeks on World Engine creating massive 100 km2 landscapes with procedural foliage,rocks, enemies etc.
However, after getting the lighting, post processing and terrain just right, I realized I had no gameplay loop in mind. The only thing I could think of was "you live in a huge open world, collect stuff and fight enemies", I figured if it's good enough for Minecraft, it's good enough for me. After months of work, I realized I was absolute shit at animations and my gameplay loop sucked ass and I gave up on the game. Today, Steam is full of games like mine and none of them are doing all that well.
If you wouldn't mind me giving some advice, before placing a single more stick in your game, make at least a combat prototype. Just grab some free simple enemies and some fight animation packs off of the asset store, and start testing and tweaking it. Untill you get the combat to a place where doing it for 5 minutes doesn't make you want to puke, don't work on anything else. People will play a shit game with great combat. However, no one will play a game that isn't fun, no matter how big or shiny your world is.
Absolutely, I understand. Next step is to work on gameplay, no more art for now.
so like... bata test ready yes
YES! no wait...
make it so we can upgrade the boat size for traveling further and give us a random sea storm making it harder to sail if we sail through it
I can make upgrades for speed sure, making the sea storm is a little more complicated, but I'll see what I can do 😁
@@s4bishii art work is amazing btw
if you can create a massive radius around the character and create a bunch of small chunks on your world, and then only load the chunks within the radius of the character, so if your radius covers for example 5 chunks and partway into a 6th, the 6th chunk will be the farthest one to load. that way you can load smaller chunks more often instead of one large chunk every time you pass a specific border. like minecraft render distance.
maybe my chunks are too big to load, I'll try reducing the size
@@s4bishii yeah im not too familiar with how the computer actually processes chunks, but in theory smaller and more frequent chunks should help. love watching the series btw, i like the modern zelda inspiration. i always wished worlds like that had more survival/sandboxy aspects
I am astonished by the amount of work you put in the game and also this video. I am also making an open world game but my progress is rather slow since i am still learning unreal and also i have school to worry about. And i also don't put as much work in to my yt videos. Do you mind me asking is this your job or are you just a beast that goes to work comes back home and develops the game. Also is there a reason why you used LOD and not nanite.
mashallah NICE! BRÄ! VERY GOOD BRATANOVICH!
translation?
verry good!!!:
Allah Akbar!!
Very Nice good work!!
Bratan@@s4bishii
wow🎉. so good update and the game looks near toa beta (if u r doing one). pls make a beta plsssssss.
not beta for now, but there will definitely be one someday
an open world is a lot of work. you feel like generating a fully vivid rich world with tons of events and charecters. Its toooo much work for just one person. I would advice to look at what mechanics you can make be fun and center the gameplay loop around them. With the systems you did already the world looks wonderful and you could already use those for fun ideas. like climbing trees build boats. Make bombs flow to their targets trow the water. its much easier to first find the gameplay loop and only after focus on the world cuz now you know how you want the world to be. It also helps with how high you want things to be. Like how high the charecter can jump. I personally think a tiny world with a lot of it is much better and very beautiful, then a vastly large one that feels empty
totally agree, I'm right now working on some mechanics for the survival game loop (gather - craft - fight) to get a sense of what works and if it's any fun. I haven't decided the size of the world but I wanted to know how big it could be, but this is a decision I'll take after creating the main systems of the game
you can try old method of BSP (Binary space partitioning) optimization method ; in short just separate world into even smaller areas and hide one you cannot look at.
I've never heard of BPS, will look into it, thanks for the tip!
@@s4bishii UE already maintains a BVH of your scene. not needed to implement twice yourselves.
UE is single-threaded tho, while it maintains threads for each major ystem like audio, rendering etc. mostly everything still goes through the main game thread, the renderer will always be 1-3 frames behind.
Also, Async Tasks are disabled in Editor as well as HLODs if you make use of them.
@@MrSofazocker so async tasks and HLODs only work when I build the final game? Any specific reason for this?
@@s4bishii Async Game Tasks are simply not smth the Editor cares about. It until now only has Parallel workers for Lightmap baking etc. to not stall the editor.
HLODs are generated when building the game.
Both are already on the Roadmap for UE 5.4 or future releases.
@@MrSofazocker I see, I need to check the roadmap again, thanks for all the info bro
For the wind system you could just use a vector3 with x component using cosine the y set to 0 and z set to sine. As long as you're passing the same angle to sine and cosine you can simulate wind at any direction. The other nice thing about this a vector3 is a unit vector so handling wind is simply multiplying the vector with a scalar.
vec3 v = vec3(cos(angle), 0, sin(angle)) * wind_speed;
I'm not really sure how to do it in UE blueprints. The above is how I would implement it in c++.
Interesting, do you have any ideas on how to rotate the textures in world space without breaking the continuity of the textures?
I'm adding extra detail to the wind using textures to simulate shadows, but every time I have to change the wind direction and rotate the "shadow texture" it messes everything up.
Perhaps asynchronous loading of the next tile.
Impressive work mate, if you could cast a bit of light to where from you've been getting all knowledge, any tutorials.... that would be great for all of us following you and trying our "5 min" with DevGame. Love the content
Is all stuff I found over the internet: youtube videos, articles, people sharing stuff on twitter, discord servers, etc.
You can join our discord to get some directions there, there is a channel dedicated to share interesting resources we find online.
The Randy clip lmao
😂😂
how did you get the tree and floor to blender together like that...
Using Runtime Virtual Textures. There are a few tutorials about that in youtube.
@@s4bishii thank you for telling me what its called :D i will look it up
I guess to solve the loading chunck you need to move the code to GPU side
could be 🤔 I need to research more
The problem with the lag when a chunk Is loaded Is because too many objects are loaded at the same time (sr for my english, i am italian)
I could try loading only a few objects and see what happens (your english is great 👍)
cell shading
kinda
Loading maps being laggy is solved by threading. Look up threading.
I will
leaves fall off when there is tense wind👀 or when winter arrives👀
oooooh I forgot about falling leaves, thanks! I'll add them 🍃
@@s4bishii I don't wanna sound like I am demanding you or anything like that, I am just saying.. This is your craft, do what you want
10:50 is there a reason why you aren't a texture for grass? this seems like it'd be very inefficient in the long run and bog down the fps significantly.
I needed more geometry to create a convincing wind effect and for when the character deforms the grass, but I can try to create planes for the distant grass and save some fps. Let me see what I can do.
I have absolutly* (not even auto correct wants to correct it) no clue how to do any of this but, depending on how large the land is going to be you could use a 2D texture for the land far away and not load any objects there, not rendering anything behind the land and removing all coalition. Along with that, use extreme culling to remove anything far away enough from the player and anything not within their cone of sight.
I'm going to make a font file or something, might give up though whilst looking for or logging on a program that lets me though.
I don't think you can make that for complete landscape regions but it is useful for individual elements like trees and big rocks. I need to work more on that
Is there a form of visual coding done in UE? Is that what those graphs are with all the lines connecting them?
Yes, it's called Blueprints
Really cool! Did you tried Nanite?
Not yet, and I don't think I need it, I don't need that much level of detail in my assets
@@s4bishii I agree, but maybe it can solve your loading region lag, I don't know what I am talking about, just an ideia S2
@@WanerRodrigues I could try sure, I don't loose anything
Now add some cute fluffy sheep that u can pet
mmmmmmm
You need to do what Nintendo failed to do. You need to add fishing and the ability to pet a dog.
You can fish in Zelda though
@@user-hm6kl4mr1o not the last two games for some stupid reason.
It's in the plans 🐟
For the chunks loading in, why don't you have the chunk load distance a little more than the view distance there fore make it seem it is quick in loading new chunks, not breaking the players immersion. Just have to fix the small stutter if there is one
Yes, chunk load distance should be a lot more distant from the camera, but the biggest problem is the hick that it creates when loading the new chunks.