我是想做血条,然后拿到人物的坐标之后将血条显示到canvas上,或者大佬有直接在3D模型上面做血条的思路也可以,求教!!!!
1赞
官方3ddemo中一个射击游戏里面有效果
https://github.com/cocos-creator/example-3d
simple-shooting: a simple shooting game demo.
兄弟fps的血条不是跟随主角的,是固定在界面上的
2dui在3d物体坐标进行显示:
注意点是2dui要有ui组件:
this.testNode.getWorldPosition(_v3_0);
this.CameraNode.convertToUINode(_v3_0, this.testNodeUI.parent, _v3_0);//需要在物体加载完毕后,才能执行到3D 节点转 UI 本地节点坐标。
this.testNodeUI.setPosition(_v3_0);
官方案例有很多功能例子不错~
我记得1.0.4版本的demo中有,我回去看一下
好的谢谢啦
你好,我不是太明白第一个this.testNode.getWorldPosition(v30);这个是3D模型的坐标吗?
第二行
为什么要this.testNodeUI.parent 而不是this.testNodeUI
第一点,是你要用来转换的 3d 点的坐标,你这里如果用的是模型位置做坐标转换,那就是模型的世界坐标
第二点,为什么选的是 parent,是看你要转换的空间,你可以理解为是在哪个 ui 节点下,计算得出的偏移,假如你当前 2d 节点是 testNodeUI,那么,做计算的时候它的位置是相对于它的 parent 偏移了多少,如果传的是自身,就是相对于自身偏移了多少,自身又相对于自身,这个理解就很怪了对吧
好的谢谢,有没有demo用了这些代码呢?
谢谢,已经弄好了