Комментарии:
Thanks for sharing this. I'm probably going to need to do something similar pretty soon.
ОтветитьI reached this video through git-amend's Unity tutorial series. Very cool to find these places with attention for best practices and solid development outside my regular ecosystem
Ответитьnow I have to learn all this
ОтветитьGreat solution, liked and subbed :) Any progress on the occlusion problem ?
ОтветитьHey Kyle thank you for the great video! I am glad to see you're making good progress!
ОтветитьThis was awesome to see your thought process through this problem! Something I noticed at the beginning was how you were able to have an area of color around the player and everything else was grayed out. How did you manage to do this? I had an idea for a game that incorporated that but didn't figure out how to do it!
ОтветитьFor the teeeny tiny subset of people who will be implementing world streaming in their own projects - this was dope. Thanks!
ОтветитьI have one doubt, why you did not used occulsion culling, that would have been no effort optimization?
ОтветитьCould you please make a tutorial about world streaming?
ОтветитьWhat is that FPS monitor you have? Custom or program?
ОтветитьOne thing about the flags that I worry about is if you have a new game+ or exploration mode that lets you go from island 1 to 6 at times you are not expecting. Definitely a good idea to tune this to your artist vision of the game, but it's something to keep in mind.
ОтветитьAlternate title:
Competing with Unreals Streaming system
This is the part I fear most about gamedev
ОтветитьStarted using your SceneRef Attributes thanks for the repo! Great job as normal.
ОтветитьGreat job!
This is the main problem of Unity... you can do fantastic things but... you have to do them by yourself while such features should be included in the core engine by default.
It's just wow. Btw I really like the art style of your game. Could you tell me if these textures are from some package or you created it by your self? I'm especially interested in this rock texture because looks really great.
Ответитьblend into idle a little bit hard
ОтветитьAre you using addressables or similar in order to load things in and out of memory? If you're splitting the world into chunks and loading unload via unity's sceneloader, no memory is released again.
ОтветитьSo... a fix to your problem.
The K-nearest is likely to generate better results than manual at times. Why not use the groupings for scene organization for creation. And the K-nearest for the final output?
World streaming is something I really don't know anything about, and what you've done here seems so far above my current understanding of programming, memory, and Unity as a game engine that I could only really get a vague understanding of what you did and how it works, but I like that you put some effort into optimizing your game! Some devs just don't.
ОтветитьHave you heard of ChatGPT? It might be able to help a lot with coding and issues surrounding the finer points of data management.
Ответить8.5+gb of mem to 1.2gb roughly... Thats freaking awesome :D WELL DONE!
Ответитьhey! can you show the process of making the animal fur? Im trying to achieve this "cartoony fur" and i cant even think where to start <3
ОтветитьSuper interesting video as always! Will definitely use the auto setup attribute! 🙏
ОтветитьThis video is the dark side of game dev. Working thousand hours for something needed that the player will never see ;), very nice video !
ОтветитьGreat devlog. Quick question: Why did you use customs annotations for the GetComponents? Could't you just do the getComponent in OnValidate()? Or have a base class that takes the option where to search and uses it in OnValidate?
ОтветитьGreat video I love this kind of technical in depth. I have a question though, doesn’t Unity have « Adressables » to manage the load and unload of assets very efficiently ?
ОтветитьAwesome to see how you've handled streaming. I really like the Nearest neighbours algorithm you described and why it's not useful for you. Good luck with those future problems!
Ответитьif you have lot of stuff, culling objects by bvh will make you draw pixels just once, even 4K has only 8M pixels, you dont have to draw 100M of pixels in vain, remove all over-draw
Ответитьthis is so cool!
ОтветитьVery impressive tech behind this game
ОтветитьHello, I was wondering what kind of grass do you use? It seems to me you use a grass mesh and a custom shader? My own game has the typical unity grass and I just want to burn it, do you have any resources or guides as to how to achieve that beautiful, smooth and clean grass? Thanks!
ОтветитьHey, I haven't watched one of the devlogs in a while, so I'll have to binge-watch them haha! As somebody who loves border collies, I was wondering if you can crouch down and herd stuff. Personally, watching them focus and get into position is really cool to watch, and seeing it here would be cool as well. Thank you!
ОтветитьI like this video
People usually don't realize that adding content or features into the game is only a small part of the development. All the work behind the scenes takes time and some smart engineering while providing no noticeable difference for the player (unless You don't do it and the players will just scream "You can't even optimize a game")
Hey Kyle. I know you probably hear this a lot, but you deserve much more interaction with your viewers. This game looks amazing and I can't wait to play.
ОтветитьNeeded to spend more time on that coo
ОтветитьNice vid! How do you make sure that no scene gets loaded twice? We sometimes have that occur since Unity does not have any way to see if a scene is already being loaded.
ОтветитьI feel like it shouldn't be based on position, it should be based on vision ; based on movement data, predict position of player into the future. If any object is visible from the player's future position, load it. Sort of like foveated rendering. That will handle occlusion and not require you to make fake islands.
Ответитьnice solution to the stuttering!
Nice work dude! This looks fantastic!
For occlusion you might wanna check this new asset: MF.SSGI - URP Screen Space Global Illumination - Occlusion & Raymarched shadows
ОтветитьThank you so much for building it for mac! I know were a small community, but it's nice to not have to use wine
ОтветитьCould ou show us hop you did the foliage (animated grass and trees)?
ОтветитьI have been developing my game for over 1 year now, and watching this made me realise that there is so much to it when it comes to optimisation
ОтветитьNice Devlog I hit the bell straight away I also just worked on a chunking system for my game and went a completly different way with it I am using a custom dictionary whicht always keeps track of the chunks loaded in, the catch is once a new chunk gets loaded the oldest chunk gets removed from the dictionary, I got around the stutters that way since like this I can assure that there is always only one chunk in the process of loading or unloading simultaneosly also I am not checking what to load on every Update but on a fixed intervall (once per second). Btw I want your grass it looks amazing :D
Ответитьnew sub, I learned some new stuff thx
ОтветитьAmazing work! I love these more technical devlogs. And you solution for the components is genius, definitely going to look into doing this for my own project.
ОтветитьWhat was your decision to use ECS Sub-Scenes instead of regular scenes? Have you experienced issues with having the GameObjects being converted to a ECS format?
Great video!
I'm so glad I switched to dots now. The OO workflow is just chaos by default and Unity not having something like this (or at least validation) build in makes it worse.
Ответить