#include <RuntimeMeshBuilder.h>

Public Member Functions | |
| int32 | AddVertex (FVector InPosition) |
| int32 | AddVertex (const FRuntimeMeshAccessorVertex &Vertex) |
| template<typename VertexType0 > | |
| void | AddVertexByProperties (const VertexType0 &Vertex0) |
| template<typename VertexType0 , typename VertexType1 > | |
| void | AddVertexByProperties (const VertexType0 &Vertex0, const VertexType1 &Vertex1) |
| template<typename VertexType0 , typename VertexType1 , typename VertexType2 > | |
| void | AddVertexByProperties (const VertexType0 &Vertex0, const VertexType1 &Vertex1, const VertexType2 &Vertex2) |
| void | EmptyVertices (int32 Slack=0) |
| FRuntimeMeshVerticesAccessor (bool bInTangentsHighPrecision, bool bInUVsHighPrecision, int32 bInUVCount, TArray< uint8 > *PositionStreamData, TArray< uint8 > *TangentStreamData, TArray< uint8 > *UVStreamData, TArray< uint8 > *ColorStreamData, bool bInIsReadonly=false) | |
| FColor | GetColor (int32 Index) const |
| FVector4 | GetNormal (int32 Index) const |
| FVector | GetPosition (int32 Index) const |
| FVector | GetTangent (int32 Index) const |
| FVector2D | GetUV (int32 Index, int32 Channel=0) const |
| FRuntimeMeshAccessorVertex | GetVertex (int32 Index) const |
| const bool | IsReadonly () const |
| const bool | IsUsingHighPrecisionTangents () const |
| const bool | IsUsingHighPrecisionUVs () const |
| int32 | NumUVChannels () const |
| int32 | NumVertices () const |
| void | SetColor (int32 Index, const FColor &Value) |
| bool | SetColors (const int32 InsertAtIndex, const TArray< FColor > &Colors, const int32 Count, const bool bSizeToFit) |
| bool | SetColors (const int32 InsertAtIndex, const FColor *const Colors, const int32 Count, const bool bSizeToFit) |
| void | SetNormal (int32 Index, const FVector4 &Value) |
| void | SetNormalTangent (int32 Index, FVector Normal, FRuntimeMeshTangent Tangent) |
| void | SetNumVertices (int32 NewNum) |
| void | SetPosition (int32 Index, const FVector &Value) |
| bool | SetPositions (const int32 InsertAtIndex, const TArray< FVector > &Positions, const int32 Count, const bool bSizeToFit) |
| bool | SetPositions (const int32 InsertAtIndex, const FVector *const Positions, const int32 Count, const bool bSizeToFit) |
| void | SetTangent (int32 Index, const FVector &Value) |
| void | SetTangent (int32 Index, const FRuntimeMeshTangent &Value) |
| void | SetTangents (int32 Index, FVector TangentX, FVector TangentY, FVector TangentZ) |
| void | SetUV (int32 Index, const FVector2D &Value) |
| void | SetUV (int32 Index, int32 Channel, const FVector2D &Value) |
| bool | SetUVs (const int32 InsertAtVertexIndex, const TArray< FVector2D > &UVs, const int32 CountVertices, const bool bSizeToFit) |
| bool | SetUVs (const int32 InsertAtVertexIndex, const TArray< FVector2DHalf > &UVs, const int32 CountVertices, const bool bSizeToFit) |
| bool | SetUVs (const int32 InsertAtVertexIndex, const FVector2D *const UVs, const int32 CountVertices, const bool bSizeToFit) |
| bool | SetUVs (const int32 InsertAtVertexIndex, const FVector2DHalf *const UVs, const int32 CountVertices, const bool bSizeToFit) |
| void | SetVertex (int32 Index, const FRuntimeMeshAccessorVertex &Vertex) |
| template<typename VertexType > | |
| void | SetVertexProperties (int32 Index, const VertexType &Vertex) |
| virtual | ~FRuntimeMeshVerticesAccessor () |
Protected Member Functions | |
| int32 | AddSingleVertex () |
| FRuntimeMeshVerticesAccessor (TArray< uint8 > *PositionStreamData, TArray< uint8 > *TangentStreamData, TArray< uint8 > *UVStreamData, TArray< uint8 > *ColorStreamData, bool bInIsReadonly) | |
| void | Initialize (bool bInTangentsHighPrecision, bool bInUVsHighPrecision, int32 bInUVCount) |
| void | Unlink () |
Private Member Functions | |
| template<typename Type > | |
| FVector4 | ConvertPackedToNormal (const Type &Input) |
| template<> | |
| FVector4 | ConvertPackedToNormal (const FVector4 &Input) |
| template<typename Type > | |
| FVector | ConvertPackedToTangent (const Type &Input) |
| template<> | |
| FVector | ConvertPackedToTangent (const FVector &Input) |
| template<typename Type > | |
| TEnableIf< FRuntimeMeshVertexTraits< Type >::HasColor >::Type | SetColorValue (int32 Index, const Type &Vertex) |
| template<typename Type > | |
| TEnableIf<!FRuntimeMeshVertexTraits< Type >::HasColor >::Type | SetColorValue (int32 Index, const Type &Vertex) |
| template<typename Type > | |
| TEnableIf< FRuntimeMeshVertexTraits< Type >::HasNormal >::Type | SetNormalValue (int32 Index, const Type &Vertex) |
| template<typename Type > | |
| TEnableIf<!FRuntimeMeshVertexTraits< Type >::HasNormal >::Type | SetNormalValue (int32 Index, const Type &Vertex) |
| template<typename Type > | |
| TEnableIf< FRuntimeMeshVertexTraits< Type >::HasPosition >::Type | SetPositionValue (int32 Index, const Type &Vertex) |
| template<typename Type > | |
| TEnableIf<!FRuntimeMeshVertexTraits< Type >::HasPosition >::Type | SetPositionValue (int32 Index, const Type &Vertex) |
| template<typename Type > | |
| TEnableIf< FRuntimeMeshVertexTraits< Type >::HasTangent >::Type | SetTangentValue (int32 Index, const Type &Vertex) |
| template<typename Type > | |
| TEnableIf<!FRuntimeMeshVertexTraits< Type >::HasTangent >::Type | SetTangentValue (int32 Index, const Type &Vertex) |
| template<typename Type > | |
| TEnableIf< FRuntimeMeshVertexTraits< Type >::HasUV0 >::Type | SetUV0Value (int32 Index, const Type &Vertex) |
| template<typename Type > | |
| TEnableIf<!FRuntimeMeshVertexTraits< Type >::HasUV0 >::Type | SetUV0Value (int32 Index, const Type &Vertex) |
| template<typename Type > | |
| TEnableIf< FRuntimeMeshVertexTraits< Type >::HasUV1 >::Type | SetUV1Value (int32 Index, const Type &Vertex) |
| template<typename Type > | |
| TEnableIf<!FRuntimeMeshVertexTraits< Type >::HasUV1 >::Type | SetUV1Value (int32 Index, const Type &Vertex) |
| template<typename Type > | |
| TEnableIf< FRuntimeMeshVertexTraits< Type >::HasUV2 >::Type | SetUV2Value (int32 Index, const Type &Vertex) |
| template<typename Type > | |
| TEnableIf<!FRuntimeMeshVertexTraits< Type >::HasUV2 >::Type | SetUV2Value (int32 Index, const Type &Vertex) |
| template<typename Type > | |
| TEnableIf< FRuntimeMeshVertexTraits< Type >::HasUV3 >::Type | SetUV3Value (int32 Index, const Type &Vertex) |
| template<typename Type > | |
| TEnableIf<!FRuntimeMeshVertexTraits< Type >::HasUV3 >::Type | SetUV3Value (int32 Index, const Type &Vertex) |
| template<typename Type > | |
| TEnableIf< FRuntimeMeshVertexTraits< Type >::HasUV4 >::Type | SetUV4Value (int32 Index, const Type &Vertex) |
| template<typename Type > | |
| TEnableIf<!FRuntimeMeshVertexTraits< Type >::HasUV4 >::Type | SetUV4Value (int32 Index, const Type &Vertex) |
| template<typename Type > | |
| TEnableIf< FRuntimeMeshVertexTraits< Type >::HasUV5 >::Type | SetUV5Value (int32 Index, const Type &Vertex) |
| template<typename Type > | |
| TEnableIf<!FRuntimeMeshVertexTraits< Type >::HasUV5 >::Type | SetUV5Value (int32 Index, const Type &Vertex) |
| template<typename Type > | |
| TEnableIf< FRuntimeMeshVertexTraits< Type >::HasUV6 >::Type | SetUV6Value (int32 Index, const Type &Vertex) |
| template<typename Type > | |
| TEnableIf<!FRuntimeMeshVertexTraits< Type >::HasUV6 >::Type | SetUV6Value (int32 Index, const Type &Vertex) |
| template<typename Type > | |
| TEnableIf< FRuntimeMeshVertexTraits< Type >::HasUV7 >::Type | SetUV7Value (int32 Index, const Type &Vertex) |
| template<typename Type > | |
| TEnableIf<!FRuntimeMeshVertexTraits< Type >::HasUV7 >::Type | SetUV7Value (int32 Index, const Type &Vertex) |
Private Attributes | |
| bool | bIsInitialized |
| bool | bIsReadonly |
| const bool | bTangentHighPrecision |
| const bool | bUVHighPrecision |
| TArray< uint8 > * | ColorStream |
| TArray< uint8 > * | PositionStream |
| const int32 | TangentSize |
| TArray< uint8 > * | TangentStream |
| const int32 | TangentStride |
| const int32 | UVChannelCount |
| const int32 | UVSize |
| TArray< uint8 > * | UVStream |
| const int32 | UVStride |
Static Private Attributes | |
| static const int32 | ColorStride = 4 |
| static const int32 | PositionStride = 12 |
Definition at line 25 of file RuntimeMeshBuilder.h.
| FRuntimeMeshVerticesAccessor::FRuntimeMeshVerticesAccessor | ( | bool | bInTangentsHighPrecision, |
| bool | bInUVsHighPrecision, | ||
| int32 | bInUVCount, | ||
| TArray< uint8 > * | PositionStreamData, | ||
| TArray< uint8 > * | TangentStreamData, | ||
| TArray< uint8 > * | UVStreamData, | ||
| TArray< uint8 > * | ColorStreamData, | ||
| bool | bInIsReadonly = false |
||
| ) |
Definition at line 44 of file RuntimeMeshBuilder.cpp.
|
virtual |
Definition at line 56 of file RuntimeMeshBuilder.cpp.
|
protected |
Definition at line 34 of file RuntimeMeshBuilder.cpp.
|
protected |
Definition at line 540 of file RuntimeMeshBuilder.cpp.
| int32 FRuntimeMeshVerticesAccessor::AddVertex | ( | FVector | InPosition | ) |
Definition at line 106 of file RuntimeMeshBuilder.cpp.
| int32 FRuntimeMeshVerticesAccessor::AddVertex | ( | const FRuntimeMeshAccessorVertex & | Vertex | ) |
Definition at line 529 of file RuntimeMeshBuilder.cpp.
|
inline |
Definition at line 333 of file RuntimeMeshBuilder.h.
|
inline |
Definition at line 340 of file RuntimeMeshBuilder.h.
|
inline |
Definition at line 348 of file RuntimeMeshBuilder.h.
|
inlineprivate |
Definition at line 131 of file RuntimeMeshBuilder.h.
|
inlineprivate |
Definition at line 374 of file RuntimeMeshBuilder.h.
|
inlineprivate |
Definition at line 141 of file RuntimeMeshBuilder.h.
|
inlineprivate |
Definition at line 379 of file RuntimeMeshBuilder.h.
| void FRuntimeMeshVerticesAccessor::EmptyVertices | ( | int32 | Slack = 0 | ) |
Definition at line 86 of file RuntimeMeshBuilder.cpp.
| FColor FRuntimeMeshVerticesAccessor::GetColor | ( | int32 | Index | ) | const |
Definition at line 165 of file RuntimeMeshBuilder.cpp.
| FVector4 FRuntimeMeshVerticesAccessor::GetNormal | ( | int32 | Index | ) | const |
Definition at line 123 of file RuntimeMeshBuilder.cpp.
| FVector FRuntimeMeshVerticesAccessor::GetPosition | ( | int32 | Index | ) | const |
Definition at line 117 of file RuntimeMeshBuilder.cpp.
| FVector FRuntimeMeshVerticesAccessor::GetTangent | ( | int32 | Index | ) | const |
Definition at line 144 of file RuntimeMeshBuilder.cpp.
| FVector2D FRuntimeMeshVerticesAccessor::GetUV | ( | int32 | Index, |
| int32 | Channel = 0 |
||
| ) | const |
Definition at line 171 of file RuntimeMeshBuilder.cpp.
| FRuntimeMeshAccessorVertex FRuntimeMeshVerticesAccessor::GetVertex | ( | int32 | Index | ) | const |
Definition at line 436 of file RuntimeMeshBuilder.cpp.
|
protected |
Definition at line 60 of file RuntimeMeshBuilder.cpp.
|
inline |
Definition at line 58 of file RuntimeMeshBuilder.h.
|
inline |
Definition at line 55 of file RuntimeMeshBuilder.h.
|
inline |
Definition at line 56 of file RuntimeMeshBuilder.h.
| int32 FRuntimeMeshVerticesAccessor::NumUVChannels | ( | ) | const |
Definition at line 80 of file RuntimeMeshBuilder.cpp.
| int32 FRuntimeMeshVerticesAccessor::NumVertices | ( | ) | const |
Definition at line 73 of file RuntimeMeshBuilder.cpp.
| void FRuntimeMeshVerticesAccessor::SetColor | ( | int32 | Index, |
| const FColor & | Value | ||
| ) |
Definition at line 275 of file RuntimeMeshBuilder.cpp.
| bool FRuntimeMeshVerticesAccessor::SetColors | ( | const int32 | InsertAtIndex, |
| const TArray< FColor > & | Colors, | ||
| const int32 | Count, | ||
| const bool | bSizeToFit | ||
| ) |
Definition at line 282 of file RuntimeMeshBuilder.cpp.
| bool FRuntimeMeshVerticesAccessor::SetColors | ( | const int32 | InsertAtIndex, |
| const FColor *const | Colors, | ||
| const int32 | Count, | ||
| const bool | bSizeToFit | ||
| ) |
Definition at line 288 of file RuntimeMeshBuilder.cpp.
|
inlineprivate |
Definition at line 191 of file RuntimeMeshBuilder.h.
|
inlineprivate |
Definition at line 198 of file RuntimeMeshBuilder.h.
| void FRuntimeMeshVerticesAccessor::SetNormal | ( | int32 | Index, |
| const FVector4 & | Value | ||
| ) |
Definition at line 217 of file RuntimeMeshBuilder.cpp.
| void FRuntimeMeshVerticesAccessor::SetNormalTangent | ( | int32 | Index, |
| FVector | Normal, | ||
| FRuntimeMeshTangent | Tangent | ||
| ) |
Definition at line 396 of file RuntimeMeshBuilder.cpp.
|
inlineprivate |
Definition at line 165 of file RuntimeMeshBuilder.h.
|
inlineprivate |
Definition at line 172 of file RuntimeMeshBuilder.h.
| void FRuntimeMeshVerticesAccessor::SetNumVertices | ( | int32 | NewNum | ) |
Definition at line 96 of file RuntimeMeshBuilder.cpp.
| void FRuntimeMeshVerticesAccessor::SetPosition | ( | int32 | Index, |
| const FVector & | Value | ||
| ) |
Definition at line 185 of file RuntimeMeshBuilder.cpp.
| bool FRuntimeMeshVerticesAccessor::SetPositions | ( | const int32 | InsertAtIndex, |
| const TArray< FVector > & | Positions, | ||
| const int32 | Count, | ||
| const bool | bSizeToFit | ||
| ) |
Definition at line 191 of file RuntimeMeshBuilder.cpp.
| bool FRuntimeMeshVerticesAccessor::SetPositions | ( | const int32 | InsertAtIndex, |
| const FVector *const | Positions, | ||
| const int32 | Count, | ||
| const bool | bSizeToFit | ||
| ) |
Definition at line 197 of file RuntimeMeshBuilder.cpp.
|
inlineprivate |
Definition at line 152 of file RuntimeMeshBuilder.h.
|
inlineprivate |
Definition at line 159 of file RuntimeMeshBuilder.h.
| void FRuntimeMeshVerticesAccessor::SetTangent | ( | int32 | Index, |
| const FVector & | Value | ||
| ) |
Definition at line 231 of file RuntimeMeshBuilder.cpp.
| void FRuntimeMeshVerticesAccessor::SetTangent | ( | int32 | Index, |
| const FRuntimeMeshTangent & | Value | ||
| ) |
Definition at line 245 of file RuntimeMeshBuilder.cpp.
| void FRuntimeMeshVerticesAccessor::SetTangents | ( | int32 | Index, |
| FVector | TangentX, | ||
| FVector | TangentY, | ||
| FVector | TangentZ | ||
| ) |
Definition at line 414 of file RuntimeMeshBuilder.cpp.
|
inlineprivate |
Definition at line 178 of file RuntimeMeshBuilder.h.
|
inlineprivate |
Definition at line 185 of file RuntimeMeshBuilder.h.
| void FRuntimeMeshVerticesAccessor::SetUV | ( | int32 | Index, |
| const FVector2D & | Value | ||
| ) |
Definition at line 308 of file RuntimeMeshBuilder.cpp.
| void FRuntimeMeshVerticesAccessor::SetUV | ( | int32 | Index, |
| int32 | Channel, | ||
| const FVector2D & | Value | ||
| ) |
Definition at line 323 of file RuntimeMeshBuilder.cpp.
|
inlineprivate |
Definition at line 207 of file RuntimeMeshBuilder.h.
|
inlineprivate |
Definition at line 214 of file RuntimeMeshBuilder.h.
|
inlineprivate |
Definition at line 220 of file RuntimeMeshBuilder.h.
|
inlineprivate |
Definition at line 227 of file RuntimeMeshBuilder.h.
|
inlineprivate |
Definition at line 233 of file RuntimeMeshBuilder.h.
|
inlineprivate |
Definition at line 240 of file RuntimeMeshBuilder.h.
|
inlineprivate |
Definition at line 246 of file RuntimeMeshBuilder.h.
|
inlineprivate |
Definition at line 253 of file RuntimeMeshBuilder.h.
|
inlineprivate |
Definition at line 259 of file RuntimeMeshBuilder.h.
|
inlineprivate |
Definition at line 266 of file RuntimeMeshBuilder.h.
|
inlineprivate |
Definition at line 272 of file RuntimeMeshBuilder.h.
|
inlineprivate |
Definition at line 279 of file RuntimeMeshBuilder.h.
|
inlineprivate |
Definition at line 285 of file RuntimeMeshBuilder.h.
|
inlineprivate |
Definition at line 292 of file RuntimeMeshBuilder.h.
|
inlineprivate |
Definition at line 298 of file RuntimeMeshBuilder.h.
|
inlineprivate |
Definition at line 305 of file RuntimeMeshBuilder.h.
| bool FRuntimeMeshVerticesAccessor::SetUVs | ( | const int32 | InsertAtVertexIndex, |
| const TArray< FVector2D > & | UVs, | ||
| const int32 | CountVertices, | ||
| const bool | bSizeToFit | ||
| ) |
UV arrangement for 3 uv channels: UVs[0]: vertex 0:uvChannel[0] UVs[1]: vertex 0:uvChannel[1] UVs[2]: vertex 0:uvChannel[2] UVs[3]: vertex 1:uvChannel[0] UVs[4]: vertex 1:uvChannel[1] UVs[5]: vertex 1:uvChannel[2] UVs[6]: vertex 2:uvChannel[0] ...
| CountVertices | The number of vertices you want to add UV data for! |
Definition at line 338 of file RuntimeMeshBuilder.cpp.
| bool FRuntimeMeshVerticesAccessor::SetUVs | ( | const int32 | InsertAtVertexIndex, |
| const TArray< FVector2DHalf > & | UVs, | ||
| const int32 | CountVertices, | ||
| const bool | bSizeToFit | ||
| ) |
Definition at line 346 of file RuntimeMeshBuilder.cpp.
| bool FRuntimeMeshVerticesAccessor::SetUVs | ( | const int32 | InsertAtVertexIndex, |
| const FVector2D *const | UVs, | ||
| const int32 | CountVertices, | ||
| const bool | bSizeToFit | ||
| ) |
UV arrangement for 3 uv channels: UVs[0]: vertex 0:uvChannel[0] UVs[1]: vertex 0:uvChannel[1] UVs[2]: vertex 0:uvChannel[2] UVs[3]: vertex 1:uvChannel[0] UVs[4]: vertex 1:uvChannel[1] UVs[5]: vertex 1:uvChannel[2] UVs[6]: vertex 2:uvChannel[0] ...
| UVs | Must point to the start of the uv data for a vertex! |
| CountVertices | The number of vertices you want to add UV data for! |
Definition at line 354 of file RuntimeMeshBuilder.cpp.
| bool FRuntimeMeshVerticesAccessor::SetUVs | ( | const int32 | InsertAtVertexIndex, |
| const FVector2DHalf *const | UVs, | ||
| const int32 | CountVertices, | ||
| const bool | bSizeToFit | ||
| ) |
Definition at line 375 of file RuntimeMeshBuilder.cpp.
| void FRuntimeMeshVerticesAccessor::SetVertex | ( | int32 | Index, |
| const FRuntimeMeshAccessorVertex & | Vertex | ||
| ) |
Definition at line 489 of file RuntimeMeshBuilder.cpp.
|
inline |
Definition at line 315 of file RuntimeMeshBuilder.h.
|
inlineprotected |
Definition at line 359 of file RuntimeMeshBuilder.h.
|
private |
Definition at line 27 of file RuntimeMeshBuilder.h.
|
private |
Definition at line 28 of file RuntimeMeshBuilder.h.
|
private |
Definition at line 32 of file RuntimeMeshBuilder.h.
|
private |
Definition at line 36 of file RuntimeMeshBuilder.h.
|
private |
Definition at line 40 of file RuntimeMeshBuilder.h.
|
staticprivate |
Definition at line 41 of file RuntimeMeshBuilder.h.
|
private |
Definition at line 29 of file RuntimeMeshBuilder.h.
|
staticprivate |
Definition at line 30 of file RuntimeMeshBuilder.h.
|
private |
Definition at line 33 of file RuntimeMeshBuilder.h.
|
private |
Definition at line 31 of file RuntimeMeshBuilder.h.
|
private |
Definition at line 34 of file RuntimeMeshBuilder.h.
|
private |
Definition at line 37 of file RuntimeMeshBuilder.h.
|
private |
Definition at line 38 of file RuntimeMeshBuilder.h.
|
private |
Definition at line 35 of file RuntimeMeshBuilder.h.
|
private |
Definition at line 39 of file RuntimeMeshBuilder.h.