Unity知识二:显示和隐藏游戏对象
游戏中界面需要来回切换,一种方法是把它们都显示出来,用到某个游戏对象的时候让它的位置发生变化,是我们能看到;另一种方法就是游戏对象都放在这里,只是有些显示,而有些要隐藏。当我需要某些物体显示的时候它再显示,同时也可以把不必要的游戏物体给隐藏起来。
隐藏游戏物体用SetActive()方法。
比如:
GameObject gameLoginBackground;// Use this for initializationvoid Start () {gameLoginBackground = GameObject.Find("LoginBackground");gameLoginBackground.SetActive(false);}
这样,游戏物体LoginBackground就被隐藏掉了。
注意:(这里有一个很重要的点)
我们说可以SetActive()方法将一个显示的游戏对象设置成隐藏的,但是一个本来就隐藏的游戏对象是无法设置成显示的!
什么意思?来看一张图片:
我们可能会想,我在这个Inspector面板中把它的对号给去掉,它的SetActive()方法的值就是false,等到我想让它显示了,我再设置SetActive()方法的值为true,这样就好了。
不行的亲~
这个对号和SetActive()方法一点关系都没有,你把这个对号去掉了,那这个游戏物体就是不能用的,它都不能用,还怎么去调用它的SetActive()方法?那只能找不到而报错:“object reference not set to an instance of an object”,意思是未将对象引用到对象的实例,说简单点就是这个东西找不到。
所以一个本来就隐藏(现在说不可用更合适)的游戏物体是不能通过SetActive()方法设置显示与隐藏的。
那么我们怎么做呢?
不管怎样,这个游戏物体是存在的,所以只要是游戏中物体,我们都要保证它的对号是勾选上的,然后进行隐藏和显示。
//首先声明一个对象
GameObject gameBackground;
//找到游戏对象
gameBackground = GameObject.FindGameObjectWithTag ("GameBackground");
//先设置它的可用为false,就看不见它了
gameBackground.SetActive (false);XXOO
//经过一系列的XXOO后设置它的可用为true,就可以看见它了
gameBackground.SetActive(true);
注意事项二:
当一个游戏物体的对象的SetActive()设置为false时,那么该游戏物体的Destroy()方法就不能再使用了,原因跟上面类似。所以用不到的话直接Destroy掉吧。
Unity知识二:显示和隐藏游戏对象相关推荐
- 【GameObject 类】 (四)SetActive 显示 / 隐藏游戏对象
在 Unity 中,要激活游戏对象的方法就是使用SetActive(),就是说通过此方法让游戏对象显示或者隐藏. 格式: GameObject.SetActive(value); 说明: (1)Gam ...
- unity找隐藏游戏对象Gameobject
使用GameObject.Find()可以找到场景所有游戏对象(不包括隐藏物体(没打勾的)) 使用transform.Find()可以找到游戏对象隐藏的gameobject(前提他的transform ...
- 【Unity3D自学记录】代码获取隐藏游戏对象
很多人把游戏物体的active改成false后,用GameObject.Find()就找不到游戏对象了. 我来告诉大家一个巧妙的方法,借鉴的是雨松大神的方法~ 首先创建一个父级OBJ,OBJ的acti ...
- 【unity】FPS用鼠标控制游戏对象转动
文章目录 前言 step1:获取鼠标的横纵坐标 Step2:限制视角上下的旋转角度 Step3:通过旋转相机角度来控制游戏物体的旋转 Step4:鼠标居中 完整脚本如下: 前言 随便写了个demo,记 ...
- Unity让带有Rigidbody组件的游戏对象停止运动
代码如下: [SerializeField] private GameObjecct m_Soccer;m_Soccer.GetComponent<Rigidbody>().constra ...
- Unity查找游戏对象及组件
一.访问游戏对象自身的游戏组件 GetComponent<T>(); //T为组件名称 GetComponents<T>(); transform.Translate( ...
- 零基础用Unity制作你的第一个游戏(1)
零基础用Unity制作你的第一个游戏(1) 1.开发环境 2.创建项目 3.Unity界面基本介绍 1.界面介绍 2.场景视图操作 4.创建对象 1.创建地板 2.创建主角 5.不能缺少的仪式感(让游 ...
- Unity Pro 2019 for mac(3D游戏动画开发工具) v2019.2.21f1
想要一款功能强大的3D游戏动画开发工具?Unity 2019能够轻松创建诸如三维视频游戏.建筑可视化.实时三维动画等类型互动内容的多平台的综合型游戏开发工具,以及一个全面整合的专业游戏引擎,用于创建诸 ...
- html中span隐藏属性,Div和Span标签显示与隐藏
本实例中,学习jQuery的知识,显示与隐藏网页上的div或是span标签. 实际环境中,也许是根据某些条件进行,符合条件时,对某个或是某个div或是span标签时行显示与隐藏. 主要是学习jQuer ...
最新文章
- wchar_t*,wchar_t,wchat_t数组,char,char*,char数组,std::string,std::wstring,CString....转换
- 第二次Java作业2
- ASP.NET-关于Global.asax的作用
- js代码实现百度换肤
- win7激活码失效 报错0xC004F057解决方法
- 什么是功能性测试?-Alltesting|泽众云测试
- 将PDF电子书转换成EPUB格式
- 100句励志名句让你在困境中绝地求生
- css 设置图片原来大小,用CSS设置背景图像的大小?
- 1、微信点餐系统之数据库设计
- 论“GPL就是给软件开发者们准备的坑”
- Editplus下载安装
- 云服务器-ubuntu系统
- 网络云:云技术是网络世界的真假美猴王Ya
- 【Android】利用WindowsManager悬浮窗播放本地视频以及下载线上视频保存在本地
- (亲测有效)在SecureCRT终端挂载Ubuntu时遇到的问题
- 开发一个简单网站--第三章:相知
- 阿里2013年双十一准备中的技术突破与亮点
- 晨读美文推荐【英文悦读】-《a day so happy》
- python安卓app下载_Python教学