You got great pacing. Enough details for me to learn, but not too much detail to get bored. I enjoyed watching this. Thanks 👍
@lidyaputriandriani52952 күн бұрын
I use iinteractable but i also create the interact monobehaviour to create unity event on interact function
@palanolho823 күн бұрын
Tried to use your approach to make an icon follow the mouse cursor (like adding some flair information) but I'm experiencing a delay when I move the mouse, like the icon is dragging behind and then catching up. (I'm using the Mouse.current.position to the mouse position - using the new input system) On your video, the image seems to be following perfectly with the mouse. Any idea what the problem may be?
@jjaneaux3 күн бұрын
Everything was working perfectly until I was editing the scripts for this video, and now I am getting several ambiguity errors. I even checked the scripts provided on GitHub and they are exactly the same, but still getting ambiguity errors in both the InputManager script and the PlacementSystem script. Any suggestions? Edit: Leaving up in case anyone else has the issues - somehow my Scripts folder got duplicated, along with the scripts. Problem fixed. :) Great tutorial, too!
@ShadowkingX3 күн бұрын
Is there a version of this for 3d instead?
@SunnyValleyStudio3 күн бұрын
It could be reused for 3D but usually the problem is that you can't just walk "up" - you need a staircase or sth. So you usually use an A* algorithm for pathfinding in 3D and use this as a solution to make the NPC more consciously avoid obstacles around it. Usually this means that you only detect obstacles that are close and that are relatively on the same level. I will try putting up a video together about the 3D implementation 🙂
@ShadowkingX3 күн бұрын
@@SunnyValleyStudioThat would be great thanks!
@notagamedev54945 күн бұрын
Does it work with UI objects also?
@SunnyValleyStudio4 күн бұрын
With the old canvas system yes. I am not sure with the UI toolkit
@PhiLudo5 күн бұрын
HALLELUJA!
@SunnyValleyStudio5 күн бұрын
yes!
@XAHAK6 күн бұрын
you still need to get the naming right, i would not even look at the object's names while level building
@SunnyValleyStudio5 күн бұрын
That is true
@grzegorzpedrycz26306 күн бұрын
Is the UI Toolkit in Unity 6 finally 'production-ready
@SunnyValleyStudio5 күн бұрын
It still doesn't support WorldSpace UI (no VR or a healthbar above enemy head in the world space). That being said the USS workflow makes it really appealing to make a Menu screen. So you still will need to use the old Canvas system at times.
@simsimsim-n2t6 күн бұрын
is it available for webgl?
@SunnyValleyStudio5 күн бұрын
I am not sure about the webgl but I believe that with WebGPU enabled (the new backend) it will be available / working in webgl builds
@fernando32896 күн бұрын
Perfect! tysm
@SunnyValleyStudio5 күн бұрын
Glad its helpful !
@viniguerrero6 күн бұрын
How can we generate meshes for rooms if we’re using the random walker algorithm for rooms and they’re not square shaped?
@SunnyValleyStudio5 күн бұрын
You could generate square meshes from it and use greedy mesh algorithm or kzbin.info2QY5jphJt5U to combine all those into a single room mesh. It might be difficult to apply the material correctly to it though. You could also calculate all the "edge" vertices of your generated space and create a big mesh from it and use some algorithm to separate it into triangles or quads. THB I have never done this so I can't tell for sure what is the best approach.
@viniguerrero4 күн бұрын
Awesome, thank you@@SunnyValleyStudio it's gonna be hard but at least I know what to try out now.
@Arkrevive109 күн бұрын
AAA title game studios are gonna be Sacred of him now bro really deserve more
@SunnyValleyStudio7 күн бұрын
I appreciate that 🙂
@AlMgAgape9 күн бұрын
Why not just change color to white and back to normal again
@SunnyValleyStudio7 күн бұрын
You mean inside the SpriteRenderer? You can only make the sprite black this way. White is the default color.
@petterlerdahl11939 күн бұрын
I still get my roads in the air, outside of the area, bottom right corner. Could it have something to do with + and - values? But i dont see where it is wrong. Have checked the code on x and z and the one place that has y. and it is correct
@SunnyValleyStudio7 күн бұрын
This kind of thing happens to me when i mix the Z and Y coordinates as i work often in 2D and in 3d I forget to put (X, 0, Y) in a double for loop. I hope it makes sense? I don't think we did anything complex here to cause this outside of some simple error like this 🙂
@Necron1018Gaming9 күн бұрын
I think at your Line 63 (if statement) at 5:00, you stated (yMin - offset) and I think it should be (yMin + offset) like you had for X. Each way should work regardless. I've really been enjoying this series and am planning out a personal project using this :D
@SunnyValleyStudio7 күн бұрын
Thanks for the feedback! I'm really glad that my tutorial is inspiring you to make your own game based on this 🙂
@MAGNETO-i1i10 күн бұрын
"EASY"
@IWan_Kapadi.487410 күн бұрын
Can Someone Give me the Full Script?
@Icewind00710 күн бұрын
Ok, just tried this, and I already really like it! I was even half way into creating my own AI system and was getting overwhelmed, and I recreated it in this so much more cleanly.
@SunnyValleyStudio7 күн бұрын
Yeah I get the same impression. This system really helps me to focus on the ai logic instead of creating an AI framework to run the logic 👍
@ECAKJ10 күн бұрын
Do you have a video on 2D ai. I’m kind of new and thought navmesh was 3D
@SunnyValleyStudio7 күн бұрын
Yeah navmesh is 3d. I will have work on a more step-by-step tutorial just after Crazy Games game jam ends at the end of this week 🙂
@mysteriumxarxes399010 күн бұрын
NO DONT USE LIGHT PROBES NOOOOOOOOO
@MyDrTech10 күн бұрын
great
@SunnyValleyStudio7 күн бұрын
Thanks for the comment 🙂
@SaphireDO11 күн бұрын
Hello i get 1 warning and 1 error, sometimes when i swap items it says this ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection. Parameter name: index And i have this warning Unreachable code detected at line 33, in your gitthub InventorySO
@SaphireDO11 күн бұрын
Should i delete line 40 from InventorySO?
@SaphireDO11 күн бұрын
I get ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection. Parameter name: index If i swap empty slot with empty slot.
@SaphireDO11 күн бұрын
How to add check if slotisfree != true
@purnabratakar717611 күн бұрын
Could you make more in-depth tutorial on this package for Conditionals, Aborts and the FSM switch implementation? This package is very similar to BD and I would like to learn more, but reading through docs is really not my thing. Great Video.
@SunnyValleyStudio7 күн бұрын
I will definitely have a longer series about AI in a 2D game later this month 👍I might tackle a 3d project afterwards.
@palanolho8211 күн бұрын
Do you know if this works with other navigation systems like A* Pathfinding asset ?
@SunnyValleyStudio7 күн бұрын
I doubt that there is a premade integration. You can definitely create your own nodes and integrate both systems 👍
@JP-vi9mw11 күн бұрын
im subscribing
@SunnyValleyStudio7 күн бұрын
Awesome! Thanks 🙂
@yashkhd110011 күн бұрын
your content is always unique...something that u won't find easily..Thanks..!!! I wonder if we can expand this series to implement full procedural levels similar to Valheim
@SunnyValleyStudio7 күн бұрын
Thanks! I would love that 🙂 Unfortunately those procedural systems takes a lot to create and test and those aren't the most popular videos (unless you recreate something like Valheim 🙂). I will definitely consider a larger project like this 👍
@yashkhd11007 күн бұрын
@@SunnyValleyStudio Yes that is true...creating a Prod. ready parameterized world generation system is lot more involved...!
@brutalgamer150711 күн бұрын
How can I add element in it during runtime I am using a class of there coordinate and distance how can I add them is my list runtime
@SunnyValleyStudio7 күн бұрын
I would suggest to use docs.unity3d.com/ScriptReference/ISerializationCallbackReceiver.html to modify some private list in your code when you modify the serialized list. You could just drag and drop at runtime but you need to ensure that your code doesn't cashed the "count" or index (which your often would). It's safer to manually update everything to avoid null exceptions.
@naletovps11 күн бұрын
thanks
@SunnyValleyStudio7 күн бұрын
Thanks for watching!
@FlyMiCatyup12 күн бұрын
I cant get the suggestions to show up in vscode
@SunnyValleyStudio7 күн бұрын
I think you need some extensions in vscode to have the same amount of quick help as visual studio 2022 offers. I believe that Jetbrains Rider is now free for non-commercial use and it has the same level (or better) of refactoring's.
@weischreiner12 күн бұрын
9:45
@thepolygonpilgrimage12 күн бұрын
One downside to this is now that you have one larger mesh you lose some of the gains from occlusion culling so do this with care and occlusion culling in mind. Great presentation!
@SunnyValleyStudio12 күн бұрын
You are right. Thanks for pointing that out 🙂
@thomasshaw485512 күн бұрын
The million dollar question...can you update the graph while in playmode and have the behaviours update in realtime (without having to jump in and out of playmode).
@SunnyValleyStudio12 күн бұрын
Hey! I don't think you can. I am pretty sure that you can swap graphs at runtime so you could potentially create duplicate graph and change something there - but I am not sure it you can and if at this point it isn't easier to just stop and start the project again.
@MalikenGD12 күн бұрын
This is fantastic
@SunnyValleyStudio12 күн бұрын
I appreciate the comment 🙂
@denver_839712 күн бұрын
head blown
@SunnyValleyStudio12 күн бұрын
Yeah. Not the most useful tip but something worth knowing when working with shades 👍
@denver_839712 күн бұрын
hey sunny, may I ask, will this amazing method also work on some objects that are apart in distance? just asking, thanks!
@SunnyValleyStudio12 күн бұрын
In theory I think it would. In practice unless its some specific case where it would be beneficial I wouldn't do it that way. Someone else has mentioned that we lose the benefit of occlusion culling if we do that - which is acceptable choice at times.
@kahate732813 күн бұрын
amogus
@arthurjvnb13 күн бұрын
This technique is essencial for optimization, but not all static objects should be occluders and occludees. The two most common examples that I encounter are: - if a small object is marked as Occluder, it might wrongly occlude larger objects, causing visual glitches. - Sometimes even big objects shouldn't be occludees because they might cause some negative visual impact on the scene if they disappear (shadows may noticeably disappear and the player might notice). After marking them, it's good to test with the camera in different (weird) angles and positions to see if it causes any visual glitches. And preferably, configure each object, one by one (not letting to do that optimization only after the scene completion). This technique is imperative to know and use for you game to be professionally made and be well optimized. I always mark both and then start to check if I have any objects that I want to unmark it. Most of the time I just unmark "Occluder" from small objects. I'm glad you are spreading the word about each technique. I like to watch your shorts, even if I do games myself for a long time, because sometimes I learn a thing or two from these videos. And that's awesome! :D PS: I'm not a native speaker. Please forgive me if I made any misspelling.
@SunnyValleyStudio12 күн бұрын
Thanks for explaining this 👍
@arthurjvnb2 күн бұрын
@SunnyValleyStudio :D
@nibiruimagineering13 күн бұрын
Oh cats! I gotta looking to this
@SunnyValleyStudio12 күн бұрын
Thanks for checking out my video 🙂
@reqi58913 күн бұрын
Thanks for the tutorial, is it also working with a 2d platformer and if yes could you do a tutorial?
@SunnyValleyStudio12 күн бұрын
It works with all types of projects. You just need to specify the logic 🙂 I am preparing a step-by-step tutorial about it. I just need to work a bit more with this asset. 👍
@DorisRomano-e5b13 күн бұрын
This tutorial really boosted my knowledge!
@SunnyValleyStudio13 күн бұрын
Glad to hear it! ❤
@ApollousasBear13 күн бұрын
What sprites are you using at the start of the video? I am sure I have seen them somewhere before but I can't quite find them.
@NguyễnTrung-s9c13 күн бұрын
Hi Bro. How about performance of this package? Can you test with larger object at runtime plz. Thanks
@SunnyValleyStudio13 күн бұрын
Yeah I am going to try creating a larger project and do a step-by-step series about it. I will research performance as well 🙂
@TusharDharashivkar-p3e13 күн бұрын
What's the AI in it? It seems more like visual scripting..
@SunnyValleyStudio13 күн бұрын
I supposed you can say that. I have implemented FSM, Context Steering and Behavior Tree through scripts and I would definitely preferer using this package instead to give some behaviors to my NPCs
@matt46O5 күн бұрын
it's AI as in Video game AI if you want AI like chatgpt for unity there's muse
@정동우-n2x13 күн бұрын
Cool!
@SunnyValleyStudio13 күн бұрын
Thanks for the comment 🙂
@정동우-n2x13 күн бұрын
@@SunnyValleyStudio I've bought all your courses, and I'm thinking that this AI course will also come out. I'm waiting.