[开发者心得] 点击场景里面的换装资源进行换装

[复制链接]
813 |1
Pepsi Cola 发表于 2023-6-30 13:42:00 | 显示全部楼层 |阅读模式
本帖最后由 Pepsi Cola 于 2023-6-30 13:45 编辑

分享一个点击场景里面的换装资源进行人物玩家换装

this.input = new Gameplay.TouchInput();
        // 设置玩家控制器,使用前需调用一次
        this.input.setPlayerController();
        this.input.onTouchEnd.add((index, location, touchtype) => {
            // 转换点击的屏幕坐标为3D世界坐标

            const pos = InputUtil.convertScreenLocationToWorldSpace(location.x, location.y)
            // 获得点击位置前方方向
            const forV = pos.worldDirection;
            // 计算点击位置朝向一定距离的终点位置
            const endPos = pos.worldLocation.clone().add(forV.multiply(6000));
            const hitInfo = Gameplay.lineTrace(pos.worldLocation, endPos, false, true, [], false, Gameplay.getCurrentPlayer());
            if (hitInfo.length > 0) {
                for (const hitResult of hitInfo) {
                    if (hitResult.gameObject.tag) {
                        /**给换装资源下面的正方体设置对应tag进行人物换装*/
                        const v2 = Gameplay.getCurrentPlayer().character.getAppearance() as Gameplay.HumanoidV2
                        v2.upperCloth.setMesh("63954", false)
                    }
                }
            }

        })

但是射线检测在场景里面检测不到换装资源,这里我用了一个正方体放在换装资源下面,用于射线检测
image.png
如果大家还有别的方法可以评论下



image.png
回复

使用道具 举报

顾北清歌寒吹雪 发表于 2023-6-30 17:57:50 | 显示全部楼层
666
回复

使用道具 举报

热门版块
快速回复 返回顶部 返回列表