Hello folks,
I’ve recently been getting into PCG and I’ve been looking through the PCG Blueprint Element class to see what’s possible with custom user setups.
I am an artist, not very technical so if that’s why I don’t understand most of what’s going on here feel free to let me know.
What I’ve noticed is the lack of documentation, and so I have a few questions -
i) PCGData Types;
e.g.
Concrete data - what is this? how do I find out what is it actually?
*I’ve found this - https://docs.unrealengine.com/5.3/en-US/PythonAPI/class/PCGDataType.html#unreal.PCGDataType.PARAM - which does not help in my understanding. I still don’t know what it is, how it comes about, what kind of inputs constitutes as Concrete data, what happens to it when it gets output through some nodes, etc.
Another example;
Primitive data - I thought this would be straightforward in that PCG would take note of the no. of primitives in my scene/BP and output the corresponding number of points. I have my PCG Graph Get Primitive Data (by actor tag selection of “jojo”), when I check the PCG attributes debug it returns with 8 points. I was expecting 2 points? or does Primitive mean ea vertex on a mesh? I would expect 16 points in that case. Am I missing something?
ii) Where can I find more documentation on how PCG works? I’ve watched the general showcase/talks by Epic but when I try to go beyond that, I realize I don’t know most of what’s going on.
iii) It doesn’t seem possible to update PCG Instances’ transforms (created from Mesh Spawner; HISM) when the source/input is changed. For example, I’m creating mesh instances in a BP and have a PCG component sample the mesh data and spawn meshes from there. When I introduce some kind of transform to the BP mesh instances, the PCG Instances remain static at their initial position despite setting PCG Generate node to “Force”.
I’ve found - https://docs.unrealengine.com/5.3/en-US/PythonAPI/class/PCGPropertyToParamDataSettings.html#unreal.PCGPropertyToParamDataSettings.always_requery_actors
looking at the wording, I thought this could get PCG to update its instances based on the changing mesh instances’ transforms. But when I tried searching for the nodes, I couldn’t find anything that has something like “requery actors”.
I find the struggle with PCG is the in/out data. Compared to Materials, or other procedural content generation systems like Blender Geo Node…PCG seems like a black box. Is there some documentation that I’m not aware of?