使用的编辑器版本是最新的creator 3d 3.5,
上图是测试截图,监听的鼠标左键按下事件,转换方法 在网络上搜寻了多种,但是在我本地测试都是得不到预期的值,
截图中的v3中的第三个参数30是因为我的摄像机位置是(0,0,30);
有遇到此类情况的网友吗
使用的编辑器版本是最新的creator 3d 3.5,
你好,参考一下这个demo 的用法看看?
请教一下,那个distance的值是怎么确定的呢
距离相机的距离除以相机远近面板距离
另外一种做法,可以参考这个实现。
https://gitee.com/yeshao2069/CocosCreatorDemos/tree/v3.4.x/demo/Creator3.4.0_3D_FirstPersonShooting
我在xy的平面上搞了一个透明的可以撞击的平面,采用射线去转换了屏幕的点击坐标
大佬,这个demo的相机角度是垂直向下的,如果相机有倾斜角,rotation的值不是90或者0这种的,计算出来的位置会有偏差
同问,请问解决了吗
假如你的问题是在一个2d游戏中获取点击点的坐标的话,我这个可能可以提供点思路。
//注册全屏点击监听 这个node是和Canvas一样大小的节点
private registerOnclick() {
this.node.on(NodeEventType.TOUCH_START, (event: EventTouch) => {
let uiPos = event.getUILocation() //原点在左下角的坐标
uiPos.x = uiPos.x - this.practicalSize.width / 2
uiPos.y = uiPos.y - this.practicalSize.height / 2
EventManager.dispatch(E_gameEvent.e_clickScreen, uiPos)
})
}