UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
DynamicParticles.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2#pragma once
3
5#include "Chaos/Particles.h"
6
7namespace Chaos
8{
9template<class T, int d>
10class TDynamicParticles : public TParticles<T, d>
11{
12 public:
23 : TParticles<T, d>(MoveTemp(Other)), MV(MoveTemp(Other.MV)), MAcceleration(MoveTemp(Other.MAcceleration)), MM(MoveTemp(Other.MM)), MInvM(MoveTemp(Other.MInvM))
24 {
26 TArrayCollection::AddArray(&MAcceleration);
29 }
30
31 const TVector<T, d>& V(const int32 Index) const { return MV[Index]; }
32 const TVector<T, d> GetV(const int32 Index) const { return MV[Index]; }
33 TVector<T, d>& V(const int32 Index) { return MV[Index]; }
34 void SetV(const int32 Index, const TVector<T, d>& InV) { MV[Index] = InV; }
35 const TArrayCollectionArray<TVector<T, d>>& GetV() const { return MV; }
37
38 const TVector<T, d>& Acceleration(const int32 Index) const { return MAcceleration[Index]; }
39 TVector<T, d>& Acceleration(const int32 Index) { return MAcceleration[Index]; }
40 const TArrayCollectionArray<TVector<T, d>>& GetAcceleration() const { return MAcceleration; }
42
43 const T M(const int32 Index) const { return MM[Index]; }
44 T& M(const int32 Index) { return MM[Index]; }
45 const TArrayCollectionArray<T>& GetM() const { return MM; }
47
48 const T InvM(const int32 Index) const { return MInvM[Index]; }
49 T& InvM(const int32 Index) { return MInvM[Index]; }
50 const TArrayCollectionArray<T>& GetInvM() const { return MInvM; }
51 TArrayCollectionArray<T>& GetInvM() { return MInvM; }
52
53 private:
54 TArrayCollectionArray<TVector<T, d>> MV, MAcceleration;
56};
57
59}
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
UE_INTRINSIC_CAST UE_REWRITE constexpr std::remove_reference_t< T > && MoveTemp(T &&Obj) noexcept
Definition UnrealTemplate.h:520
Definition ArrayCollectionArray.h:15
int32 AddArray(TArrayCollectionArrayBase *Array)
Definition ArrayCollection.h:36
Definition DynamicParticles.h:11
TVector< T, d > & Acceleration(const int32 Index)
Definition DynamicParticles.h:39
const TArrayCollectionArray< T > & GetInvM() const
Definition DynamicParticles.h:50
const TVector< T, d > GetV(const int32 Index) const
Definition DynamicParticles.h:32
TArrayCollectionArray< TVector< T, d > > & GetAcceleration()
Definition DynamicParticles.h:41
const TArrayCollectionArray< T > & GetM() const
Definition DynamicParticles.h:45
TVector< T, d > & V(const int32 Index)
Definition DynamicParticles.h:33
const T M(const int32 Index) const
Definition DynamicParticles.h:43
TArrayCollectionArray< TVector< T, d > > & GetV()
Definition DynamicParticles.h:36
TArrayCollectionArray< T > & GetInvM()
Definition DynamicParticles.h:51
const TArrayCollectionArray< TVector< T, d > > & GetAcceleration() const
Definition DynamicParticles.h:40
const TVector< T, d > & Acceleration(const int32 Index) const
Definition DynamicParticles.h:38
const TArrayCollectionArray< TVector< T, d > > & GetV() const
Definition DynamicParticles.h:35
TDynamicParticles(const TDynamicParticles< T, d > &Other)=delete
const T InvM(const int32 Index) const
Definition DynamicParticles.h:48
TArrayCollectionArray< T > & GetM()
Definition DynamicParticles.h:46
const TVector< T, d > & V(const int32 Index) const
Definition DynamicParticles.h:31
T & M(const int32 Index)
Definition DynamicParticles.h:44
TDynamicParticles()
Definition DynamicParticles.h:13
void SetV(const int32 Index, const TVector< T, d > &InV)
Definition DynamicParticles.h:34
TDynamicParticles(TDynamicParticles< T, d > &&Other)
Definition DynamicParticles.h:22
T & InvM(const int32 Index)
Definition DynamicParticles.h:49
Definition Particles.h:32
Definition Vector.h:41
Definition SkeletalMeshComponent.h:307
U16 Index
Definition radfft.cpp:71