屏幕坐标转世界坐标问题

使用Camera的screenToWorld方法,想将手指触摸位置转换成3D中对应 的世界坐标位置,但是结果差异很大。如截图描述

用射线检测

朋友,有可能借签的我这种需要的代码片段吗?

let 你要的点:v3 = 射线检测(摄像机朝向向量);
console.log(你要的点)
别问,问就是中文编程yyds :innocent:

1赞

中文编程也不错哈 :grinning:

let p: Camera = this.camera.getComponent(Camera)!

    p.screenPointToRay(touch._point.x, touch._point.y, this._ray);

    if (PhysicsSystem.instance.raycast(this._ray)) {

        const r = PhysicsSystem.instance.raycastResults;

        console.log(r.length)

        for (let i = 0; i < r.length; i++) {

            const item:PhysicsRayResult = r[i];

             console.log(item.hitPoint)

             this.test2.setWorldPosition(item.hitPoint)

        }

    }

网上找的例子,可行