Public Member Functions | Private Attributes | List of all members
FRuntimeMeshBuilder Class Reference

#include <RuntimeMeshBuilder.h>

Inheritance diagram for FRuntimeMeshBuilder:
Inheritance graph
[legend]

Public Member Functions

 FRuntimeMeshBuilder (bool bInTangentsHighPrecision, bool bInUVsHighPrecision, int32 bInUVCount, bool bIn32BitIndices)
 
TArray< uint8 > & GetColorStream ()
 
TArray< uint8 > & GetIndexStream ()
 
TArray< uint8 > & GetPositionStream ()
 
TArray< uint8 > & GetTangentStream ()
 
TArray< uint8 > & GetUVStream ()
 
virtual ~FRuntimeMeshBuilder () override
 
- Public Member Functions inherited from FRuntimeMeshAccessor
void CopyTo (const TSharedPtr< FRuntimeMeshAccessor > &Other, bool bClearDestination=false) const
 
 FRuntimeMeshAccessor (bool bInTangentsHighPrecision, bool bInUVsHighPrecision, int32 bInUVCount, bool bIn32BitIndices, TArray< uint8 > *PositionStreamData, TArray< uint8 > *TangentStreamData, TArray< uint8 > *UVStreamData, TArray< uint8 > *ColorStreamData, TArray< uint8 > *IndexStreamData, bool bInIsReadonly=false)
 
bool IsReadonly () const
 
void Unlink ()
 
virtual ~FRuntimeMeshAccessor () override
 
- Public Member Functions inherited from FRuntimeMeshVerticesAccessor
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 ()
 
- Public Member Functions inherited from FRuntimeMeshIndicesAccessor
int32 AddIndex (int32 NewIndex)
 
int32 AddTriangle (int32 Index0, int32 Index1, int32 Index2)
 
void EmptyIndices (int32 Slack=0)
 
 FRuntimeMeshIndicesAccessor (bool bIn32BitIndices, TArray< uint8 > *IndexStreamData, bool bInIsReadonly=false)
 
int32 GetIndex (int32 Index) const
 
const bool IsReadonly () const
 
bool IsUsing32BitIndices () const
 
int32 NumIndices () const
 
void SetIndex (int32 Index, int32 Value)
 
bool SetIndices (const int32 InsertAtIndex, const TArray< uint16 > &Indices, const int32 Count, const bool bSizeToFit)
 
bool SetIndices (const int32 InsertAtIndex, const uint16 *const Indices, const int32 Count, const bool bSizeToFit)
 
bool SetIndices (const int32 InsertAtIndex, const TArray< int32 > &Indices, const int32 Count, const bool bSizeToFit)
 
bool SetIndices (const int32 InsertAtIndex, const int32 *const Indices, const int32 Count, const bool bSizeToFit)
 
void SetNumIndices (int32 NewNum)
 
virtual ~FRuntimeMeshIndicesAccessor ()
 

Private Attributes

TArray< uint8 > ColorStream
 
TArray< uint8 > IndexStream
 
TArray< uint8 > PositionStream
 
TArray< uint8 > TangentStream
 
TArray< uint8 > UVStream
 

Additional Inherited Members

- Protected Member Functions inherited from FRuntimeMeshAccessor
 FRuntimeMeshAccessor (TArray< uint8 > *PositionStreamData, TArray< uint8 > *TangentStreamData, TArray< uint8 > *UVStreamData, TArray< uint8 > *ColorStreamData, TArray< uint8 > *IndexStreamData, bool bInIsReadonly)
 
void Initialize (bool bInTangentsHighPrecision, bool bInUVsHighPrecision, int32 bInUVCount, bool bIn32BitIndices)
 
- Protected Member Functions inherited from FRuntimeMeshVerticesAccessor
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 ()
 
- Protected Member Functions inherited from FRuntimeMeshIndicesAccessor
 FRuntimeMeshIndicesAccessor (TArray< uint8 > *IndexStreamData, bool bInIsReadonly)
 
FORCEINLINE int32 GetIndexStride () const
 
void Initialize (bool bIn32BitIndices)
 
void Unlink ()
 

Detailed Description

Generic mesh builder. Can work on any valid stream configuration. Wraps FRuntimeMeshAccessor to provide standalone operation for creating new mesh data.

Definition at line 468 of file RuntimeMeshBuilder.h.

Constructor & Destructor Documentation

FRuntimeMeshBuilder::FRuntimeMeshBuilder ( bool  bInTangentsHighPrecision,
bool  bInUVsHighPrecision,
int32  bInUVCount,
bool  bIn32BitIndices 
)

Definition at line 776 of file RuntimeMeshBuilder.cpp.

FRuntimeMeshBuilder::~FRuntimeMeshBuilder ( )
overridevirtual

Definition at line 782 of file RuntimeMeshBuilder.cpp.

Member Function Documentation

TArray<uint8>& FRuntimeMeshBuilder::GetColorStream ( )
inline

Definition at line 485 of file RuntimeMeshBuilder.h.

TArray<uint8>& FRuntimeMeshBuilder::GetIndexStream ( )
inline

Definition at line 486 of file RuntimeMeshBuilder.h.

TArray<uint8>& FRuntimeMeshBuilder::GetPositionStream ( )
inline

Definition at line 482 of file RuntimeMeshBuilder.h.

TArray<uint8>& FRuntimeMeshBuilder::GetTangentStream ( )
inline

Definition at line 483 of file RuntimeMeshBuilder.h.

TArray<uint8>& FRuntimeMeshBuilder::GetUVStream ( )
inline

Definition at line 484 of file RuntimeMeshBuilder.h.

Member Data Documentation

TArray<uint8> FRuntimeMeshBuilder::ColorStream
private

Definition at line 473 of file RuntimeMeshBuilder.h.

TArray<uint8> FRuntimeMeshBuilder::IndexStream
private

Definition at line 475 of file RuntimeMeshBuilder.h.

TArray<uint8> FRuntimeMeshBuilder::PositionStream
private

Definition at line 470 of file RuntimeMeshBuilder.h.

TArray<uint8> FRuntimeMeshBuilder::TangentStream
private

Definition at line 471 of file RuntimeMeshBuilder.h.

TArray<uint8> FRuntimeMeshBuilder::UVStream
private

Definition at line 472 of file RuntimeMeshBuilder.h.


The documentation for this class was generated from the following files:


librealsense2
Author(s): Sergey Dorodnicov , Doron Hirshberg , Mark Horn , Reagan Lopez , Itay Carpis
autogenerated on Mon May 3 2021 02:50:31