Unity新手整理(持续更新)

一、准备工作与基础
1.绘画资源网站:graphikriver.net
2.绘画软件

二、常识
1.暂停、继续、重新开始、退出

Time.timescale = 0; //暂停游戏。
Time.timescale = 1; //继续游戏。
using UnityEngine.SceneManagement;
SceneManager.LoadScene (0);//重新开始。其中,0,为游戏场景的索引号,具体索引号在build的时候加入场景的时候后面写的有。
application.Quit();  //退出游戏。

2.按钮事件
canvas中新建一个按钮,新建c#代码:

public void click(){
    你要执行的部分
}

把代码拖到Hierarchy窗口的按钮上,然后点击一下按钮,在Inspector窗口点加号新加一个click()事件,把之前的Hierarchy窗口那个按钮拖过来(放在椭圆圈标记处),最后选择指定的函数,搞定!
这里写图片描述

3.安卓手机触屏事件(转自https://blog.csdn.net/qq_15267341/article/details/52275589

一: 下面先说经常用的三个事件  手指按下、手指移动、手指松开
1.  手指按下
if(input.touchCount==1)
{
   if(input.touches[0].phase==TouchPhase.Beagn)
   {
          // 手指按下时,要触发的代码
   }​​​​​​​

2.  手指在屏幕上滑动
if(input.touchCount==1)
{  
     if(input.touches[0].phase==TouchPhase.Move)  
     {         
           // 手指滑动时,要触发的代码 
          float s01=Input.getAxis("Mouse X");    //手指水平移动的距离
          float s02=Input.getAxis("Mouse Y");    //手指垂直移动的距离
     }​​​​​​​

3.  手指在屏幕上松开时
​   if((input.touches[0].phase==TouchPhase.Ended) && Input.touches[0].phase!=TouchPhase.Canceled)
二: 上面介绍的是单手指触发事件,下面介绍的是多手指触发事件
if(touchCount==2)   //代表有两个手指
{
   if(Input.getTouch(0).phase==TouchPhase.Moved&&    //第一个手指
   Input.getTouch(1).phase==TouchPhase.Moved)        //第二个手指
    {
          vecter3 s1=input.getTouch(0).position;         //第一个手指屏幕坐标
          vecter3 s2=input.getTouch(1).position;         //第二个手指屏幕坐标
          newdis=Vecter2.distance(s1,s2);
          if(newdis>olddis)             //手势外拉
          { 
                distance+=Time.deltaTime*50f;
          }
          if(newdis<olddis)             //手势内拉
          {
                distance-=Time.deltaTime*50f;
          }
         olddis=newdis;
    }
}
​​​​​​​​​​​​​​
总结:
1.  不管是触屏事件还是PC端的事件,世界转屏幕还是屏幕转世界以及射线检测都是管用的
2.  安卓端的手指坐标(Input.touches[0].position)等同于PC端的鼠标屏幕坐标
(Input.mousePosition)

4.控制音量

AudioListener.volume = 1; //静音
AudioListener.volume = 0; //全音量
AudioListener.volume = volume.value; //滑块volume的值来控制音量

猜你喜欢

转载自blog.csdn.net/Dirichlet_zju/article/details/80213354