载入中...
搜索中...
未找到
Live2DNullBackend.h
浏览该文件的文档.
1#pragma once
2
4
5#include <string>
6#include <unordered_map>
7
8namespace eve::avatar {
9
17public:
18 std::string getName() const override { return "null"; }
19
20 bool loadModel(const std::string &path) override {
21 path_ = path;
22 return !path.empty();
23 }
24
25 void update(float /*dt*/) override {}
26
27 void setParameter(const std::string &name, float value) override {
28 if (!name.empty()) params_[name] = value;
29 }
30
31 float getParameter(const std::string &name) const override {
32 auto it = params_.find(name);
33 return it == params_.end() ? 0.f : it->second;
34 }
35
36 bool setExpression(const std::string &name) override {
37 expression_ = name;
38 return !name.empty();
39 }
40
41 bool setMotion(const std::string &name) override {
42 motion_ = name;
43 return !name.empty();
44 }
45
46 std::string modelPath() const { return path_; }
47 std::string expression() const { return expression_; }
48 std::string motion() const { return motion_; }
49
50private:
51 std::string path_;
52 std::string expression_;
53 std::string motion_;
54 std::unordered_map<std::string, float> params_;
55};
56
58
59} // namespace eve::avatar
std::string value
const char * name
Definition RockMesh.cpp:21
Optional Live2D runtime backend (Cubism etc.). Registered from C++ / plugins.
Built-in Live2D placeholder backend (no Cubism SDK). Stores path / parameters / expression / motion s...
float getParameter(const std::string &name) const override
bool setExpression(const std::string &name) override
void setParameter(const std::string &name, float value) override
std::string getName() const override
bool loadModel(const std::string &path) override
bool setMotion(const std::string &name) override
ILive2DBackend * createNullLive2DBackend()