21403人加入学习
(187人评价)
Unity2D 官方入门案例 - Ruby's Adventure

制作完成于2020年5月5日,基于Unity2019.3

价格 免费

这里会出错的,当敌人碰到草莓时,会报空指针。

[展开全文]

优先级:void start>inspector>变量声明

[展开全文]

Mathf.Clamp:限制数的边界值(当前,最低,最高);

void没有返回值;只执行代码

 

[展开全文]

class:
{
pubic int maxHealth=5;
private int currenthealth;
}
void start()
{
 current health=maxHealth
}
private void ChangeHealth(int amount)
{
 currentHealth=Mathf.Clamp(current health+amount,0,maxHealth)
}

Clamp方法?

结果输出在控制台:Debug.Log(currentHealth+"/"+maxHealth)

[展开全文]

将smokeEffect的访问修饰符设置为private可以使用GetComponentInChildren<ParticleSystem>()获取

[展开全文]

void start: 可理解为准备工作

private可不加访问符,private默认不加符号

Start前的语句为何要独立,是否可以安插在start内?

传参?amount?

 

 

[展开全文]

Public&Private:  访问修饰符
访问级别:所有类型&类型成员都具有访问级别,用来判断是否可以允许访问某些成员变量和方法。可使用访问修饰符来指定声明类型或成员可访问性。
Public:任何代码均可访问,应用于所有类和成员。
Private: 只能在当前类中使用,应用于内嵌类或成员。
Protected: 只能在当前类或其派生类中使用,应用于内嵌类或成员。

float&int:
float: 存小数,int: 整数

[展开全文]

Vectro=类型

= 用于赋值

transform.position = 选择菜单名称+子属性,用“.”符号连接

[展开全文]

1. add component搜索COMPOSITE 2D添加复合体组件。(同时生成rigid body 2D)

2. tilemap collider 2D 选composite(合并)。

3. 后续加入被禁止碰撞的环境也会自动缝合,ruby无法碰撞。

 

[展开全文]

Application.targetFrameRate=30;

[展开全文]

问题:当物体移动速度过快时,物体直接穿透其他物体而不产生碰撞。

因为每一帧的检测时间大概是0.02秒,也就是说速度过快,在不用0.02秒的时间就已经穿过了其他物体,那么这个时候是无法检测之间的碰撞信息的。

 

办法:

将需要快速运动的物体中的

Rigidbody 2D 

→ 

Collision Detection(碰撞检测)

由  Discrete(离散的)设置为Continuous(持续的)

 

[展开全文]

unity这个功能真的厉害。注意::必须在同一层级,这个功能才起作用!!!

[展开全文]

动画控制器也叫动画状态机

[展开全文]

Product Name  游戏名称

设置好后

File(文件)→ BulidSettings……(生成设置)→PC(下SDK才可以打其他平台的包)→secenes In Build→Add Open Scenes(添加打包场景)→Build→设置存储位置

[展开全文]

授课教师

SiKi学院老师

课程特色

视频(173)
图文(2)
下载资料(3)