cocos 触摸2d屏幕拖动3d节点思路

根据屏幕点击的2d坐标,以及3d摄像机,生成一条带方向的3d射线检测,被射线碰撞的物体,就可以获取到射线碰撞到3d物体上的具体坐标点,然后根据这个坐标点设置被拖动3d节点的位置。

核心代码:

javascript 复制代码
//触摸移动
    onTouchMove(event: EventTouch) {

        //射线检测是否碰到其他方块,并修改显示颜色。
        let touchPos = event.getLocation();
        console.log('触摸移动:', touchPos,event.touch);
        if (!this.dragNode) { //有拖拽节点才进行移动。
            return;
        }
        //拖拽
        let point = new Vec3(1, 1, 0);
        // this.dragNode.setPosition(point);

        let ray = this.mainCamera.screenPointToRay(touchPos.x, touchPos.y);
        // console.log('ray',ray,PhysicsSystem.instance.raycastClosest(ray))
        if (PhysicsSystem.instance.raycastClosest(ray)) {
            const res = PhysicsSystem.instance.raycastClosestResult;
            console.log('移动位置:',res.hitPoint)
            const hitNode = res.collider.node;
            // this.dragNode.setPosition(res.hitPoint.x,res.hitPoint.y,res.hitPoint.z);
            this.dragNode.setPosition(res.hitPoint.x,1,res.hitPoint.z);
            if (hitNode.name.startsWith('tiled')) {
                this.cancelTiled();
                hitNode.getComponent(MeshRenderer).material = this.tiledImgActive;
                this.tiledNodeActive = hitNode;

            } else {
                this.cancelTiled();
            }
        } else {
            this.cancelTiled();
        }
    }

核心属性:res.hitPoint

相关推荐
digitalpath13 小时前
AutoCAD Plant3D免费版下载安装教程(附安装包)AutoCAD Plant3D 2026 保姆级安装教程
其他·3d
具身新纪元13 小时前
ICML 2026|工业3D质检迎来新SOTA:零样本缺陷检测开始拼“多模态硬融合”
3d
七77.13 小时前
【3D 物理布局生成】PHYSCENE: Physically Interactable 3D Scene Synthesis for Embodied AI
人工智能·3d
matlab_xiaowang1 天前
AutoCAD Plant3D 2026安装包免费下载及详细安装教程
其他·3d
3D小将1 天前
3D格式转换之GLTF转换为GLB格式转换技术文档
3d·solidworks模型·rhino模型·sketchup模型·igs模型
星云_byto1 天前
CAMF-Det:Beer-Lambert物理遮際建模+双模态预测网络,UAV LiDAR-Camera 3D检测提升9.43%
3d·多模态融合·哈工大·lidar-camera·uav目标检测·beer-lambert
3D小将1 天前
3D格式转换之Blender工程文件转换GLB格式技术文档
3d·blender·solidworks模型·ug模型·rhino模型·stl模型
Agilex松灵机器人1 天前
UMR × NAVIS:移动机器人行业级通用一体化底盘与3D导航解决方案
人工智能·3d·机器人·ros·slam·vla·松灵机器人
苏州邦恩精密2 天前
蔡司3D扫描仪怎么选?从企业检测需求看供应商实力
人工智能·机器学习·3d·自动化·制造
3D小将2 天前
3D格式转换之GLB转GLB(模型优化与标准化重打包)
3d·solidworks模型·ug模型·sketchup模型·igs模型