位置: 编程技术 - 正文
推荐整理分享Unity3D基础--常用的GUI控件(unity3d操作),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:unity3d用途,unity3d基础操作,unity3d documentation,unity3d基础操作,unity3d总结,unity3d基础操作,unity3d总结,unity3d基础操作,内容如对您有帮助,希望把文章链接给更多的朋友!
Unity3D中的GUI部分是每帧擦除重绘的,只应该在OnGUI中绘制GUI,每一次在OnGUI方法中声明的变量都不会保存下来,例如,在Unity中画一个文本编辑框可以调用如下代码:GUILayout.TextField("text");但是运行后会发现,不论我们输入什么都还是只会显示text字符串。这是因为:我们在上一帧中输入的字符串没有被保存,在下一帧中会全部擦除重绘,即重新绘制一个"text"字符串。解决方法:我们可以在该类的成员变量中保存下来输入,在Start方法中进行初始化 text = GUILayout.TextField(text);接下来介绍几个比较常用的控件。
1.按钮:GUILayout.Button("Hello");该方法返回一个布尔类型,只有在按下Button抬起的时候返回true,在按下的过程中仍然返回false。
2.重复按钮:GUILayout.RepeatButton("Hello");与Button不同的时,该方法只要是我们按下Button期间会一直返回true,适合做子弹反射按钮。
3.密码框:pwd = GUILayout.PasswordField(pwd,‘*’),第二个参数为掩码字符。
4.Tab页: selectedToolBarId = GUILayout.Toolbar(selectedToolBarId,new string[]{“Tab1”,“Tab2”,“Tab3”}); 返回为激活的按钮的序号。根据得到标签序号,我们可以绘制相应的Tab页。 5.单选框Toggle,返回布尔表示当前选中的情况。 6.滑动条:纵向, sliderValue = GUILayout.VerticalSlider(sliderValue,0,);返回为当前,第二个参数为最小,第三个为最大。 HorizontalSlider()横向。
7.区域Area,相当于一个控件的盒子, Area中的控件跟着Area移动, BeginArea()开始一个区域,参数指定区域的大小和坐标, EndArea()结束区域; 8.窗口,区域是没有边框和标题的,也不可以拖放。 GUILayout.Window(0, new Rect(,,,),AddWindow1,“我的窗口”); 第一个参数为窗口的编号,第二个为窗口大小,第三个为void WindowFunction(int windowId)委托,用来绘制窗口内容。
窗口拖拽,在WindowFunction的最后调用GUI.DragWindow()可以启用全屏拖放(给DragWindow传Rect参数可以设定可拖放的区域)。考虑帧刷新的问题,要在OnGUI把Window()的返回Rect保存才可以可拖动,Start()中设定初始位置。
Unity的Attribute(特性)还算多吧 转载请注明出处:
unity3d如何实现角色站到台阶跟着上下左右 在实现角色站到台阶跟随物体移动的时候,上下运动因为有重力和刚体的碰撞,所以角色可以勉强跟着物体移动,但是会发现角色在下落的时候会跟不
unity3d如何实现角色从台阶下面可以跳上去,上面却没法落下来 Vector2pointA=groundCheck.position;Vector2pointB=groundCheck.position+newVector3(0,-0.1f,0);boolbanded=Physics2D.Linecast(pointA,pointB,1LayerMask.NameToLayer(Band));boolignore=!banded;Physics2D.Ignor
标签: unity3d操作
本文链接地址:https://www.jiuchutong.com/biancheng/378836.html 转载请保留说明!友情链接: 武汉网站建设