载入中...
搜索中...
未找到
AvatarVroid.cpp
浏览该文件的文档.
41 eve::DiagnosticCode::InvalidArgument, "Expected a live VRoid Avatar and a nonempty path", "path"));
92eve::Result<void> AvatarInstance::setHumanoidBoneRotation(std::string_view semantic, float yaw, float pitch,
96 eve::Diagnostic::error(eve::DiagnosticCode::InvalidArgument, "Expected imported VRM and finite angles"));
104bool AvatarInstance::loadVroidModelPath(const std::string &path) { return loadVroidModel(path).ok(); }
105int AvatarInstance::getVroidMeshCount() const { return vrm_ ? static_cast<int>(vrm_->parts.size()) : 0; }
106int AvatarInstance::getVroidSpringCount() const { return vrm_ ? static_cast<int>(vrm_->document.springs.size()) : 0; }
107std::string AvatarInstance::getVroidVersion() const { return vrm_ ? vrm_->document.version : std::string{}; }
static Diagnostic error(DiagnosticCode code, std::string message, std::string path={}, DiagnosticDetails details={}, std::string source={})
Construct an error diagnostic with the standard error severity.
Definition Diagnostic.h:125
bool ok() const noexcept
Whether this result represents a non-failure outcome.
Definition Result.h:480
static Result failure(Status status)
Construct a failed result from a structured status.
Definition Result.h:175
eve::Result< void > setHumanoidBoneRotation(std::string_view semantic, float yaw, float pitch, float roll)
Set an imported humanoid bone's local rotation offset in radians.
Definition AvatarVroid.cpp:92
float getParameter(const std::string &name) const
Returns the parameter.
Definition AvatarInstance.cpp:503
graphics::Mesh * getBoundMesh() const
Borrow the first imported mesh, or the manually bound mesh.
Definition AvatarVroid.cpp:173
bool loadVroidModelPath(const std::string &path)
Compatibility-only bool projection of loadVroidModel; performs the real import.
Definition AvatarVroid.cpp:104
std::string getVroidVersion() const
Imported VRM specification version, or empty before import.
Definition AvatarVroid.cpp:107
bool bindVroidModelData(model3d::ModelData *data)
Binds vroid model data.
Definition AvatarVroid.cpp:114
int loadMorphNamesFromModel(int meshIndex=0)
Register morph target names from ModelData as parameters (weights default 0).
Definition AvatarVroid.cpp:121
bool bakeMorphs()
Push parameter weights onto Mesh morphs and bake GPU verts when possible.
Definition AvatarVroid.cpp:186
void setRotation3D(float yaw, float pitch, float roll)
Sets the rotation 3 d.
Definition AvatarVroid.cpp:161
int getVroidMeshCount() const
Number of imported mesh primitives; zero before successful import.
Definition AvatarVroid.cpp:105
bool hasParameter(const std::string &name) const
True when parameter.
Definition AvatarInstance.cpp:509
eve::Result< void > loadVroidModel(std::string_view path)
Import and atomically replace a complete VRM avatar from a VFS path.
Definition AvatarVroid.cpp:38
graphics::Renderable3D * getRenderable3D() const
Borrow the first imported render projection, or the manual projection.
Definition AvatarVroid.cpp:108
static eve::Result< std::unique_ptr< VrmRuntime > > prepare(std::string_view path)
Prepare.
Definition VrmRuntime.cpp:36
bool setMorphWeight(const std::string &name, float weight)
Sets the morph weight.
Definition Mesh.cpp:202
void setRotation(float yaw, float pitch, float roll)
Definition Renderable3D.cpp:16
void setTexture(Texture *texture)
Definition Renderable3D.cpp:38
void setPosition(float x, float y, float z)
Definition Renderable3D.cpp:9
void setScale(float sx, float sy, float sz)
Definition Renderable3D.cpp:27
GPU texture created via Graphics::newTexture. Owns GPU resources through an opaque backend handle.
Definition Texture.h:18
CPU-side decoded 3D model (Assimp scene owned via medialoader::ModelScene). Does not upload to GPU — ...
Definition ModelData.h:39
std::string getMorphTargetName(int meshIndex, int morphIndex) const
Returns the morph target name.
Definition ModelData.cpp:463
int getMorphTargetCount(int meshIndex) const
Assimp morph / blend-shape targets on a mesh (aiAnimMesh).
Definition ModelData.cpp:457
Definition Avatar.cpp:12
@ InvalidArgument
@ NotFound