今天要新增一个按Esc实行关闭游戏的功能,制作这个功能的用法当然要告诉玩家啦!
利用canvas的text ,文字在视窗上显示"关闭视窗 请按ESC"。
首先创建一个Canvas,再於底下创建Text。(可以直接创建Text,系统会自动添加Canvas)
添加好Canvas後,会发现原本的地图变很小,canvas很大很大!不要怀疑是不是电脑出问题或是跑版,这是因为canvas和地图的渲染不同,canvas最後会整个盖住原本的视窗。
调整视窗比例 Game→Free Aspect
如果没有要固定比例,就要注意canvas跑板问题
简单的解决方法是到Canvas Scaler → Canvas Scaler 选择 Scale With Screen Size
如此一来canvas会根据视窗大小自己做伸缩
建立好Canvas之後就可以新增text子物件啦~
新增之後可以手动调整位置,或是输入值,UI介面还有提供几种排版方式(此篇先不讨论)。
到Inspector下的Text可以修改文字内容。
Font可以调整字体、粗斜体、大小。
color可以挑选颜色。
提示说明新增完毕!
Application是UnityEngine命名空间中的class
public static void Quit(); //Application class内的方法 Quit()
接下来写离开游戏功能,结合Input来实作
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class quitGame : MonoBehaviour
{
void Update()
{
//按下esc键
if(Input.GetKeyDown("escape")){
Debug.Log("quit"); //主控台显示quit
Application.Quit(); //关闭应用程序
}
}
}
这个功能要在build之後才看的到效果,游戏程序会直接关闭退回桌面。然而编辑模式,按下开始执行游戏後使用这个功能,会发现没有作用,画面仍然会停留在执行中。
如果想在编辑效果中暂停,可以使用EditorApplication,但是要注意未来在输出游戏时要记得拿掉。
EditorApplication是在UnityEditor命名空间中的class,和Application不一样。
停止游戏执行也不是使用方法,而是一个bool值,负责监测游戏是否执行中。
public static bool isPlaying;
按下执行的时候public static bool isPlaying="true";
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class quitGame : MonoBehaviour
{
void Update()
{
//按下esc键
if(Input.GetKeyDown("escape")){
Debug.Log("quit"); //主控台显示quit
Application.Quit(); //关闭应用程序
EditorApplication.isPlaying="false";
}
}
}
今天静态添加文字,明天来写脚本改变文字吧!
<<: [Day 13] 资料产品生命周期管理-加工资料(二)
>>: #13. Split Landing Page(原生JS版), #14. RGB to Hex Converter(原生JS版)
实务上,因应不同的开发阶段,应用程序会运行在开发环境 (Develop Environment)、预...
今天终於脱离了比较痛苦(?)的python基础语法教学,开始进入python中不可或缺的一环-套件。...
为什麽需要学到阵列? 假设今天这里有100样东西,我们必须设法执行它,而这时候如果不使用阵列,东西都...
笔者以Python作为开发的程序语言,在Python中,有一个好用Web应用程序的套件 - Flas...
今天要来说明的是发送验证信API,这支API会有一点点小麻烦,我会分成两个部份来说明,第一个部份是後...