unity之UI
1.Vector3坐标

2.地球,月球,太阳的旋转关系

using System.Collections;
using System.Collections.Generic;
using UnityEngine; public class spere01 : MonoBehaviour {
public GameObject moon;
public GameObject sun;
// Use this for initialization
void Start () { } // Update is called once per frame
void Update () {
// transform.Rotate(Vector3.up, 2, Space.World);//up表示围绕上面轴旋转
moon.transform.Rotate(, , );//月球自传
transform.Rotate(, , );//地球自转
sun.transform.Rotate(Vector3.up);//太阳自转
moon.transform.RotateAround(transform.position, Vector3.up, );//月亮围绕地球转
transform.RotateAround(sun.transform.position, Vector3.up, );//地球围绕太阳转 }
}

3.UI之游戏界面

登录错误提示:

提示登录失败用:
if (this.gameObject.activeSelf)
{
time += Time.deltaTime;//计时器
if (time > 3)
{
failText.gameObject.SetActive(false);//登录失败消失
time = 0;
}
}
进入游戏就有声音:
slider.maxValue = 100;
slider.minValue = 0;
slider.value = 50;//赋初值
if (toggle.isOn==true)
{ audio.mute = true;//静音
}
else
{
audio.mute = false;
} audio.volume =(float) (slider.value/100);//把音量条的值赋给背景音乐


//总代码
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;
using UnityEngine.UI; public class UIcontrol : MonoBehaviour {
public InputField InputUserName;
public InputField InputPassWord;
public Button button;
public GameObject failText;
public Button closeSetting;
public GameObject Panel;
public Slider slider;
public Toggle toggle;
AudioSource audio; // Use this for initialization
void Start () {
InputUserName = InputUserName.GetComponent<InputField>();
InputPassWord = InputPassWord.GetComponent<InputField>();
button = button.GetComponent<Button>();
closeSetting = closeSetting.GetComponent<Button>();
slider = slider.GetComponent<Slider>();
audio = GetComponent<AudioSource>();
slider.maxValue = ;
slider.minValue = ;
slider.value = ; } public void GetButton()
{
if (InputUserName.text == "huangwei" && InputPassWord.text == "")
{
SceneManager.LoadScene();
}
else
{
failText.gameObject.SetActive(true);//登录失败出现
}
}
public void OpenSetting()
{
Panel.gameObject.SetActive(true);//打开设置
}
public void CloseSetting()//关闭设置
{
Panel.gameObject.SetActive(false);
}
// Update is called once per frame
float time; void Update()
{
if (this.gameObject.activeSelf)
{
time += Time.deltaTime;//计时器
if (time > )
{
failText.gameObject.SetActive(false);//登录失败消失
time = ;
}
} if (toggle.isOn==true)
{ audio.mute = true;//静音
}
else
{
audio.mute = false;
} audio.volume =(float) (slider.value/);//把音量条的值赋给背景音乐
}
}
4.进度条slider: using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI; public class test : MonoBehaviour { Text test01;
int num = ;
float time; public Slider slider;
// Use this for initialization
void Start () {
test01 = this.GetComponent<Text>();
slider = slider.GetComponent<Slider>();
slider.maxValue = ;
slider.value = slider.minValue;
} // Update is called once per frame
void Update () {
time += Time.deltaTime;
//if (time >0.1f)
//{
// num++;
// if (num >100)
// {
// num = 100;
// test01.text = num + " %";
// }
// else
// {
// slider.value = num;
// time = 0;
// } //}
//test01.text = num + " %";
//另一种方法 if (time > )
{
time = ;
}
slider.value = time * ;
test01.text = (int)(time*)+ " %";
}
}
5.
技能冷却:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI; public class CoolSkill : MonoBehaviour
{
public Image image;
float time;
float f;
public Text text;
bool b = false;
bool bb = true;
// Use this for initialization
void Start()
{
image = image.GetComponent<Image>();
text = text.GetComponent<Text>();
image.fillAmount = ;//默认可以发出技能
}
public void GetBool()
{
if (bb)//限制技能开启后才能使用
{
b = true;
bb = false;
}
}
// Update is called once per frame
void Update()
{
if (b)
{
time += Time.deltaTime;
if (time <= )//技能控制在5秒冷却
{
f = ( - time);//5秒倒计时
image.fillAmount = (f) / ;//image也在360度递减
text.text = (f).ToString();//文本输出倒计时
if (f < 0.1f && f >= )/控制在0.1秒以内结束时才可以重新开启技能
{
bb = true;//重新开启技能Button可以点击了
}
}
else
{
time = ;//超过5秒后时间置零
b = false;/tton点击后又可以计时了
} } }
}
unity之UI的更多相关文章
- Unity的UI究竟为什么可以合批
1.UI/Default代码研究首先,我想到的是,既然是对图集纹理进行采样,而且又不能统一更改材质的纹理UV值,我们通常写的shader都是直接根据模型UV值对主纹理进行采样,那会不会是shader中 ...
- 关于如何在 Unity 的 UI 菜单中默认创建出的控件 Raycast Target 属性默认为 false
关于如何在 Unity 的 UI 菜单中默认创建出的控件 Raycast Target 属性默认为 false 我们在 Unity 中通过 UI 菜单创建的各种控件,比如 Text, Image 等, ...
- C#程序员整理的Unity 3D笔记(十五):Unity 3D UI控件至尊–NGUI
目前,UGUI问世不过半年(其随着Unity 4.6发布问世),而市面上商用的产品,UI控件的至尊为NGUI:影响力和广度(可搜索公司招聘Unity 3D,常常能看到对NGUI关键词). NGUI虽然 ...
- Unity在UI界面上显示3D模型/物体,控制模型旋转
Unity3D物体在UI界面的显示 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- ...
- 关于Unity中UI中的Mask组件、Text组件和布局
一.Mask组件 遮罩,Rect Mask矩形Mask(Rect Mask2D组件),图片Mask(Mask组件)(图片Mask的透明度不为0的部分显示子图片,为0的部分不显示子图片) Rect Ma ...
- 关于Unity中UI中的Image节点以及它的Image组件
一.图片的Inspector面板属性 Texture Type:一般是选择sprite(2D and UI) Sprite Mode:一般是选择Single Packing Tag:打包的标志值,最后 ...
- unity简易ui框架
在unity项目开发中,ui模块的开发往往占据了很大一部分工作,部分游戏甚至绝大部分的工作都是在ui上,如何高效管理各种界面,这里分享一套高效易用的UI框架. 首先,我们定义一个PanelBase类, ...
- Unity shader UI的3D效果
原创,转载请标明出处 1.效果 scene视图中的效果: game视图中效果: 2.核心思想:改变UI的顶点坐标 3.好处:可以用正交相机来实现3D效果. 4.Shader 实现 // Unity b ...
- unity UGUI UI跟随
实现2dUI跟随游戏中角色的移动(应用于玩家名称,血条,称号) using UnityEngine; public class UI_Follow : MonoBehaviour { public C ...
- [Unity优化]UI优化(三):GraphicRebuild
参考链接: https://blog.csdn.net/jingangxin666/article/details/80143176 调试过程: 1.修改Image的颜色 2.Graphic.SetV ...
随机推荐
- 开启spark日志聚集功能
spark监控应用方式: 1)在运行过程中可以通过web Ui:4040端口进行监控 2)任务运行完成想要监控spark,需要启动日志聚集功能 开启日志聚集功能方法: 编辑conf/spark-env ...
- mysql帮助命令
HELP contents 查看MySQL命令的使用. eg: HELP 'Data Type' 查看所有的数据类型的使用方法.
- ascii码值
ascii码值#0 空值 即null#8 退格键#13 回车键
- SQL SERVER 基于数据库镜像的主从同步(数据库镜像实践汇总)
SQL SERVER 基于数据库镜像的主从同步 Author:chaoqun.guo createtime:2019-03-26 目录 SQL SERVER 基于数据库镜像的主从同步... 1 ...
- python wmi模块 获取windows内部信息
WMI (Windows Management Instrumentation) 模块可用于获取 Windows 内部信息,在使用Python获取Windows系统上的相关的信息可以使用WMI接口来获 ...
- larabbs安装教程
LaraBBS 是一个简洁的论坛应用,使用 Laravel5.5 编写而成.https://github.com/summerblue/larabbs 1. 克隆源代码克隆 larabbs 源代码到本 ...
- Github上Laravel开源排行榜Star数前30名
Github上Laravel开源排行榜前30名,罗列所有 Laravel 开源扩展包,含 Github Star 数量,下载数量和项目简介.默认排序是按Star数量从多到少来排 1.cachethq/ ...
- 帝国cms搜索关键字调用标签(showsearch)怎么用
前面ytkah介绍了如何让帝国CMS7.2搜索模板支持动态标签调用,现在我们来说说怎么调用帝国cms搜索关键字调用标签(showsearch).在帝国cms后台那边的使用方法:[showsearch] ...
- finecms栏目文章页seo设置
finecms栏目页和文章页默认的标题是页面title_二级栏目title_一级栏目title_网站名称(比如:finecms怎么设置标题_finecms二次开发_finecms_ytkah博客),如 ...
- 报错解决——linux下执行sh出现异常"syntax error: unexpected end of file"
有时我们在linux下执行一个sh文件,会报错“SYNTAX ERROR:UNEXPECTED END OF FILE”,这个现象主要是工作的系统环境改变造成的. 若最初脚本中是在windows下,使 ...