初始提交: UE5.3项目基础框架

This commit is contained in:
2025-10-14 11:14:54 +08:00
commit 721d9fd98e
5334 changed files with 316782 additions and 0 deletions

View File

@ -0,0 +1,33 @@
// Copyright 2020-2024 CesiumGS, Inc. and Contributors
#include "CesiumPropertyArray.h"
#include <CesiumGltf/PropertyTypeTraits.h>
FCesiumPropertyArray::FCesiumPropertyArray(FCesiumPropertyArray&& rhs) =
default;
FCesiumPropertyArray&
FCesiumPropertyArray::operator=(FCesiumPropertyArray&& rhs) = default;
FCesiumPropertyArray::FCesiumPropertyArray(const FCesiumPropertyArray& rhs)
: _value(), _elementType(rhs._elementType), _storage(rhs._storage) {
swl::visit(
[this](const auto& value) {
if constexpr (CesiumGltf::IsMetadataArray<decltype(value)>::value) {
if (!this->_storage.empty()) {
this->_value = decltype(value)(this->_storage);
} else {
this->_value = value;
}
} else {
this->_value = value;
}
},
rhs._value);
}
FCesiumPropertyArray&
FCesiumPropertyArray::operator=(const FCesiumPropertyArray& rhs) {
*this = FCesiumPropertyArray(rhs);
return *this;
}