Versioned, owning creation definition for one volumetric soft body. 更多...
#include <SoftBody3DDefinition.h>
Public 成员函数 | |
| eve::Result< void > | validate () const |
| Validate all fields and the aggregate one-million-particle limit. | |
| eve::Result< eve::Value > | toValue () const |
| Encode the complete canonical version-1 value. | |
静态 Public 成员函数 | |
| static eve::schema::SchemaDefinition | schemaDefinition () |
| Build the runtime/tooling schema whose constraints mirror validate(). | |
| static eve::Result< void > | ensureSchemaRegistered () |
| Idempotently register version 1 in the process schema registry. | |
| static eve::Result< SoftBody3DDefinition > | fromValue (const eve::Value &value) |
| Decode and validate version 1 transactionally without partial publication. | |
Public 属性 | |
| int | cols = 4 |
| int | rows = 4 |
| int | layers = 4 |
| float | spacing = 0.35f |
| float | originX = 0.f |
| float | originY = 0.f |
| float | originZ = 0.f |
| float | gravityX = 0.f |
| float | gravityY = -9.8f |
| float | gravityZ = 0.f |
| float | deformationResistance = 0.8f |
| int | iterations = 5 |
| float | damping = 0.04f |
| float | particleRadius = 0.2f |
| float | particleMass = 0.1f |
| float | plasticYield = 0.f |
| float | plasticCreep = 0.f |
| float | plasticRecovery = 0.f |
| float | maxDeformation = 0.f |
| bool | selfCollision = false |
静态 Public 属性 | |
| static constexpr std::string_view | SchemaId = "physics:softbody3d" |
| static constexpr std::uint32_t | SchemaVersion = 1 |
详细描述
Versioned, owning creation definition for one volumetric soft body.
This is the canonical source for runtime creation, serialization and editor defaults. Version 1 rejects unknown fields and unsupported versions; there is no older released version requiring migration.
在文件 SoftBody3DDefinition.h 第 21 行定义.
成员函数说明
◆ ensureSchemaRegistered()
|
static |
Idempotently register version 1 in the process schema registry.
在文件 SoftBody3DDefinition.cpp 第 200 行定义.
引用了 eve::Result< T >::failure(), eve::schema::SchemaRegistry::registerVersioned(), eve::schema::SchemaRegistry::resolve(), schemaDefinition(), SchemaId , 以及 eve::Result< T >::success().
被这些函数引用 eve::physics::SoftBody3D::create().
◆ fromValue()
|
static |
Decode and validate version 1 transactionally without partial publication.
在文件 SoftBody3DDefinition.cpp 第 208 行定义.
引用了 eve::Value::asString(), boolean, cols, damping, deformationResistance, eve::Diagnostic::error(), EVE_SOFTBODY_READ, eve::Result< T >::failure(), fields, gravityX, gravityY, gravityZ, eve::InvalidArgument, eve::Value::isString(), iterations, layers, maxDeformation, name, number, originX, originY, originZ, particleMass, particleRadius, plasticCreep, plasticRecovery, plasticYield, rows, SchemaId, selfCollision, spacing, eve::Result< T >::success(), target, valid, validate() , 以及 value.
◆ schemaDefinition()
|
static |
Build the runtime/tooling schema whose constraints mirror validate().
在文件 SoftBody3DDefinition.cpp 第 132 行定义.
引用了 eve::schema::SchemaDefinition::additionalProperties, cols, damping, deformationResistance, description, eve::schema::SchemaDefinition::description, eve::schema::SchemaDefinition::fields, gravityX, gravityY, gravityZ, eve::schema::SchemaDefinition::id, iterations, layers, maxDeformation, maximum, minimum, name, originX, originY, originZ, particleMass, particleRadius, plasticCreep, plasticRecovery, plasticYield, rows, SchemaId, SchemaVersion, selfCollision, spacing, title, eve::schema::SchemaDefinition::title, type, eve::editing::Value::type(), value , 以及 eve::schema::SchemaDefinition::version.
被这些函数引用 ensureSchemaRegistered().
◆ toValue()
| eve::Result< eve::Value > eve::physics::SoftBody3DDefinition::toValue | ( | ) | const |
Encode the complete canonical version-1 value.
在文件 SoftBody3DDefinition.cpp 第 103 行定义.
引用了 cols, damping, deformationResistance, eve::Result< T >::failure(), gravityX, gravityY, gravityZ, iterations, layers, maxDeformation, object, originX, originY, originZ, particleMass, particleRadius, plasticCreep, plasticRecovery, plasticYield, rows, SchemaId, SchemaVersion, selfCollision, spacing, eve::Result< T >::success(), valid , 以及 validate().
◆ validate()
| eve::Result< void > eve::physics::SoftBody3DDefinition::validate | ( | ) | const |
Validate all fields and the aggregate one-million-particle limit.
在文件 SoftBody3DDefinition.cpp 第 60 行定义.
引用了 cols, count, damping, deformationResistance, eve::Diagnostic::error(), eve::Result< T >::failure(), finite, gravityX, gravityY, gravityZ, eve::InvalidArgument, layers, maxDeformation, originX, originY, originZ, particleMass, particleRadius, plasticCreep, plasticRecovery, plasticYield, rows, spacing, eve::Result< T >::success() , 以及 value.
被这些函数引用 fromValue() , 以及 toValue().
类成员变量说明
◆ cols
| int eve::physics::SoftBody3DDefinition::cols = 4 |
在文件 SoftBody3DDefinition.h 第 25 行定义.
被这些函数引用 fromValue(), schemaDefinition(), eve::physics_editing::softBody3DDefinitionSchema(), toValue() , 以及 validate().
◆ damping
| float eve::physics::SoftBody3DDefinition::damping = 0.04f |
在文件 SoftBody3DDefinition.h 第 31 行定义.
被这些函数引用 fromValue(), schemaDefinition(), eve::physics_editing::softBody3DDefinitionSchema(), toValue() , 以及 validate().
◆ deformationResistance
| float eve::physics::SoftBody3DDefinition::deformationResistance = 0.8f |
在文件 SoftBody3DDefinition.h 第 29 行定义.
被这些函数引用 fromValue(), schemaDefinition(), eve::physics_editing::softBody3DDefinitionSchema(), toValue() , 以及 validate().
◆ gravityX
| float eve::physics::SoftBody3DDefinition::gravityX = 0.f |
在文件 SoftBody3DDefinition.h 第 28 行定义.
被这些函数引用 fromValue(), schemaDefinition(), eve::physics_editing::softBody3DDefinitionSchema(), toValue() , 以及 validate().
◆ gravityY
| float eve::physics::SoftBody3DDefinition::gravityY = -9.8f |
在文件 SoftBody3DDefinition.h 第 28 行定义.
被这些函数引用 fromValue(), schemaDefinition(), eve::physics_editing::softBody3DDefinitionSchema(), toValue() , 以及 validate().
◆ gravityZ
| float eve::physics::SoftBody3DDefinition::gravityZ = 0.f |
在文件 SoftBody3DDefinition.h 第 28 行定义.
被这些函数引用 fromValue(), schemaDefinition(), eve::physics_editing::softBody3DDefinitionSchema(), toValue() , 以及 validate().
◆ iterations
| int eve::physics::SoftBody3DDefinition::iterations = 5 |
在文件 SoftBody3DDefinition.h 第 30 行定义.
被这些函数引用 fromValue(), schemaDefinition(), eve::physics_editing::softBody3DDefinitionSchema() , 以及 toValue().
◆ layers
| int eve::physics::SoftBody3DDefinition::layers = 4 |
在文件 SoftBody3DDefinition.h 第 25 行定义.
被这些函数引用 fromValue(), schemaDefinition(), eve::physics_editing::softBody3DDefinitionSchema(), toValue() , 以及 validate().
◆ maxDeformation
| float eve::physics::SoftBody3DDefinition::maxDeformation = 0.f |
在文件 SoftBody3DDefinition.h 第 32 行定义.
被这些函数引用 fromValue(), schemaDefinition(), eve::physics_editing::softBody3DDefinitionSchema(), toValue() , 以及 validate().
◆ originX
| float eve::physics::SoftBody3DDefinition::originX = 0.f |
在文件 SoftBody3DDefinition.h 第 27 行定义.
被这些函数引用 fromValue(), schemaDefinition(), eve::physics_editing::softBody3DDefinitionSchema(), toValue() , 以及 validate().
◆ originY
| float eve::physics::SoftBody3DDefinition::originY = 0.f |
在文件 SoftBody3DDefinition.h 第 27 行定义.
被这些函数引用 fromValue(), schemaDefinition(), eve::physics_editing::softBody3DDefinitionSchema(), toValue() , 以及 validate().
◆ originZ
| float eve::physics::SoftBody3DDefinition::originZ = 0.f |
在文件 SoftBody3DDefinition.h 第 27 行定义.
被这些函数引用 fromValue(), schemaDefinition(), eve::physics_editing::softBody3DDefinitionSchema(), toValue() , 以及 validate().
◆ particleMass
| float eve::physics::SoftBody3DDefinition::particleMass = 0.1f |
在文件 SoftBody3DDefinition.h 第 31 行定义.
被这些函数引用 fromValue(), schemaDefinition(), eve::physics_editing::softBody3DDefinitionSchema(), toValue() , 以及 validate().
◆ particleRadius
| float eve::physics::SoftBody3DDefinition::particleRadius = 0.2f |
在文件 SoftBody3DDefinition.h 第 31 行定义.
被这些函数引用 fromValue(), schemaDefinition(), eve::physics_editing::softBody3DDefinitionSchema(), toValue() , 以及 validate().
◆ plasticCreep
| float eve::physics::SoftBody3DDefinition::plasticCreep = 0.f |
在文件 SoftBody3DDefinition.h 第 32 行定义.
被这些函数引用 fromValue(), schemaDefinition(), eve::physics_editing::softBody3DDefinitionSchema(), toValue() , 以及 validate().
◆ plasticRecovery
| float eve::physics::SoftBody3DDefinition::plasticRecovery = 0.f |
在文件 SoftBody3DDefinition.h 第 32 行定义.
被这些函数引用 fromValue(), schemaDefinition(), eve::physics_editing::softBody3DDefinitionSchema(), toValue() , 以及 validate().
◆ plasticYield
| float eve::physics::SoftBody3DDefinition::plasticYield = 0.f |
在文件 SoftBody3DDefinition.h 第 32 行定义.
被这些函数引用 fromValue(), schemaDefinition(), eve::physics_editing::softBody3DDefinitionSchema(), toValue() , 以及 validate().
◆ rows
| int eve::physics::SoftBody3DDefinition::rows = 4 |
在文件 SoftBody3DDefinition.h 第 25 行定义.
被这些函数引用 fromValue(), schemaDefinition(), eve::physics_editing::softBody3DDefinitionSchema(), toValue() , 以及 validate().
◆ SchemaId
|
staticconstexpr |
在文件 SoftBody3DDefinition.h 第 22 行定义.
被这些函数引用 ensureSchemaRegistered(), fromValue(), schemaDefinition(), eve::physics_editing::softBody3DDefinitionSchema() , 以及 toValue().
◆ SchemaVersion
|
staticconstexpr |
在文件 SoftBody3DDefinition.h 第 23 行定义.
被这些函数引用 schemaDefinition(), eve::physics_editing::softBody3DDefinitionSchema() , 以及 toValue().
◆ selfCollision
| bool eve::physics::SoftBody3DDefinition::selfCollision = false |
在文件 SoftBody3DDefinition.h 第 33 行定义.
被这些函数引用 fromValue(), schemaDefinition(), eve::physics_editing::softBody3DDefinitionSchema() , 以及 toValue().
◆ spacing
| float eve::physics::SoftBody3DDefinition::spacing = 0.35f |
在文件 SoftBody3DDefinition.h 第 26 行定义.
被这些函数引用 fromValue(), schemaDefinition(), eve::physics_editing::softBody3DDefinitionSchema(), toValue() , 以及 validate().
该结构体的文档由以下文件生成:
- src/modules/physics/softbody/SoftBody3DDefinition.h
- src/modules/physics/softbody/SoftBody3DDefinition.cpp