Nebukam / PCGExtendedToolkit

PCGEx is a free (libre) Unreal 5 plugin that expands PCG capabilities. It offers a variety of high-performance nodes; with an edge for building relational graphs (Freeform, Delaunay, Voronoi, MST etc), advanced pathfinding; and much more.
MIT License
161 stars 19 forks source link

Issue with socket definitions #37

Closed sinanata closed 5 months ago

sinanata commented 7 months ago

Thanks for the great effort. It's an insane open-source product. I'm just unable to locate this little guy over here. I tried using subgraphs as socket definitions, but they are not working.

Screenshot 2024-04-09 163725

Nebukam commented 7 months ago

Howdy @sinanata ! The issue is not on your end, I simply haven't updated the documentation to reflect the latest changes on how custom graphs are handled >.<

Previously there was a monolithic, poorly flexible approach where you'd declare sockets as entries within an array; now sockets are created as individual nodes and then "gathered" into a graph param object.

I created a very basic blueprint example here (for 5.3, not sure it'll copy-paste as-is in 5.4 but I can do one in 5.4 if that's more helpful ^^)

The plugin now comes with a few "preset" subgraphs that contains basic socket configurations, but those still need to be assembled (as seen in the example) for the custom graph to be built. You can enable/disable either Draw Custom Graph or Draw Edges to better get a sense of what gets generated.

One last note: socket do have a radius, if it looks like it doesn't work, use a greater radius value. On the other end, if the radius is too big and encompass too many neighbors, performance will tank. You need to do a bit of trial and error to find the sweet spot for your specific setup ;)

There's still a massive lack on documentation around what edge types are (roaming/shared/complete etc), so stay tuned and feel free to start a discussion in the repo I'll make sure to answer there!

sinanata commented 7 months ago

This is exactly what I was looking for. Cheers from Istanbul.

sinanata commented 7 months ago

Hey, I could get it to work, but I'm facing another issue with Guided Trace. I have custom attributes such as TracedLocation, but I can't copy and apply them as the position of my points. Any idea how?

Screenshot 2024-04-10 195920 Screenshot 2024-04-10 195938

sinanata commented 7 months ago

Never mind, I solved it by creating a custom blueprint function. image

Nebukam commented 7 months ago

For future reference, I think what you were looking for is the Copy Attribute node ;)

image

sinanata commented 7 months ago

I couldn't get it to work; I'm probably making a mistake with attribute selection. How would you operate with this?

Nebukam commented 7 months ago

Just like in the screenshot: Target Source is basically what gets read, and Output Target where it gets written. If you encounter issues with native PCG nodes I'd recommend heading the the Unreal Source discord, in their #pcg-framework channel, tons of helpful folks there :D

sinanata commented 7 months ago

I'll def go there. Thanks