载入中...
搜索中...
未找到
VoxelCatalog.h 文件参考

MagicaVoxel-style sculpted models: bounded occupancy grids and hull sockets. 更多...

#include "common/Export.h"
#include "editing/EditableTarget.h"
#include "editing/EditingAuthority.h"
#include "editing/EditingProperty.h"
#include <array>
#include <cstdint>
#include <string>
#include <string_view>
#include <vector>

浏览源代码.

类

struct  eve::voxel_editing::VoxelSocket
 One face socket: matching tag plus compatible polarity. 更多...
 
struct  eve::voxel_editing::VoxelCoord
 One occupied cell inside a sculpted model. 更多...
 
struct  eve::voxel_editing::VoxelModelValue
 One MagicaVoxel-style object: a bounded occupancy grid. 更多...
 
struct  eve::voxel_editing::VoxelPick
 DDA pick against a sculpted model. 更多...
 
class  eve::voxel_editing::VoxelCatalogTarget
 Revisioned project of MagicaVoxel-style sculpted models. 更多...
 

命名空间

namespace  eve
 Build metadata (engine git commit, build time, third-party version).
 
namespace  eve::voxel_editing
 

类型定义

using eve::voxel_editing::CapabilityId = editing::CapabilityId
 
using eve::voxel_editing::DiagnosticSeverity = editing::DiagnosticSeverity
 
using eve::voxel_editing::DomainOperation = editing::DomainOperation
 
using eve::voxel_editing::EditRegion = editing::EditRegion
 
using eve::voxel_editing::EditorDiagnostic = editing::Diagnostic
 
using eve::voxel_editing::EditorStatus = editing::Status
 
using eve::voxel_editing::EditorValue = editing::Value
 
using eve::voxel_editing::IDomainOperationTarget = editing::IDomainOperationTarget
 
using eve::voxel_editing::IDomainOperationTargetStaging = editing::IDomainOperationTargetStaging
 
using eve::voxel_editing::IEditableTarget = editing::IEditableTarget
 
using eve::voxel_editing::IEditingSnapshotProvider = editing::IEditingSnapshotProvider
 
using eve::voxel_editing::IPropertyProvider = editing::IPropertyProvider
 
using eve::voxel_editing::ObjectId = editing::ObjectId
 
using eve::voxel_editing::PropertyDescriptor = editing::PropertyDescriptor
 
using eve::voxel_editing::PropertyFlag = editing::PropertyFlag
 
using eve::voxel_editing::PropertyPath = editing::PropertyPath
 
using eve::voxel_editing::PropertyReadResult = editing::PropertyReadResult
 
using eve::voxel_editing::PropertyReadState = editing::PropertyReadState
 
using eve::voxel_editing::PropertySchema = editing::PropertySchema
 
using eve::voxel_editing::PropertySetMode = editing::PropertySetMode
 
using eve::voxel_editing::PropertyType = editing::PropertyType
 
using eve::voxel_editing::Revision = editing::Revision
 
using eve::voxel_editing::RuleId = editing::RuleId
 
using eve::voxel_editing::SelectionSnapshot = editing::SelectionSnapshot
 
using eve::voxel_editing::TargetDescriptor = editing::TargetDescriptor
 
using eve::voxel_editing::TargetId = editing::TargetId
 

枚举

enum class  eve::voxel_editing::VoxelSocketKind { eve::voxel_editing::None , eve::voxel_editing::Symmetric , eve::voxel_editing::Male , eve::voxel_editing::Female }
 Polarity of one authored join socket. 更多...
 
enum class  eve::voxel_editing::VoxelCellFill { eve::voxel_editing::Empty , eve::voxel_editing::Partial , eve::voxel_editing::Filled }
 Derived occupancy of a sculpted object. 更多...
 

函数

VoxelSocketKind eve::voxel_editing::voxelSocketKindFromName (std::string_view name)
 Parse a socket kind name.
 
const char * eve::voxel_editing::voxelSocketKindName (VoxelSocketKind kind)
 Stable serialized name for a socket kind. @ownership Observed static string; callers must not free it. @lifetime Valid for the process lifetime. @thread Any.
 
bool eve::voxel_editing::canJoinVoxelSockets (const VoxelSocket &a, const VoxelSocket &b)
 True when two facing sockets may join.
 
int eve::voxel_editing::voxelOppositeFace (int face)
 Opposite FaceDir index in PosX/NegX/PosY/NegY/PosZ/NegZ order.
 
VoxelCellFill eve::voxel_editing::voxelClassifyModelFill (const VoxelModelValue &model)
 Classify a sculpted model as empty, partial, or a solid cube.
 
bool eve::voxel_editing::isVoxelModelOccupied (const VoxelModelValue &model, int x, int y, int z)
 True when model contains an occupied cell at (x,y,z).
 
VoxelPick eve::voxel_editing::pickVoxelModel (const VoxelModelValue &model, float ox, float oy, float oz, float dx, float dy, float dz, float maxDistance)
 Raycast occupied cells with MagicaVoxel-style previous-cell attach.
 

变量

constexpr int eve::voxel_editing::kVoxelModelMaxSize = 32
 Inclusive maximum MagicaVoxel-like object edge (cells).
 
constexpr int eve::voxel_editing::kVoxelModelMaxOccupied = 4096
 Occupied-cell budget for one sculpted object.
 

详细描述

MagicaVoxel-style sculpted models: bounded occupancy grids and hull sockets.

在文件 VoxelCatalog.h 中定义.