Slog53_Unity3D之功能脚本_FindOtherGameObjects_找到场景内除自己外的其他GameObject

Slog53_Unity3D之功能脚本_FindOtherGameObjects_找到场景内除自己外的其他GameObject

  • ArthurSlog
  • SLog-53
  • Year·1
  • Guangzhou·China
  • Aug 29th 2018

关注微信公众号“ArthurSlog”

职业、技术、机遇、权谋、人脉 还有一个 叫 时间


开发环境MacOS(High Sierra 10.13.5)

需要的信息和信息源:

开始编码

  • 更新后的完整代码:

unity3d_script_c#/FindOtherGameobjects.cs

/// <summary>
/// 2018.8.29
/// Function: Find other gameobjects.
///
/// Unity3D_2017.3.1f1
///
/// README: Please mount a emptyGameObject, then add a button and 
/// the button add a clieck event, drag the emptyGameObject
/// to the button's click's event
/// </summary>

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.AI;
using UnityEngine.SceneManagement;

public class FindOtherGameobjects : MonoBehaviour {

    Scene current_scene;
    GameObject[] objs;

    void Start()
    {
        current_scene = SceneManager.GetActiveScene ();
    }

    public void FindOtherobj()
    {
        if(current_scene.IsValid())
        {
            objs = current_scene.GetRootGameObjects ();

            foreach (GameObject obj in objs)
            {
                if (obj.name != this.name)
                {
                    Debug.Log ("Active scene have '" + obj.name + "'.");
                }
            }
        }
    }
}
  • 首先声明一个 Scene对象,当调用脚本的时候,获取当前 Scene对象
  • 再声明一个 GameObject数组 对象 objs,用来存放当前 Scene里 的所有 GameObject
  • 遍历所有的 GameObject,加入判断,当 Scene里的 GameObject 的name属性不等于自身的时候,执行指定的逻辑
  • 我们在这里的指定逻辑是

unity3d_script_c#/FindOtherGameobjects.cs

Debug.Log ("Active scene have '" + obj.name + "'.");
  • 这样,我们就打印出了除了自身外,其他 GameObject的 name属性了
  • 如果要对自身外的其他 GameObject进行一些操作,更新下面的这行代码就行了:

unity3d_script_c#/FindOtherGameobjects.cs

Debug.Log ("Active scene have '" + obj.name + "'.");
  • 至此,我们实现了 unity3d 找到场景内除自己外的其他GameObject 的功能。

欢迎关注我的微信公众号 ArthurSlog

关注微信公众号“ArthurSlog”

如果你喜欢我的文章 欢迎点赞 留言

谢谢

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/101436.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • graduation和completion_guides和maven区别

    graduation和completion_guides和maven区别参考:androidgradle依赖:implementation和compile的区别2017年google后,Androidstudio版本更新至3.0,更新中,连带着com.android.tools.build:gradle工具也升级到了3.0.0,在3.0.0中使用了最新的Gralde4.0里程碑版本作为gradle的编译版本,该版本gradle编译速度有所加速,更加……

    2022年10月26日
  • RSA加密算法的java实现

    RSA加密算法的java实现最近有一个外部合作项目要求在数据传输过程中使用RSA加密算法对数据进行加密,所以需要编写一个加解密的工具类,因为对方不是java语言,所以是各自实现的这个工具,本文主要讨论实现以及双方调试过程中的一些插曲,希望给大家不要再次踩坑。关于加解密的核心部分,网上有很多博主都有实现过,我也是参考了一些博主的方法自己实现了一个加解密的工具。packagecom.chen.test;importorg.

    2022年5月1日
  • Kubeadm 安装

    Kubeadm 安装

    2022年3月5日
  • cavas的使用汇总[通俗易懂]

    cavas的使用汇总[通俗易懂]canvas图像处理汇总一、canvas的情况canvas自从出来了之后,在前端的图像处理上面提供了各种各样的遍历,虽然很多的操作其实都是要应用到算法的,但是这个也给前端提供了很多的可能性,其中最

    2022年8月6日
  • 20213D激活码_通用破解码[通俗易懂]

    20213D激活码_通用破解码,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月17日
  • 升降压电路的工作原理

    升降压电路的工作原理1.升压电路也叫自举电路,是利用自举升压二极管,自举升压电容等电子元件,使电容放电电压和电源电压叠加,从而使电压升高,有的电路升高的电压能达到数倍电源电压。开关直流升压电路(即所谓的boost或者step-up电路)原理,theboostconverter,或者叫step-upconverter,是一种开关直流升压电路,它可以是输出电压比输入电压高。基本电路图如图所示假定那个开关(三极管或者mos管)已经断开了很长时间,所有的元件都处于理想状态,电容电压等于输入电压。下面要分充电和放电两个部分来

    2022年6月20日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号