如何解决我很难在检查器中恢复我的变量 ID
你能帮我在unity的inspector中获取id的值吗? 我在统一控制台中有一个 json,我做了一个程序来访问这个 json 中的数据,然后在统一检查器中恢复它。对于“位置”,它有效,但对于“id”没有。我试过很多方法都没有用。
这是我在启动函数和更新函数中的代码,我已经搜索过,但我没有找到如何为 id 执行此操作:
我使用的是 SimpleJSON。
if(mono != null)
{
JSONNode id = Face["mono"]["id"].AsInt;
JSONNode position = Face["mono"]["position"];
Vector3 pos = new Vector3(position["x"].AsFloat,position["y"].AsFloat,position["z"].AsFloat);
int ident = new ident(id);
x = pos.x;
y = pos.y;
z = pos.z;
id= ident.id;
}
private void Update()
{
Vector3 newPosition = new Vector3(x,y,z);
gameObject.transform.localPosition = newPosition;
}
这是我的 json: { "cmd": "数据","frame_time": "2021-06-10T11:16:54.678596+00:00","start_time": "2021-06-10T10:35:40.516632+00:00",“流”:[ { "name": "usb0.1245.2",“对象”:[ { "name": "脸",“单核细胞增多症”: { "id": "18",“位置”: { "x": "0.073997","y": "-0.024979",“z”:“0.677220” } },“多”: [ { "id": "18",“z”:“0.677220” } } ] } ] } ],“播放”:{“列表”:“测试”, “项目”:“right_key” } }
解决方法
如果您从 int
获得 Face["mono"]["id"].AsInt;
,您可以通过设置类的 public
或 [SerializeField] private
变量在检查器中设置它,如下所示:
public myInt = 0; //also [SerializeField] private myInt = 0;
if(mono != null)
{
myInt = Face["mono"]["id"].AsInt;
JSONNode position = Face["mono"]["position"];
Vector3 pos = new Vector3(position["x"].AsFloat,position["y"].AsFloat,position["z"].AsFloat);
int ident = new ident(id);
x = pos.x;
y = pos.y;
z = pos.z;
id= ident.id;
}
private void Update()
{
Vector3 newPosition = new Vector3(x,y,z);
gameObject.transform.localPosition = newPosition;
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。