将创建的地形连续
造成tile不连续的原因是tile的像素点填充的比本身的图像大,只需要将pixels per unit改为适合当前图像大小的像素填充即可
将图片改为可分割tu'pia的方法:选中需要修改的图片,将精灵模式由single改为multiple
将创建的地形连续
造成tile不连续的原因是tile的像素点填充的比本身的图像大,只需要将pixels per unit改为适合当前图像大小的像素填充即可
将图片改为可分割tu'pia的方法:选中需要修改的图片,将精灵模式由single改为multiple
创建调色板
window-2D-tile palette
palette:(调色板):保存瓦片,将他们绘制到网格上
调出tile palette时还没有调色板,需要点击create new palette来创建新的调色板
brush(笔刷):用于将“画好的东西”绘制到画布上,使用tilemap时,可以在多个画笔中任意选择,画出线条、方块等各种形状
tilemap的基本概念
grid(网格):可以用来将游戏对象均匀地放置在其单元格中
tilemap(瓦片地图):是网格的子游戏对象。由tiles(瓦片)组成
sprite(精灵):纹理的容器,大型纹理图集可以转换为精灵图集(sprite sheet)
tile(瓦片):一种特殊的精灵,使用瓦片就像在画布上花花一样,花花时i可以设置一些颜色和属性
##构建背景
unity里复制不是CTRL+c而是CTRL+d
Application.targetFrameRate = 10;可以使用该代码将帧率改为10帧,targetFrameRate是Application这个类里的一个成员变量
快捷键:CTRL+k+c快速注释 CTRL+k+u快速取消注释
水平轴向是Horizontal,而垂直轴向是Vertical
要想让角色以0.1m/s的速度移动,则需要在变量名后乘上Time.deltaTime,如:
“变量”是没有小括号的,而“方法”有小括号,如变量position和方法GetAxis
input和debug都是类/组件,rubycontroller也是一个类/组件
()中的“”中的内容是参数,即我们想要提供给函数的一个信息
有的类/组件需要参数,有的则不用,不用就不加“”
debug.log输出的是一个变量,而不是input得到的参数
输入input.XXX("") 输出debug.log()
点击游戏画面才能进入游戏进行cao'zuo
x=Horizontal(Edit-project settings-Input Manager)
Input 输入(例如:Input.GetAxis())
f就是float,小数类型的变量,与c语言xiang'si
小写是变量自身,大写是变量类型
transform.position的意思是在transform组件中取出position的属性(.)
V3可以存储x,y,z三个数值
等号左边的变量可以说是等号右边的变量的fu'ben
start函数只会在程序开始时(第一帧)调用一次,而之后就不会再调用
update函数则会一直调用,大约一秒钟调用60次(不固定,与电脑性能等有关)
位置(x,y)是Vector2类型的变量
Vector2简称V2类型,一种存储两个数字的数据类型,存储在Inspector面板里关于transform组件中position的x,y值
Application.targetFrameRate = 30; 帧率
图片精灵体
星号就是代表没有保存,
MAthF类和Mathf结结构:
起因:在MathF类中没有找到.Approximately()方法,检查后发现MathF和Mathf是两个相似但不同的API。
相似点:都提供一些数学方法。
不同点:
MathF:.NET提供的类,命名空间:System;
Mathf:UnityEngin提供的结构
顺序12431
找不到tile,去packagemanager去搜索一下就OK了
刚体可接受外力与扭矩力用来保证游戏对象像在真实世界中那样进行运动
任何游戏对象只有添加了刚体组件才能受到重力的影响
刚体:物理演算的的组件,碰撞只是其中之一