直接导入一个叶子的图片,然后并且可以通过新建一个sprite的图片,然后将其扩大到覆盖整个屏幕并把其颜色修改,就可以生成一个背景
可以选中这个类型
接下来调整精灵的大小,可以通过scale来实现,也可以通过精灵属性下的Pixels Per Unity来就决定,它代表的是每一个unity单位包含多少像素
默认是100,设置为10的话则会让这个显示的图片变大
接下来实现二维人物的动画:
这时候我们创建出这样的一个场景并且调出animation窗口,创建一个idle动画
接下来选中这六个,并且将其拖拽到窗口里
using System.Collections;using System.Collections.Generic;using UnityEngine;[RequireComponent(typeof(Rigidbody2D))][RequireComponent(typeof(Collider2D))]public class Bullet : MonoBehaviour{public float speed = 2f; private Rigidbody2D body; // Start is called before the first frame update void Start() {body = GetComponent<Rigidbody2D>(); } // Update is called once per frame void Update() {body.MovePosition(transform.position speed * transform.right * Time.deltaTime;) } private void OnCollisionEnter2D(Collision2D collision) {if (collision.gameObject.tag == "enemy") {GameObject.Destroy(collision.gameObject); GameObject.Destroy(gameObject); } }}
给人物写一个发射子弹的脚本
using System.Collections;using System.Collections.Generic;using UnityEngine;public class Spawner : MonoBehaviour{public float timeInterval = 3f; float timer = 0f; public GameObject bullet; // Start is called before the first frame update void Start() { } // Update is called once per frame void Update() {if (timer > timeInterval) {Instantiate(bullet, transform); timer = 0; } timer = Time.deltaTime; }}
接下来用资源包里自带的图片为其创建一个子弹预制件,并为其添加上circle collider 2D组件,并将bullet脚本拖拽给它
接下来创建一个敌人并为其赋予动画,赋予动画的方式和之前一样,然后为其添加box collider以及添加tag
接下来介绍一种可以让二维物体也可以具有光照的方法:
创建一个新的材质,选择漫反射,并将这个材质给叶子
如果需要表现斜45度的效果的话,在排列的地方则需要一些技巧
它是一个菱形的效果,我们可以通过透明的方式,把周围的图片像素弄成透明,通过这种方式来光得到菱形效果。
排列的时候,也是有上下交错这个排列就可以达到这种斜45度的效果。
然后就可以绘制地图了
拖拽标准包中的机器人到场景中
接下来设定好这些状态变化的条件
添加这两个组件并调整碰撞体大小
但是这时候遇到了这样的问题,这是因为给瓦片地图虽然设置了刚体,但是的也得给刚体设置上静态的属性才可以。
接下来实现跳上平台的功能
接下来在unity中实现二维角色的骨骼动画。
导入2D animation包后
导入一个sprite,并进入sprite editor 为其添加骨骼(双击添加)
在这里插入图片描述
然后为其自动生成网格
下面可以自动赋权重
添加sprite skin组件并创建骨骼
创建动画并修改关键帧动画的位置,即可实现动画
联系客服