前几天想做一个平面类似吃金币的游戏

四面是墙,角色在墙间跳跃

金币在中间生成

吃到加分

于是乎

角色拿圆柱做

墙是方块

地板也是方块

想法是鼠标控制角色的跳跃

之前有点基础,但还是去找了一下别人是怎么实现的

然后自己改出来的

添加了刚体2d组件(RigidBody2D)

 移动,转向的代码

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class move : MonoBehaviour
{private Rigidbody2D rb2D;//先定义刚体rn2Dpublic float movespeed = 40f;//移速(推力?)// Start is called before the first frame updatevoid Start(){rb2D = GetComponent<Rigidbody2D>();//刚体需要先实例化}// Update is called once per framevoid Update(){playermove();        }void playermove(){//获取鼠标坐标//获取物体坐标,将世界坐标转为屏幕坐标//鼠标坐标-物体坐标得到向量//z置0//向量化//transform的UP方向改为dreaction方向达到跟随旋转Vector3 mouse = Input.mousePosition;Vector3 obj = Camera.main.WorldToScreenPoint(transform.position);Vector3 direction = mouse - obj;direction.z = 0f;direction = direction.normalized;transform.up = direction;if (Input.GetMouseButtonDown(0))//按下鼠标左键(0是左键){                      //刚体的速度=向量*移速    rb2D.velocity = direction * movespeed;}}
}

效果如图

但是我想让他停在墙上不要滑动

player加了个圆的碰撞器,不然转向的时候可能会有力的作用

加了个检测碰撞的代码,给墙上了"wall"的tag 和碰撞器

private void OnCollisionEnter2D(Collision2D collision)//碰撞器检测函数{Debug.Log(collision.gameObject.tag);if (collision.gameObject.tag == "wall" ){Vector2 tp = rb2D.velocity;//撞墙停止rb2D.velocity = tp.normalized * 0f;//效果不好,注释掉//rb2D.velocity = Vector2.zero;}}

//下面那个v=Vector2.zero,亲测撞到之后有几率反向移动

还是直接速度的向量*0更好一点

效果图

从零开始的unity2d写游戏1#相关推荐

  1. python游戏制作rpg_用 Python 语言来写游戏

    原标题:用 Python 语言来写游戏 题图:拍摄于 R1 鸟巢发布会 每个程序员差不多都是从计算机爱好者开始的,尤其是那些令人心醉神迷的电脑游戏,不仅造就了整个游戏产业,推动了计算机行业软硬件的升级 ...

  2. 小学生都能读懂的区块链原理和术语介绍(故事图文)-引自《从零开始自己动手写区块链》

    本文目录 1.前言 2.中心化 2.1 交易 2.2 数字货币 2.3 复式记账法 2.4 未消费交易输出 2.5 中心化 2.6 区块与区块链 2.6 创世区块 3.去中心化原理 3.1 分布式存储 ...

  3. 视频教程-从零开始开发3D跑酷游戏教程-Unity3D

    从零开始开发3D跑酷游戏教程 从业8年以上,学过一点知识,写过一点代码,擅长计算机图形学,擅长unity3d,擅长将抽象的东西讲明白,写看得懂的代码,讲听得懂的课程,不闲聊,不扯淡,满满的干货 洪青霞 ...

  4. 从零开始开发3D跑酷游戏教程-洪青霞-专题视频课程

    从零开始开发3D跑酷游戏教程-1425人已学习 课程介绍         从零开发3D跑酷游戏视频培训课程,教大家从零开始开发一个3D跑酷游戏,涵盖了手势识别.动画系统.水平控制.纵向控制.金币获取. ...

  5. Unity2D 商业游戏案例 - 梦幻西游(第二季 框架设计篇)

    00 网址 来源 siki学院的(1年有限期到期前下载的项目,现在已经过期,所以自己理清项目) 所以更多的不是学习这个项目,而是学习理清该类型的项目的思路 Unity2D 商业游戏案例 - 梦幻西游( ...

  6. 从零开始制作即时战略游戏(0)

    "看这个题目,就觉得很傻屌."--某同学 问题1:为什么要从零开始制作即时战略游戏?难道SC/SC2,steam上一大堆还不够玩的? 回答:我就想在iphone/ipad上玩. 问 ...

  7. 从零开始制作一款游戏

    从零开始制作一款游戏 1.开发环境 一个编辑器(Visual Studio Code),Powershell和Python. 我花了一些时间来纠结使用C++还是Python,最后我选择了Python, ...

  8. 在写游戏时钟类时,应确保时钟的计算是以某个固定的CPU为标准的

    在写游戏时钟类时,应确保时钟的计算是以某个固定的CPU为标准的.下面通过一个例子来阐述如何实现这一思想: // 记录特定进程的affinity maskunsigned long lProcessAf ...

  9. 用python写数字_用python 写游戏之数字华容道

    当初对这个游戏颇有印象还是在最强大脑节目上面,何猷君以几十秒就完成了这个游戏.写2048游戏的时候,又想起了这个游戏,想着来研究一下. 游戏玩法 用尽量少的步数,尽量短的时间,将棋盘上的数字方块,按照 ...

最新文章

  1. UI设计培训技术分享:配色秘籍
  2. Sciences:用膳食纤维钓出15株缓解糖尿病的细菌!
  3. How to setup SLF4J and LOGBack in a web app - fast--转载
  4. Python断言方法:assert
  5. 没有bug队——加贝——Python 练习实例 7,8
  6. 关于ssd-tensorlow如何训练自己的数据集合
  7. EZGUI下的动态图片的处理
  8. VxRack与VxRail遭受Power的“全面入侵”
  9. The Suspects(并查集入门)
  10. ffmpeg4.3.2版本:gstavdemux.c:486:24: error: AVStream has no member named ‘index_entries‘(二十七)
  11. Python 模拟轮盘抽奖游戏
  12. 互联网赚钱骚操作,真的太骚了
  13. matlab-梯形积分
  14. 项目二--03.基于Nginx、keepalived的高可用集群之keepalived高可用实现
  15. PHP:报错 strpos() expects parameter 1 to be string, integer given
  16. 《C++程序设计》第十章总结
  17. 【绝对详细!不好使你顺着网线敲我!】Django3.1在Ubuntu16.04上的部署
  18. Ardupilot 绕圈模式分析
  19. IntelliJ IDEA 2018版本操作总结(长期更新)
  20. Java常用类思维导图总结

热门文章

  1. Python3,区区5行代码,让黑白老照片变成华丽的彩色照,被吸粉了。
  2. jquery遍历节点的方法
  3. 因为这份简历,我拿到了阿里的offer!(转载)
  4. jQueryXML笔记
  5. 解决Sublime出现中文乱码的情况
  6. Leetcode 971 C++代码
  7. 可修改UID的白卡,请问为什么一般读写器不能修改这种卡的UID,必须要特定的读写器才能修改?
  8. Springcloud快速入门
  9. 快速理解数据库超键,候选键,主键
  10. 一个tesseract ocr box 文件查看toy,python