自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 问答 (5)
  • 收藏
  • 关注

原创 Unity 2D Roguelike 官方2D游戏制作实例教程 02.Player and Enemy Animations

02.Player and Enemy Animations首先创建一个场景然后创建人物预制体Player切分好精灵表将需要的精灵拖动到Player上动画放在Animation里动画控制器放在Animator里再添加Player的下一个动画创建完成PlayerIdle,PlayerChop,PlayerHit动画调整速度Base Layer -> Inspector -> Speed 0.5将Player标签设置为Player我们添加了额外的标签:Food,Exit,Ene

2022-01-30 22:18:59 2460

原创 C#保留2位小数

Math.Round(0.11111,2);//四舍五入

2021-12-03 12:31:16 175

原创 修改FixedUpdaet时间间隔

FixedUpdate的时间间隔可以在项目设置中更改,点击Edit-Project Setting-time 找到Fixed timestep,就可以修改了。

2021-12-03 12:06:21 842 1

原创 Unity从一点移动到另一点

transform.position = Vector2.MoveTowards(APoint, BPoint, 10 * Time.deltaTime);

2021-12-02 17:15:39 314

原创 上下左右单格移动

有两种方法,一种平滑移动,一种直接修改位置(以注释) private Vector2Int target; private void Start() { target = new Vector2Int((int)transform.position.x,(int)transform.position.y); } //输入检测 void Update() { if(Input.GetKeyDown(KeyCode.W.

2021-12-02 16:36:43 178

原创 全图随机生成物体,与生成组群,全图铺地面

两个方法使用了,随机数值,方形随机坐标,矩形随机坐标 public GameObject green; //生成物体 private List<GameObject> objList = new List<GameObject>(); //便于更新删除 //生成组群 private void createObj1() { int groupNum = numRandom(8,13); //随机数值,组群个.

2021-11-28 19:47:13 87

原创 三种坐标随机数,一种数值随机数

//随机数 private int numRandom(int min,int max) { int num = Random.Range(min, max); return num; } //方形随机坐标1 private Vector2 squareRandom1(int sideSize) { int x = Random.Range(0, sideSize); int y = ...

2021-11-28 19:29:14 291

原创 Walk()第二种方法

放在Update()里,通过逐个删除pathList里到达的坐标,更新下一个到达节点pathList[0],可以平滑移动Vector2 thisPos = new Vector2(transform.position.x, transform.position.y); if(pathList.Count > 0) if (thisPos.Equals(pathList[0])) pathList.Remove(pathLi.

2021-11-27 16:47:18 165

原创 Walk()方法

此方法配合Time时间间隔方法调用,使物体每隔一小段时间移动一次 private void Walk() { if(pathList != null && pathList.Count > 1) { Vector2Int movePos = pathList[1]; pathList.Remove(movePos); transform.position = n.

2021-11-26 16:37:59 106

原创 Time时间间隔方法

private float mTime = 0.7f; private float mTimer = 0.0f; private void Update() { mTimer += Time.deltaTime; if (mTimer >= mTime) { mTimer = 0; Walk(); //要调用的函数 } }...

2021-11-26 16:21:46 207

原创 Unity两种画线功能,用于调试

1.Debug.DrawLine() 画线2.Gizmos.DrawLine()画线​

2021-11-23 17:36:16 3838

原创 A*寻路算法

需要设置地图尺寸,设置绘制路点物体,基于判断周围物体的碰撞体来识别障碍,在别的脚本中调用AStarSearchPath(Vecto...

2021-11-22 18:27:26 2640

原创 Unity2D 代码判断碰撞体

多个碰撞体判断Collider2D[]colliders=Physics2D.OverlapCircleAll(transform.position,0.5f,1<<LayerMask.NameToLayer("Tree")); 单个碰撞体判断Collider2Dcollider=Physics2D.OverlapCircle(transform.position,0.1f);...

2021-07-23 16:12:46 660

原创 Unity 判断鼠标是否在UI上

EventSystem.current.IsPointerOverGameObject()

2021-07-23 15:55:54 67

原创 Unity 判断鼠标不在UI上

if(Input.GetMouseButtonDown(0) && !EventSystem.current.IsPointerOverGameObject()){ //...... }

2021-07-14 22:40:59 65

原创 Unity 屏幕绘制线框

OnPostRender()函数,在每帧后运行,并且挂载摄像机上才好使。drawRectangle布尔值控制画线操作,注意Meterial材质用Sprite下的default材质! public Color rectColor = Color.white; public Material rectMat = null; //使用Sprite下的default材质!!! //画线操作 private void OnPostRender(){ if(dra

2021-07-14 15:17:13 814 1

原创 Unity 鼠标框选物体

借鉴网上的框选物体代码,重新编写了一个框选物体代码。 鼠标按下时,记录第一点位置,鼠标抬起时,记录第二点位置,同时判断物体集合中物体的屏幕坐标是否在两点内。如果在两点内,加入框选物体集合。void Update() { if(Input.GetMouseButtonDown(0)){ startPosition = Input.mousePosition;//记录第一个点的位置 //将之前选择的物...

2021-07-12 18:55:36 636 2

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除