Navigation
API > API/Plugins > API/Plugins/PCG
Bitmask containing the various data types supported in PCG. Note that this enum cannot be a blueprint type because enums have to be uint8 for blueprint, and we already use more than 8 bits in the bitmask. This is why we have a parallel enum just below that must match on a name basis 1:1 to allow the make/break functions to work properly in blueprint. WARNING: Please be mindful that combination of flags that are not explicitly defined there won't be serialized correctly, inducing data loss.
| Name | EPCGDataType |
| Type | enum |
| Header File | /Engine/Plugins/PCG/Source/PCG/Public/PCGCommon.h |
| Include Path | #include "PCGCommon.h" |
Syntax
enum EPCGDataType
{
None = 0 UMETA(Hidden),
Point = 1 << 1,
Spline = 1 << 2,
LandscapeSpline = 1 << 3,
Polygon2D = 1 << 13,
PolyLine = Spline | LandscapeSpline | Polygon2D UMETA(DisplayName = "Curve"),
Landscape = 1 << 4,
Texture = 1 << 5,
RenderTarget = 1 << 6,
VirtualTexture = 1 << 12,
BaseTexture = Texture | RenderTarget UMETA(Tooltip = "Common base type for both textures and render targets."),
Surface = Landscape | BaseTexture | VirtualTexture,
Volume = 1 << 7,
Primitive = 1 << 8,
DynamicMesh = 1 << 10,
StaticMeshResource = 1 << 11,
Concrete = Point | PolyLine | Surface | Volume | Primitive | DynamicMesh,
Composite = 1 << 9 UMETA(Hidden),
Spatial = Composite | Concrete,
Resource = StaticMeshResource UMETA(Hidden),
ProxyForGPU = 1 << 26 UMETA(Hidden),
Param = 1 << 27 UMETA(DisplayName = "Attribute Set"),
PointOrParam = Point | Param UMETA(DisplayName = "Point or Attribute Set"),
VolumeOrPrimitiveOrDynamicMesh = Volume | Primitive | DynamicMesh UMETA(Hidden),
PointOrSpline = Point | Spline UMETA(Hidden),
Settings = 1 << 28 UMETA(Hidden),
Other = 1 << 29,
Any = (1 << 30) - 1,
DeprecationSentinel = (1u << 31) UMETA(Hidden),
}
Values
| Name | Remarks |
|---|---|
| None | |
| Point | |
| Spline | |
| LandscapeSpline | |
| Polygon2D | |
| PolyLine | |
| Landscape | |
| Texture | |
| RenderTarget | |
| VirtualTexture | VirtualTexture is not a subtype of BaseTexture because they share no common functionality, particularly with respect to sampling. |
| BaseTexture | |
| Surface | |
| Volume | |
| Primitive | |
| DynamicMesh | |
| StaticMeshResource | |
| Concrete | Simple concrete data. |
| Composite | Boolean operations like union, difference, intersection. |
| Spatial | Combinations of concrete data and/or boolean operations. |
| Resource | Data that represent resources/assets. |
| ProxyForGPU | Proxy for data that was created on the GPU and not necessarily read back to CPU. |
| Param | |
| PointOrParam | Combination of Param and Point, necessary for name-based serialization of enums. |
| VolumeOrPrimitiveOrDynamicMesh | |
| PointOrSpline | |
| Settings | |
| Other | |
| Any | |
| DeprecationSentinel | Used as an indication that a function that returns a EPCGDataType that has gone through a default implementation. |