Fantastic! I'm constantly amazed at how fast this technology is moving - but more than that, the generosity of creative individuals like yourself sharing their skills and experience so that us noobs can rapidly evolve our own projects. Thank you Aziel, this is awesome.
Absolutely happy to help!! If I can help one person make something awesome as a result that is totally worth it! You all are an awesome community, so it makes it easy.
To save some nodes. Instead of altering the bounds of the initial seeds, select the distance node and set the "Source Shape" to center. Also, with the named reroute nodes. They dont need to be connected to anything going out. So long as they have something going in, you can reuse the output anywhere.
Thank you for this very useful tip. I was using it inconveniently as a node to change the contrast in a complicated way, but I think it will become more accurate this way.
I made a similar setup not to long ago. But I was using spline surfaces and projecting to get the grids on a surface. Worked well even if not doing every point caused some to slightly float.
Thanks for another great tutorial. I have a question to make the grass landscape even cooler 😎 is it possible to apply a global noise using world coordinates to give the grass color variation, or would that be done within the material?
Question ⁉️ : What about generation of HLOD for foliage? For foliage not in the distance instead of nothing? Also second question ⁉️: When you did the copy points, for the random points outside of the main point, can I have different meshes? like a Tree with stones and trunks around it?
This video and your Zelda inspired series have both helped me incredibly. I seriously went through each one at least 10 times as I refined my landscapes. not sure if this approach is optimal or not, but I have an "interactable" landscape and cannot use the mesh spawner. So I have to use Spawn actor, but it only allows one type, I want to place many. so in some cases I have a very granular "Density Filter" with a tight range so it spawns one type, then I branch of a few more density filters to place other types, like Sticks, collectible rocks and so on. I'm just wondering if there's a better way to drop Actors without them all spawning on each other.
Hi! thanks for the great tutorial, however I have a question. Would this be a better approach performance wise than using Landscape Grass Types? that is what I use for my cover foliage such as grass, rocks that sort of thing but I do like this approach as well, it just seems to have a bit more of a lengthy setup, which is good as it offers much more personalization but I just wonder what advantages other than capability for personalization. Thank you!
Youre videos have helped me immensively. I've combined this with VRTs and am getting some really beautiful looking levels, with decent performance. I bit the bullet on dynamic sky and wow it makes a big difference. Im wondering, is there a way to make meshes for say the "whiter" nodes and other meshes more likely for the denser/"blacker" nodes?
Really Great video! One question, for a very large landscape (4km x 4km), is it ideal to have only one PCG volume to generate everything (grass, rocks, trees, plants, etc)? The way you optimized I didn't knew yet, it's really great, although I think we can't do the same with trees, otherwise they will disappear more noticeably. And about the generation, after generated, everytime the level loads, does it need to generate again? Thank you for the content!!!
Hey yeah I am not sure I Would use a small grid size with trees, partitioning will still help because of how it breaks up the pcg volume for large areas, but yeah maybe have a different very large grid size for the trees so you don't see them popping in. I am still researching techniques on this front, maybe have some new videos soon!
Thank you very much for your video; it's truly amazing! I have a small question: I’ve generated a very, very, very large terrain, and I want the PCG to cover it entirely, which I’ve done. However, when I’m in the editor or even in-game and move very quickly in the area-even very high above my landscape but still within the PCG volume-my FPS drops from 100 to 5, haha. I imagine that as I move, the PCG generates a lot of points because I’m using runtime generation. How can I optimize this? In my case, if I’m flying a plane in my game, since the plane moves fast, I get 5 FPS, which isn’t very playable, haha.
Quick tip for those who can't see PCG grass in sequencer during rendering. If you turn on Game Overrides it automaticaly will switch on "Disable HLOD" if you turn it back off - Then grass should appear again.
I've found that using pcg for grass on larger maps struggles with max instance counts where as Grass layers do not. the PCG is loads better for variation control etc so I will try the methods in this video and see if it copes with larger worlds (I'm not talking huge, pcg grass normally fails around 9km2 and I've got 64gb ram)
Hey. Perhaps this is a stupid question. Lets say you use 4 different grass meshes for one pcg like the one you´re displaying, is it more efficient to create a new pcg for trees, bushes or should you just create a new nod "string" within the first grass pcg? Best Regards
I was struggling with the debug view in my version of unreal - my fix was changing the nodes 'Scale Method' from 'extents' to anything else. I used 'relative' cause hey why not.
Is this really a better optimization than using culling distances on the mesh? Personally I'd feel a lot safer knowing the overhead of spawning was a one-time payment. The thought of running a real-time pcg in a production game that is frame sensitive seems like a bad idea to me.
You'll still have an overhead of "actors" (transforms, mesh settings etc) persisting in the world. When using grid runtime setup these "actors" will spawn/despawn everytime you trigger generation in the next grid
Using the "Generate on Runtime" option causes issues with the Attribute Filter, making the landscape layer attribute invisible. In both the editor and standalone builds, the grass simply does not appear, and the following warning is displayed: [PCGRuntimeGenPartitionActor - AttributeFilter (layername)]: TargetData doesn't have target attribute/property 'layername' Does anyone have ideas or suggestions for resolving this issue?
I followed this Tutorial to a T, but for some reason I can only debug the Surface Sampler Node and every Node after that I cant debug and wont show up. Therefore my static meshes also dont show up when I place them in the Static Mesh Node. Does anybody know why this happens? Im on Unreal Engine 5.3
Hey, not sure exactly, but sounds like you are not getting the actual points from the landscape. Make sure you have a landscape in your world and the PCG volume is overlapping with it.
The problem for me is that i cannot find a way to instansiate foliage static meshes instead of just static meshes. The foliage looks better with lumen for one and is more performance friendly. Does anyone know how to instansiate foliage meshes in PCG?
🔥If you're serious about learning PCG and Environment Art in Unreal Engine 5, join my Aziel Arts Community: www.azielarts.com/academy
Fantastic! I'm constantly amazed at how fast this technology is moving - but more than that, the generosity of creative individuals like yourself sharing their skills and experience so that us noobs can rapidly evolve our own projects. Thank you Aziel, this is awesome.
Absolutely happy to help!! If I can help one person make something awesome as a result that is totally worth it! You all are an awesome community, so it makes it easy.
@@azielarts hey How you find this option 'get landscape data out'? I cannot find it. Please help me. 13:25
@@MixiManiaOfficial get landscape 1:40 , or at 13:25 output is right clic (named reroute node)
This is so naturalistic, great job Aziel!
Thanks so much! Hope it works for you as well.
@@azielarts hey How you find this option 'get landscape data out'? I cannot find it. Please help me. 13:25
You've done a really good job with this video🎉
Very good tutorial. After hours and hours, your video made me finally understand how to control performance with foliage :)
To save some nodes. Instead of altering the bounds of the initial seeds, select the distance node and set the "Source Shape" to center.
Also, with the named reroute nodes. They dont need to be connected to anything going out. So long as they have something going in, you can reuse the output anywhere.
Awesome tips, thank you !
Thank you for this very useful tip. I was using it inconveniently as a node to change the contrast in a complicated way, but I think it will become more accurate this way.
Awesome!! Glad it was helpful
Thanks 🙏🏼 i was looking for this type of optimization, amazing!! 🎉
Thank you very much for the really good information. Thank you again for learning a lot of ideas and features about Unreal pcg here.
thanks for this men. I have been pulling my hair out trying to figure this out
Thanx for putting the node names on screen.👍
You are welcome, glad it was helpful
@@azielarts hey How you find this option 'get landscape data out'? I cannot find it. Please help me. 13:25
Thank you a lot Aziel, you're really a great Teacher.
Thanks so much. I love teaching, glad it comes through.
@@azielarts hey How you find this option 'get landscape data out'? I cannot find it. Please help me. 13:25
What good timing. Just saw a framerate drop that concerned me dropping grass in lol.
Thanks!! Your videos are really good! Im sharing this with my team!
also, is nanite enabled?
Awesome! Happy To Help
@@espiritogeek Yep nanite on everything
I made a similar setup not to long ago. But I was using spline surfaces and projecting to get the grids on a surface. Worked well even if not doing every point caused some to slightly float.
Thanks for another great tutorial. I have a question to make the grass landscape even cooler 😎 is it possible to apply a global noise using world coordinates to give the grass color variation, or would that be done within the material?
Yep absolutely. That would be in the material. You could totally use a world projected grunge or map to tint the color.
Question ⁉️ : What about generation of HLOD for foliage? For foliage not in the distance instead of nothing? Also second question ⁉️: When you did the copy points, for the random points outside of the main point, can I have different meshes? like a Tree with stones and trunks around it?
Thank you for this! How do I make certain Meshes spawn less then the other? For example: more grass but less flowers?
This video and your Zelda inspired series have both helped me incredibly. I seriously went through each one at least 10 times as I refined my landscapes.
not sure if this approach is optimal or not, but I have an "interactable" landscape and cannot use the mesh spawner. So I have to use Spawn actor, but it only allows one type, I want to place many. so in some cases I have a very granular "Density Filter" with a tight range so it spawns one type, then I branch of a few more density filters to place other types, like Sticks, collectible rocks and so on. I'm just wondering if there's a better way to drop Actors without them all spawning on each other.
thanks! btw what grass did you use?
Hi! thanks for the great tutorial, however I have a question. Would this be a better approach performance wise than using Landscape Grass Types? that is what I use for my cover foliage such as grass, rocks that sort of thing but I do like this approach as well, it just seems to have a bit more of a lengthy setup, which is good as it offers much more personalization but I just wonder what advantages other than capability for personalization. Thank you!
Nice, I'm going to give it a try
Awesome! Let me know how it goes
@@azielarts sure
Youre videos have helped me immensively. I've combined this with VRTs and am getting some really beautiful looking levels, with decent performance. I bit the bullet on dynamic sky and wow it makes a big difference.
Im wondering, is there a way to make meshes for say the "whiter" nodes and other meshes more likely for the denser/"blacker" nodes?
also would this method of optimization be good for other foliage like trees?
Amazing!!!
Thanks! Hope it is helpful
Can you do something about the instances please ? Pcg Graph instances
Really Great video! One question, for a very large landscape (4km x 4km), is it ideal to have only one PCG volume to generate everything (grass, rocks, trees, plants, etc)? The way you optimized I didn't knew yet, it's really great, although I think we can't do the same with trees, otherwise they will disappear more noticeably. And about the generation, after generated, everytime the level loads, does it need to generate again? Thank you for the content!!!
Hey yeah I am not sure I Would use a small grid size with trees, partitioning will still help because of how it breaks up the pcg volume for large areas, but yeah maybe have a different very large grid size for the trees so you don't see them popping in. I am still researching techniques on this front, maybe have some new videos soon!
@@azielarts I appreciate brother! Wish you all the best!
Thank you very much for your video; it's truly amazing! I have a small question: I’ve generated a very, very, very large terrain, and I want the PCG to cover it entirely, which I’ve done. However, when I’m in the editor or even in-game and move very quickly in the area-even very high above my landscape but still within the PCG volume-my FPS drops from 100 to 5, haha. I imagine that as I move, the PCG generates a lot of points because I’m using runtime generation. How can I optimize this? In my case, if I’m flying a plane in my game, since the plane moves fast, I get 5 FPS, which isn’t very playable, haha.
Quick tip for those who can't see PCG grass in sequencer during rendering.
If you turn on Game Overrides it automaticaly will switch on "Disable HLOD" if you turn it back off - Then grass should appear again.
is it possible to put this inside a spline or will this only work for the cube volume?
How to apply grass textures exclusively to grass areas and avoid placing grass on undesired locations like cliffs. Which node should we use for it?
Mine me asking what map asset you are using?
It would be cool if you can Set the Parameter like a variable. Get World second... growing grass. Is it possible?
Do you have an advice for trees? :)
Hi, would you say this is better than the Landscape Grass node?
Or are there even more optimized Grass rendering techniques?
Good question, would like to know too. Its alot simpler and once off with landscape nodes, but it sounds like this is more optimized?
@@IWillYeah Im not sure but I think the Landscape Grass is rendered differently to PCG, but I dont know if its better.
I've found that using pcg for grass on larger maps struggles with max instance counts where as Grass layers do not. the PCG is loads better for variation control etc so I will try the methods in this video and see if it copes with larger worlds (I'm not talking huge, pcg grass normally fails around 9km2 and I've got 64gb ram)
At the academy, do the videos have Spanish subtitles?
Hey.
Perhaps this is a stupid question. Lets say you use 4 different grass meshes for one pcg like the one you´re displaying, is it more efficient to create a new pcg for trees, bushes or should you just create a new nod "string" within the first grass pcg?
Best Regards
Any plan to create a Pateron? I would support you
Thanks so much! I do have a private group you can join if you would like. Kind of my version of Patreon. You can check it out in the description.
The only issue with this is constant hitching when triggering the simulation of the next grid
I was struggling with the debug view in my version of unreal - my fix was changing the nodes 'Scale Method' from 'extents' to anything else. I used 'relative' cause hey why not.
Is this still layer bound like Landscape layer nodes (e.g. grass layer)?
nice
Is this really a better optimization than using culling distances on the mesh? Personally I'd feel a lot safer knowing the overhead of spawning was a one-time payment. The thought of running a real-time pcg in a production game that is frame sensitive seems like a bad idea to me.
I can't see Reroute Nodes on PCG graph, is there a way? But I can see it on material graph.
could you use unbound and set cull distance to say 3600 and get the same optimization?
You'll still have an overhead of "actors" (transforms, mesh settings etc) persisting in the world. When using grid runtime setup these "actors" will spawn/despawn everytime you trigger generation in the next grid
I'm only about 25% into this but it seems more straight forward than PCG Biome Core ?
Yep it depends what you need. Biome core is much more complicated and modular than a lot of people will need.
Ooooh, it's giving Gravesite Plains. A hint of more Elden Ring to come?
Oooh maybe. Actually didn't even realize till you mentioned it. Guess I am in that brain space
How is possible put PCG grass on PCG rocks? meshes (grass) over rock
Using the "Generate on Runtime" option causes issues with the Attribute Filter, making the landscape layer attribute invisible. In both the editor and standalone builds, the grass simply does not appear, and the following warning is displayed: [PCGRuntimeGenPartitionActor - AttributeFilter (layername)]: TargetData doesn't have target attribute/property 'layername'
Does anyone have ideas or suggestions for resolving this issue?
my copy points isnt showing any output, it tried checking everything any fixes ?
I followed this Tutorial to a T, but for some reason I can only debug the Surface Sampler Node and every Node after that I cant debug and wont show up. Therefore my static meshes also dont show up when I place them in the Static Mesh Node. Does anybody know why this happens? Im on Unreal Engine 5.3
Hey, not sure exactly, but sounds like you are not getting the actual points from the landscape. Make sure you have a landscape in your world and the PCG volume is overlapping with it.
hey How you find this option 'get landscape data out'? I cannot find it. Please help me. 13:25
There is a new get landscape data node you can use instead in recent versions of unreal.
The problem for me is that i cannot find a way to instansiate foliage static meshes instead of just static meshes. The foliage looks better with lumen for one and is more performance friendly. Does anyone know how to instansiate foliage meshes in PCG?
The grass doesn't spawn in lower areas of the map.
Hey probably need to expand your volume, if it does not overlap with the landscape, it won't grab points from it.
My brothers name is Aziel
풀은인정이지 개추밖습니다. 영어몰라서 ㅈㅅ