so glad you took the time to explain what instanced meshes are
@murnoth2 жыл бұрын
I don't know whether its that I know more now than months back, your common accent, or how well you explain and cover all this, but you are extremely helpful
@stayathomedev2 жыл бұрын
Thanks! Glad it's helpful!
@murnoth2 жыл бұрын
@@stayathomedev would you happen to know how I might be able to pair-up my grid tiles with an adjacency matrix to practice path algorithms on? Not for anything specific, I just want a way to visually see a shortest path highlighted and I'm just trying to get some kind of system to cross it over to tiles.
@DefinitelyNotMike8 ай бұрын
Great video series. It's refreshing that you actually explain how the engine works and how to optimize. Most videos I see are hacky approaches which is annoying as beginner trying to learn the proper way to do things.
@Bizob2010 Жыл бұрын
Any chance you could also do a tutorial on how to make the really pretty water & grass materials like you did ~ 8:59?
@reiserthomas Жыл бұрын
@stayathomedev , great video. But there is one thing I don't understand as a UE newbie.. Where is BP_HexTile used exactly? BP_HexGrid uses the HexTile mesh to render the grid and I don't understand where I can use the BP_HexTile to manipulate the single tiles.
@Bloodwurm74 Жыл бұрын
I think you are meant to drop the BP into your level directly. That's what I've been doing anyways. Since he builds the BP through the construction script, just dropping it into the level is enough to make it work. If you'd like the grid to not always be there, you'd probably want to find another way to spawn the BP in your logic. Hope this helps.
@waltch57116 ай бұрын
@@Bloodwurm74 no it doesnt work I dont know how the BP_HexTile and the BP_HexGrid are connected
@robinj6997 Жыл бұрын
Thank you! Worked great and I'm learning a lot. Gonna plow throw this series and see what I can achieve
@Im_Derivative4 ай бұрын
I am having an issue with my Tile_BP. I have set everything up in the same way, but for some reason when I check the "Instance?" box everything just dissapears. If I disable either the set node with Base Water Height float, or the Set node with Tile Height, half of the hexagon grid appears for either after compiling, however neither are effected by the height strength variable. Am I missing something? I feel like I've watched from 10:07 to 11:43 a million times and everything looks identical.
@Im_Derivative4 ай бұрын
Okay this is weird, they're just very very tiny. anyone have a fix for this? Seems that the scale is broken
@Bizob2010 Жыл бұрын
So, I tried the changing the material color based on height, but it doesn't change the hex colors. I was asking on the Unreal discord, & someone was saying something about making sure a dynamic material instance was created at run time? Any idea what I could be doing wrong here? My elevation parameter also had a default value box underneath, could that be related?
@tonylanglet6 ай бұрын
Great tutorial, but it would be great to be able to reach the source files, they can't be found on your patreon side and the Discord link provided has expired or been used the maximum amount of times.
@łłłł-s2x5i3 ай бұрын
Are there any tipps to further improve the peformens after 4200 tiles it needs quit a few sec to load and if I make like 10k I get no responce from UE
@DharmaBumm2 жыл бұрын
very nice, i work procedural workflow in blender and want to switch to and be able to create in unreal. unless there will be a way to transform geometry nodes system into unreal engine, until then, these videos are so helpful, thanks a lot, way you explain is clean and on point.
@stayathomedev2 жыл бұрын
Hey! Thanks! Glad you are finding them helpful. There are some procedural mesh nodes available in Unreal to construct meshes at runtime. You obviously have way more control in C++, but there are ways to procedurally generate geometry.
@chriss-fox Жыл бұрын
A small newbie question here, How do I make the connection between the Material and the Blueprint. I am a bit confused and I can't find the right words to search on google
@chriss-fox Жыл бұрын
After playing around by myself... I figure it out :)) I just forgot to assign the material to the mesh hehe :3
@Bloodwurm74 Жыл бұрын
@@chriss-fox You could have also called Set Material after the call he shows to Set Material Mesh.
@devrow2 жыл бұрын
Lunch break over... Video is finished and just one bug... My instanced meshes are really small and I don't know why.
@stayathomedev2 жыл бұрын
Hey! Check the scale of the instanced meshes in the BP, both the parent object and the instances. Then check the size of the actual mesh being used. If you head to the discord server, you can send a screenshot and I'll help the best I can.
@javascripted_14 күн бұрын
Has anyone found a decent solution to spawn thousands of these meshes at runtime quickly? I seem to be up against a wall where I can spawn about 150 every .5 seconds to not tank framerate. I have debugged my code heavily and found that two nodes are the culprit. The "Add Instance" and "Set Custom Data" nodes take up 98% of time. Calculating the noise is nothing relative to the spawning of the mesh and assigning a material parameter. Once the tiles have been spawned, my framerate is great, but the spawning of them is causing heavy lag spikes unless I slow it way down through loops with delay. If I wanted a system to spawn the tiles around the player as the player moves, I need to be able to spawn and despawn more than 150 every .5 seconds. If I sprint I can run right off the playable map before the tiles get a chance to spawn.
@PerceptiveTT Жыл бұрын
By the way,How do I add rise and fall animations for instance? This question has puzzled me for a long time.I try to use "Random float in range"and add time line,sine etc.But it didn't work out very well.
@ec1467 Жыл бұрын
I'm trying with just 10k instanced meshes (the chamfer cube) and its chugging pretty hard on construction, and whenever I click on the component in the outliner. Is that normal?
@ec1467 Жыл бұрын
Found IT. In CPP You have to set the UPROPERTY on the UInstancedStaticMeshComponent to VisibleDefaultsOnly UPROPERTY(VisibleDefaultsOnly) UInstancedStaticMeshComponent* InstancedStaticMeshComponent; If you dont the cpp will act way slower than the blueprints.
@stayathomedev Жыл бұрын
It's definitely not fully optimized. Instances work great until you're in closer and half the meshes are behind you. I'd probably chunk it a bit more into segments so you're never loading more than so many at a time. Something to look into for the future. Thanks for posting the fix!
@ec1467 Жыл бұрын
@@stayathomedev Doing UPROPERTY(VisibleDefaultsOnly) hides the big giant array of transforms you get when you load up a bunch of instances. Apparently, that's a nono in the array control in the editor. It fixes ISM, HISM, and Light Weight Instance which all generate a big ol list of transforms. I haven't tried chunking yet it'll be something to look at If I need to proc gen more.
@AMobOGobos Жыл бұрын
For some reason my water tiles aren't getting the wave noise individually. Instead, the normals are being applied once to all of the water tiles as if they were one object. Can you point me in the right direction?
@vicwaberub52972 жыл бұрын
Which Kind of Instances are the best? ISM, HISM, Auto-Instanced or Light-Weight Instances?
@stayathomedev2 жыл бұрын
Depends on use case. I'm using instanced but may switch depending upon tile interaction. What's your goal?
@vicwaberub52972 жыл бұрын
@@stayathomedev I want to make a procedural tile based game, but I want to manipulate the tiles. There are new light weight instances, but only one dev make two videos and they seems to have some problems until now. The light weight instances can be converted into actors automatically. Thats sounds interesting.
@chejery972 жыл бұрын
Great video! Is it possible that the random height modification broke the Scale-option?
@stayathomedev2 жыл бұрын
Hey! I literally just checked because of your comment and...yes...I need to consider the overall scale and adjust the noise scale as well. I'll play around and post a fix.
@chejery972 жыл бұрын
@@stayathomedev That explains why I was losing my mind trying to figure out why it stopped working haha! I've tried to recreate everything so far on my own and thought I messed up somewhere on the way. I tried to fix it by splitting the "New Instance Transform Location" in the "Update instance Transform"-Node and connecting the X & Y pins directly back to the width/heigh displacements but (seemingly logically) that resulted in the same problem. I'm working on a small project which will have tiled levels (but free movement) after not having actively worked in Unreal since ~4.19 so your channel is an absolute lifesaver!
@stayathomedev2 жыл бұрын
Just at first glance...the noise scale needs to decrease when the scale increases...will figure out the function and post it....For example...setting the Scale to 2 and the noise scale to .25 recreates the noise pattern to scale for me.
@chejery972 жыл бұрын
@@stayathomedev After working on it some more it seems that my problem with the scaling of the hexes seems to have fixed itself somehow, but now with it working I see what the problem you're describing with the noise scale seems to be (with the effective noise getting smaller when the scaling is adjusted as the noise is absolute). Though I've also run into something else that I can figure out, after integrating noise via the add-on in Video 3 your hexagons are scaled in height while mine are just put in a different location (resulting in holes/flying hexagons) - I can't figure out when/where you made a change (if any) that results in this 😅.
@stayathomedev2 жыл бұрын
Here's a BlueprintUE link to the full hexgrid BP: blueprintue.com/blueprint/2nvflrv3/ You might be adjusting the X and Y locations as well...the noise only affects the Z axis in the linked BP.
@urakhistvanito9 ай бұрын
this comes really handy! thanks very much for the video!
@loiccaval71502 жыл бұрын
Great video again !! :) I have a lil question if you have time... I was working on a grid a bit like yours (and i would have loved to see your videos sooner xD) but i think i can't use instanced mesh ... because i need to access on each tiles separately (for having a context menu and other stuff like this)... so actually i just use a blueprint who spawn each tiles as actors, wich contains statics meshes... and for the performance, i just pray for the god "Nanite" xD Do you think there is a better way for me to deal with ? (sorry for my english)
@stayathomedev2 жыл бұрын
Hey! I'd have to check into Nanite and see what it does for rendering time. I've JUST moved up to UE5 so still playing around with things. Regarding your examples...you could use instanced meshes (depending on what functionality you need when accessing each tile) and whenever you interact with a tile instance (collision, click, etc) you can actually SWAP out that instance mesh for a static mesh actor that can be manipulated more easily. Then return back to an instance when done. You can also get decent mileage out of custom data values. I will actually be touching on the swapping example in an upcoming video because I want to be able to interact with each individual tile also!
@loiccaval71502 жыл бұрын
@@stayathomedev interresting ! Thanks for the answer, and i'm waiting for your next videos
@iddkfa8032 жыл бұрын
@@stayathomedev Haven't had the time myself to check it out, but there's a new feature since 5.0 called 'Light Weight Instances'. It suppose to allow you to swap between an Instanced Mesh and an Actor. So, much less manual labour. Also really good production on your first view videos 🙂
@stayathomedev2 жыл бұрын
@@iddkfa803 Thanks! I appreciate that! I've done some brief research into the "Light Weight Instance". Will definitely check it out more once we begin interacting with all these tiles we're creating.
@Skeltcher Жыл бұрын
9:10 What is down there? >.
@witosnaw11 ай бұрын
What annoys me in such films is that a professional shows fragments of a blueprint and then we don't know why it doesn't work.
@jeremyrikki Жыл бұрын
i can not get the ISM to assign right color to elevation at all not sure what I'm doing wrong follow vid 3 times any one else having trouble 5.1
@mioukon2 жыл бұрын
I followed the tutorial, though my tiles are still changing hight when dragging. I've deactivated the setting like you showed in BP_Tile, unfortunately it doesn't have any effect. Also, the BP_Tile child actors nested under BP_HexGrid in the Outliner are all named "BP_Tile", without different numbers. Is that the reason - and if so, how can I fix it?
@stayathomedev2 жыл бұрын
Did you uncheck the construction update on move option?
@yDahll Жыл бұрын
Had the same problem as you, I fixed it by deactivating it in the BP_Hexgrid and not in the BP_Tile file. The Hex grid handles the generation, that's why it kept updating while moving.
@VictoryOTP_3 ай бұрын
Is your discord still active? Link is dead
@realgergelykissАй бұрын
0:44 Media Offline
@waltch57116 ай бұрын
PLEASE FOR THE LOVE OF GOD LINK THE FILES TO THIS PROJECT CUZ THESE VIDEOS DONT SHOW SHIT
@dreamentstudios8 ай бұрын
I cant get my instances to show any material... The height randomizer works fine, but no materials. I've watched the videeo multiple times and have exactly the same settings as you do in the video. Any help?