android - 如何通过来自 3 个不同游戏对象的触发器使游戏对象出现

标签 android unity-game-engine unityscript augmented-reality vuforia

我正在使用 Unity3D 和 Vuforia 开发 AR 应用。

我完成了 AR 的所有基础知识,现在正在完成它。

但是,我目前停留在触发器部分。

我有 3 张抽认卡(1 号、2 号、Plus)。我在它们中的每一个中都放置了盒子碰撞器,在 1 号和 2 号中放置了刚体。Plus 卡充当触发器。

现在,我试图让每张卡片中的游戏对象在触发时消失,并在触发时出现第四个游戏对象。第四个游戏对象是加法的结果(即 1 + 2 = 3)。

我开发了以下代码。游戏对象根据我给它们的标签触发。游戏对象消失,但第四个游戏对象没有出现。我在这里做错了什么?

#pragma strict

var mathplus : GameObject;
var sphere01 : GameObject;
var sphere02 : GameObject;
var result03 : GameObject;

function Start(){
    sphere01.SetActive(true);
    sphere02.SetActive(true);
    mathplus.SetActive(true);
    result03.SetActive(false);
}

function OnTriggerEnter (other : Collider) {
    Debug.Log("Object entered the trigger.");
    if (other.tag == "number01" && other.tag == "number02"){
        mathplus.SetActive(false);
        sphere01.SetActive(false);
        sphere02.SetActive(false);
        result03.SetActive(true);
    }
}

function OnTriggerExit (other : Collider) {
    Debug.Log("Object exited the trigger.");
    mathplus.SetActive(true);
    sphere01.SetActive(true);
    sphere02.SetActive(true);
    result03.SetActive(false);
}

Number卡中的游戏对象称为“sphere”,Plus卡中的游戏对象称为“mathplus”,第四个游戏对象称为“result03”。

希望有人能帮忙解决这个问题。

感谢和问候。

最佳答案

你犯了一个小错误。

因为第四张牌被禁用了,所以它的collider也被禁用了。

你的逻辑是对的,你应该做的是隐藏card4,而不是禁用它

禁用网格渲染以隐藏游戏对象

      GetComponent(MeshRenderer).enabled = false;

是c#脚本,不好意思,我不太懂unity js😆

您可以从 invisible Gameobject and disable Gameobject 获得更多详细信息

关于android - 如何通过来自 3 个不同游戏对象的触发器使游戏对象出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41264003/

相关文章:

android - 添加标记/圆圈时 Google Maps V3 2017 仍然很慢

android - 在android中创建旋转轮?

unity-game-engine - 从编辑器设置 UnityEvents 并使它们调用正确的参数

android - Enemy Animator unity3d(2d) 返回未初始化的动画师

c# - Unity C# 可滚动 GUI.BOX 不适用于 android

audio - Unity3D-如何使纹理更改静音按钮/切换?

java - 尝试设置一个抽象的监听器

android - 了解 RecyclerView setHasFixedSize

javascript - 无法编辑脚本(Unity3D)

javascript - 统一/如何设置敌人生成的限制?