vault backup: 2023-12-22 12:52:19

This commit is contained in:
BlueRose 2023-12-22 12:52:20 +08:00
parent ba5bdcee4d
commit 71344045cb

View File

@ -8,6 +8,10 @@ rating: ⭐
# c++
插件的c++部分主要实现了
- FThreeDGaussians——可以理解为一个场景或者根节点
- FThreeDGaussiansTree——类似BVH的空间切分树
- FThreeDGaussiansData——具体数据
-
@ -16,10 +20,8 @@ rating: ⭐
struct FThreeDGaussiansData
{
GENERATED_BODY()
public:
FThreeDGaussiansData() {}
FThreeDGaussiansData(const TArray<UTexture2D*>& textures, const FVector3f& in_minPos, const FVector3f& in_maxPos)
{
minPos = in_minPos;
@ -43,4 +45,38 @@ public:
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "3D Gaussians") UTexture2D* scaleAndOpacity;
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "3D Gaussians") TArray<UTexture2D*> sh;
};
/** 类似BVH的控件数据结构 */
USTRUCT(BlueprintType)
struct FThreeDGaussiansTree
{
GENERATED_BODY()
public:
FThreeDGaussiansTree() {}
// Axis for split (x=0, y=1, z=2)
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "3D Gaussians") int32 splitAxis = -1;
// max value of the position of gaussian in child0 or leaf0 in "splitAxis" axis
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "3D Gaussians") float splitValue = 0.0f;
// index of child tree node (Index of TArray<FThreeDGaussiansTree> tree)
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "3D Gaussians") int32 childIndex0 = -1;
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "3D Gaussians") int32 childIndex1 = -1;
// index of child data node (Index of TArray<FThreeDGaussiansData> data)
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "3D Gaussians") int32 leafIndex0 = -1;
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "3D Gaussians") int32 leafIndex1 = -1;
};
/* 作为3D高斯数据的载荷 */
USTRUCT(BlueprintType)
struct FThreeDGaussians
{
GENERATED_BODY()
public:
FThreeDGaussians() {}
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "3D Gaussians") TArray<FThreeDGaussiansData> data;
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "3D Gaussians") TArray<FThreeDGaussiansTree> tree;
};
```