39186人加入学习
(83人评价)
Unity中的C#编程 - 零基础(Unity 2017)

完成于2017-11-06

价格 免费

 

 

3——GameObject.Find("游戏物体名称");(比较耗费性能,因为它是全局查找)

比如说主摄像机(Main Camera)这个游戏物体。

注意:你查找的时候必须保证这个名字是唯一的,如果不唯一,那么就有可能没有查找到你想要的那个游戏物体

GameObject main camera=GameObject.Find("Main Camera");//得到的是GameObject类型,需要一个新的GameObject类型的变量来接收

 

4——根据游戏物体标签查找(比较节约性能)

GameObject.FindWithTag("游戏物体标签");

你比如要查找一个标签为Player的游戏物体(获得的是GameObject类型):

GameObject player=GameObject.FindWithTag("Player");

 

 

[展开全文]

在获取一个游戏物体之后,如果这个游戏物体身上挂在了一些组件,那么你就可以通过如下代码,去获取这个游戏物体身上的组件,并使用这些组件的一些方法:

public GameObject Player;

Player.GetComponent<Transform>();

[展开全文]

说的太详细了,女朋友一看就会!

[展开全文]

1;日志输出

    print   

    Debug.Log

2;变量、可以变化的量

    int   

例;int hp =100;  //赋值=把右边的值赋值给左边的变量

 

 

[展开全文]

数学运算符

+-*/%

赋值运算符

=   +=   -=   *=   /=   %=

+=  :  a+=b   等价于   a=a+b

比较运算符

>  >=   <   <=   ==   !=

逻辑运算符(逻辑运算符都是服务于bool运算的)

&&     I I      !

!  :   取反,例如下

bool isDead = false;

print(!true);

print  (!false);

&&   逻辑与

l l 逻辑或

! 取反

例如:

int player1hp = 80;

int player2hp = 90;

if( player1hp<=0 && player2hp<=0)

{ print("GameOver");}

[展开全文]

1.多行注释 /*

                */

 

[展开全文]

l l : 或

print(true l l true);    //返回true的情况

print(false l l true);   

print(true l l false);   

print(false l l false); 

例如:

int player1hp = 0;

int player2hp = 0;

if ( player1hp>0 l l player2hp>0)

{ print ("生成敌人") ;}

 

[展开全文]

运算符:

数学运算符

+-*/%

赋值运算符

=   +=   -=   *=   /=   %=

+=  :  a+=b   等价于   a=a+b

比较运算符

>  >=   <   <=   ==   !=

逻辑运算符(逻辑运算符都是服务于bool运算的)

&&     I I      !

!  :   取反,例如下

bool isDead = false;

print(!true);

print  (!false);

&&   逻辑与

l l 逻辑或

! 取反

例如:

int player1hp = 80;

int player2hp = 90;

if( player1hp<=0 && player2hp<=0)

{ print("GameOver");}

 

[展开全文]

脚本中变量的定义:

private 私有的,隐藏起来的

public  公有的,变量定义,在界面是可以看到的

 

[展开全文]

脚本的基本结构:

声明一个类
class GameDate

给一个命名空间,把声明的类放在里面

namespace MyGame

{

   class GameData{ }

}

在start里调用一下GameData,是没有办法访问的,因为它在MyGame下,没有引入命名空间,所以要引用一下命名空间:using MyGame;

[展开全文]

类中的方法:

public void Move( )

{ Debug.Log(name+"正在移动"};

 

[展开全文]

类的使用:

Enemy enemy1 = new Enemy( );

enemy1.name; 

//.name通过对象看对象里有哪些功能,有name 就可以访问到了

enemy1.name = "玛丽";

print(enemy1.name);

//在没有给Enemy赋值时,ememy的名字默认为null,即默认为没有

 

 

Enemy enemy2 = new Enemy( );

enemy2.name = "小二";

print(enemy1.name+" - "+enemy2.name);

 

 

[展开全文]

类的创建、声明和构造:

class Enemy

{ string name;

int hp;}

//由名字跟hp就组成一个类

类的使用:

void start( )

  int hp = 100;

Enemy enemy1 = new Enemy( );

//Enemy类  enemy1  赋值  new方法

}  

[展开全文]

方法中的返回值:

void Add(int a,int b)

{int res = a+b;}

在start方法里定义

Add(10,67);  //这里是示例

print(res);

//在start里不能直接调用res方法,因为它是在Add方法里的。

∴要给它一个返回值

对于一个方法只能有一种返回值

返回的类型要名字一致:

string Add(int a, int b)

{ int res = a+b;

return res;

//这里res不对,因为值为字符串类型,所以应该返回的是字符串类型的值

return string;

在start方法里定义:

int res = Add(10,67);

print(res);

[展开全文]

授课教师

SiKi学院老师

课程特色

下载资料(2)
视频(37)