unity---2d游戏杂记
2d游戏制作的笔记
save Layout 增加配置
Packges文件夹
插件
调整视野
鼠标中键 拉近拉远
鼠标右键 平移
Alt+鼠标左键 移动视角
Pivot/Center
当前物体中心和多个物体共同的中心
Local/Global
全局坐标
步移工具
工具:
1.Sprite Renderer
Order in Layer 可以调节物体的前后关系 值越大越在前面
不要乱改script文件名
Start()方法只会执行一次,类似于初始化
Update()方法会不断循环执行
Time.deltaTime 表示多久时间可以跑一次Loop 解决不同电脑运作速度不同
如果将属性设置为public或者加入[SerializeField] 就可以直接在Unity中调整
Rigidbody 2D 刚体
类似真实物体,可以自由落体
Collider 碰撞
给两个物体都增加Collider组件,可以碰撞在一起
is Trigger 不会碰撞在一起,只作为监测
判断是否撞在一起
private void OnCollisionEnter2D(Collision2D other) {
if(other.gameObject.tag == "Floor1") Debug.Log("撞到第一种阶梯");
else if(other.gameObject.tag=="Floor2")Debug.Log("撞到第二种阶梯");}
判断是否经过这个物体 需要给对应物体勾选 isTrigger
private void OnTriggerEnter2D(Collider2D other) {
if(other.gameObject.tag=="DeathLine"){
Debug.Log("你输了");
}
}
将你制作好的样板放入assets文件中,可以快速拖去重复相同的样板
overris 还可以修改所有样板
代码创建物体 ,并放入另一个物体下
Instantiate(FloorPrefabs[r],transform);
删除物件
Destroy(gameObject);
控制父物件去更新子物件
transform.parent.GetComponent<FloorManagger>().SpawnFloor();
让物件不断移动
transform.Translate(0,MoveSpeed*Time.deltaTime,0);
控制物件失去碰撞功能
currentFloor.GetComponent<BoxCollider2D>().enabled=false;
法线法向量
垂直接触面
让某个物体不显现
HpBar.transform.GetChild(i).gameObject.SetActive(false);//反之为true
使用UI库
using UnityEngine.UI;
人物水平翻转,转身
GetComponent<SpriteRenderer>().flipX=false;
给人物添加动画
component功能选择animator
创建animator controller
windows -> animation
创建动作clip
将贴图或者录制好的图片放入
调出animator 窗口
选择条件
bool anim.SetBool("run",true);
trigger anim.SetTrigger("hurt");
设置Layers权重值
选择箭头线
settings
可以将切换动画的时间全部设为零,√可以去掉
exit time 为动画闪烁的次数
添加声音
component -> audioSourse
取消勾选play on wake 一开始就播放
other.gameObject.GetComponent<AudioSource>().Play();
游戏暂停
Time.timeScale=0f;
UI button
on click()
选择对象和方法
继续游戏
using UnityEngine.SceneManagement;
public void Replay()
{
Time.timeScale=1f;
SceneManager.LoadScene("SampleScene");
}
unity---2d游戏杂记的更多相关文章
- Unity 2D游戏开发教程之精灵的死亡和重生
Unity 2D游戏开发教程之精灵的死亡和重生 精灵的死亡和重生 目前为止,游戏项目里的精灵只有Idle和Walking这两种状态.也就是说,无论精灵在游戏里做什么,它都不会进入其它的状态,如死亡.于 ...
- Unity 2D游戏开发教程之摄像头追踪功能
Unity 2D游戏开发教程之摄像头追踪功能 上一章,我们创建了一个简单的2D游戏.此游戏中的精灵有3个状态:idle.left和right.这看起来确实很酷!但是仅有的3个状态却限制了精灵的能力,以 ...
- Unity 2D游戏开发教程之2D游戏的运行效果
Unity 2D游戏开发教程之2D游戏的运行效果 2D游戏的运行效果 本章前前后后使用了很多节的篇幅,到底实现了怎样的一个游戏运行效果呢?或者说,游戏中的精灵会不会如我们所想的那样运行呢?关于这些疑问 ...
- Unity 2D游戏开发教程之使用脚本实现游戏逻辑
Unity 2D游戏开发教程之使用脚本实现游戏逻辑 使用脚本实现游戏逻辑 通过上一节的操作,我们不仅创建了精灵的动画,还设置了动画的过渡条件,最终使得精灵得以按照我们的意愿,进入我们所指定的动画状态. ...
- Unity 2D游戏开发教程之游戏精灵的开火状态
Unity 2D游戏开发教程之游戏精灵的开火状态 精灵的开火状态 “开火”就是发射子弹的意思,在战争类型的电影或者电视剧中,主角们就爱这么说!本节打算为精灵添加发射子弹的能力.因为本游戏在后面会引入敌 ...
- Unity 2D游戏开发教程之游戏中精灵的跳跃状态
Unity 2D游戏开发教程之游戏中精灵的跳跃状态 精灵的跳跃状态 为了让游戏中的精灵有更大的活动范围,上一节为游戏场景添加了多个地面,于是精灵可以从高的地面移动到低的地面处,如图2-14所示.但是却 ...
- Unity 2D游戏开发教程之为游戏场景添加多个地面
Unity 2D游戏开发教程之为游戏场景添加多个地面 为游戏场景添加多个地面 显然,只有一个地面的游戏场景太小了,根本不够精灵四处活动的.那么,本节就来介绍一种简单的方法,可以为游戏场景添加多个地面. ...
- Unity 2D游戏开发高速入门第1章创建一个简单的2D游戏
Unity 2D游戏开发高速入门第1章创建一个简单的2D游戏 即使是如今,非常多初学游戏开发的同学.在谈到Unity的时候.依旧会觉得Unity仅仅能用于制作3D游戏的. 实际上.Unity在2013 ...
- unity 2d 游戏优化之路 遇坑记录
情景说明: unity 出的Android包,在目前一些主流机型跑都没有问题,但是在 小米3 这种比较老的机器上跑,报如下错误 GLSL compilation failed, no infolog ...
- unity 2d游戏 按y坐标排序子对象
List<Transform> objs = new List<Transform>(); for (int i = 0; i < transform.childCoun ...
随机推荐
- (stm32f103学习总结)—独立看门狗(IWDG)
一.IWDG介绍 1.1 IWDG简介 STM32F1芯片内部含有两个看门狗外设,一个是独立看门狗IWDG,另 一个是窗口看门狗WWDG.两个看门狗外设(独立和窗口)均可用于检测 并解决由软件错误导致 ...
- 顺利通过EMC实验(1)
- IdentityServer4系列 | 混合模式
一.前言 在上一篇关于授权码模式中, 已经介绍了关于授权码的基本内容,认识到这是一个拥有更为安全的机制,但这个仍然存在局限,虽然在文中我们说到通过后端的方式去获取token,这种由web服务器和授权服 ...
- js如何获取iframe页面内的对象
简单介绍iframe标签,所有的浏览器都支持<iframe>标签,iframe 元素会创建包含另外一个文档的内联框架(即行内框架).通常我们常用的iframe标签的属性有:width(if ...
- JavaScript作用域链与闭包的理解
作用域是JavaScript最重要的概念之一,想要学好JavaScript就需要理解JavaScript作用域和作用域 链的工作原理. 1. 全局作用域(Global Scope) (1)最外层函数和 ...
- Python入门-常用模块
1.sys,os import sys import os #获取当前的路径 print(sys.path[0]) print(os.getcwd()) print(os.path.abspath(& ...
- kafka生产者调优手册
目录 第一章 kafka硬件配置选择 1.1 场景说明 1.2 服务器台数选择 1.3 磁盘选择 1.4 内存选择(堆内存,页缓存) 1.4.1 堆内存配置 1.4.2 页缓存选择 1.5 cpu选择 ...
- 基于Vue开发的门户网站展示和后台数据管理系统
基于Vue的前端框架有很多,这几年随着前端技术的官方应用,总有是学不完的前端知识在等着我们,一个人的精力也是有限,不可能一一掌握,不过我们学习很大程度都会靠兴趣驱动,或者目标导向,最终是可以以点破面, ...
- 虚拟机VMware的安装与Xshell的应用
先安装VMware 1.安装就按照提示一点点安装就行了 配置网络 打开VMware 这里的IOS映像文件在https://developer.aliyun.com/mirror/里下载 这里用方向键往 ...
- javap命令反编译
javap命令反编译生成的是程序员可以认识的字节码文件 -help --help -? 输出此用法消息 -version 版本信息,其实是当前javap所在jdk的版本信息,不是class在哪个jdk ...