Unity3D基础教程】(四):通过制作Flappy Bird了解Native 2D...

Unity3D进阶指南:从核心框架到性能优化与项目实战 在游戏开发与实时3D应用构建中,掌握引擎核心框架与性能优化是提升项目质量的关键。理解Unity的底层执行机制,如生命周期管理与PlayerLoop系统,是编写高效、可维护代码的基础。内存管理与对象池技术能有效解决GC卡顿问题,而合理的软件架构(如MVC、ECS)则支撑起复杂项目的可扩展性。在视觉表现层面,资源管道优化、UGUI性能调优以及Shader应用,直接决定了应用的流畅度与视觉效果。这些技术共同服务于游戏开发、工业可视化、实时交互应用等多个场景。本文聚焦于Unity3D开发中的核心难点,例如solid 阅读详情



引子


在第一篇文章给初学者看的Unity教程(一):GameObject,Compoent,Time,Input,Physics我已经讲过了一些关于刚体和碰撞的关系,这次我们就通过Flappy Bird这个事例来讲解一下刚体和碰撞体在游戏中的具体应用。相关代码可以参考Flappy Bird的源码。

认识RigidBody

  • 当RigidBody2D的质量属性被设置为0时,刚体的质量变为无限大,此时刚体相当于静态刚体,永远一动不动。但是在Unity中你是无法把一个RigidBody2D的质量设置为0的,所以,当你想创建一个静态刚体时,只需要创建碰撞器,而不需要创建RigidBody2D。
  • 当我们勾选了is Kenamatic选项时,这个RigidBody2D就不再受物理引擎控制,我们这时候需要通过Transform来控制RigidBody2D的移动,这个选项经常在脚本里对其进行设置。
注意当Gravity Scale设置为0时,该刚体不再受重力影响。

认识Collider2D
在Add Component选项中点击添加Physics2D中的Collider2D即可添加一个碰撞器,碰撞器有以下三种:
  • BoxCollider2D:盒状碰撞器,一般为矩形。
  • CircleCollider2D:圆形碰撞器。
  • PolygonCollider2D:多边形碰撞器

我们在为一个2D GameObject添加一个Collider时,这个Collider会自动选择最合适的大小,但是你可以使用Shift+鼠标左键对Collider的边界进行调整。在多边形中,还可以通过Ctrl+鼠标左键来删除某个多边形顶点。

当然,针对同一个刚体,我们可以为这个刚体添加多个碰撞提来构造更加复杂的碰撞结构,在官方的岩石Demo – 2D Platformer中你可以看到相应的事例。

另外,我们可以通过将动画和刚体的运动结合的方式来构建更加有趣的运动效果,通过Transform的变换和通过RigidBody的变换不一定非得是必取其一的,关于动画的知识可以看看我的这篇博客:给初学者看的Unity教程(三):通过制作Flappy Bird了解Native 2D中的Sprite,Animation。

关于Is Trigger
如果对一个碰撞器勾选了Is Trigger选项,它就不会与其他没有勾选Is Trigger的碰撞器发生刚体碰撞,而会发生“Trigger 碰撞”,也就是说,这时碰撞时发送的消息是Trigger消息,而不是Collision消息,相应地在脚本中我们要对OnTriggerEnter进行重载,而不是对OnCollisionEnter进行重载。

下图对Collision和Trigger进行了总结,在分别勾选某些属性时,都会发送哪些消息:

131012159998472.png (553.21 KB, 下载次数: 0)

下载附件  保存到相册

2 分钟前 上传





初学Unity——Flappy Bird 开发实战 参考:腾讯课程(零基础制作像素鸟) 环境:Unity2017.2.0f3 主界面(Main)的制作没有什么技巧性 注意点: 1.写好Button的点击效果,并在UI上添加效果 2.切换界面的实现不需要通过load,直接设置SetActive()true or false 来的更快更效率 // 比如:当点击打开解释说明的按钮时候 public void clickOpenExplai 阅读详情

相关推荐

【实战】Unity3d官方案例之Flappy Bird(上篇)

案例来源:Unity3d - Flappy Bird 资源:Flappy Bird Asset Unity3d官方案例之Flappy Bird(上篇) 本案例来自Unity3d官方案例教程,一切资源均为官方视频内提供。 游戏介绍:  本案例是实现之前很火的一款游戏《flappy bird》。  《flappy bird》是一款由来自越南的独立游戏开发者Dong Nguy...

Rioer的博客 4836

【Unity3D基础教程】给初学者看的Unity教程(四):通过制作Flappy Bird了解Native 2D中的RigidBody2D和Collider2D...

作者:王选易,出处:http://www.cnblogs.com/neverdie/ 欢迎转载,也请保留这段声明。如果你喜欢这篇文章,请点【推荐】。谢谢! 引子 在第一篇文章【Unity3D基础教程】给初学者看的Unity教程(一):GameObject,Compoent,Time,Input,Physics我已经讲过了一些关于刚体和碰撞的关系,这次我们就通过Flappy Bird这个事例...

weixin_30505751的博客 176

一个简单的unity2D游戏,包含flappybird

本人今年大一,在初学unity时制作了这个简单的2D游戏,希望能与大家共享,代码是使用C#编写,内部有3关,其中第二关是flappy bird。最高分记录能够保存

利用DQN实现flappy_bird过程中出现错误的解决方案

利用DQN实现flappy_bird github代码地址:https://github.com/yenchenlin/DeepLearningFlappyBird 自己在跑的过程中遇到的一个报错 ImportError: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `CXXABI_1.3.11' not found (required by...

HAH--M的博客 601

unity休闲游戏《跳跳鸟Alley Bird》完整手游源码

unity休闲游戏《跳跳鸟Alley Bird》完整手游源码

unity3d 各种鸟类模型资源 带动画 BIRDS PACK 1.02 最新版

unity3d 各种鸟类模型资源 带动画 BIRDS PACK 1.02 最新版;unity3d 各种鸟类模型资源 带动画 BIRDS PACK 1.02 最新版;

计算机图形学教程动画实验报告,计算机图形学风扇动画设计实验报告

《计算机图形学风扇动画设计实验报告》由会员分享,可在线阅读,更多相关《计算机图形学风扇动画设计实验报告(5页珍藏版)》请在人人文库网上搜索。1、本科学生综合性、设计性 实验报告姓名 黄 兴 旺 学号 1443206000215 专业测绘工程 班级 2014测绘工程 实验课程名称 计 算 机 图 形 学 实验名称 风 扇 运 动 程 序 设 计 指导教师及职称 沈盈佳老师 开课学期 2016 至 2...

weixin_42495394的博客 399

等保: Postgresql配置ssl链接

等保: postgresql配置ssl链接完整方案和避坑指南

weixin_43557605的博客 4381

【强化学习】----训练Flappy Bird小游戏

Flappy Bird游戏需要玩家控制一只小鸟越过管道障碍物。玩家只可以进行“跳跃”或者“不操作”两种操作,即点或不点。点则让小鸟上升一段距离,不点小鸟继续下降。若小鸟碰到障碍物或地面,则游戏失败。如今,深度学习通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的分布式特征表示,使得机器学习模型可以直接学习概念,如直接从原始图像数据进行物体类别分类。深层卷积神经网络采用平铺分层卷积滤波器层来模拟视野接受域的影响,在处理计算机视觉问题上,如分类和检测问题,获得了很大成功。

zijin-jdd的博客 9800

利用mininet模拟SDN架构并进行DDoS攻击与防御模拟(Ryu+mininet+sflow+postman)

1、知识概述 (1)软件定义网络: (2)mininet: Mininet是一个强大的网络仿真平台,通过这个平台,我们可以很方便的模拟真实环境中的网络操作与架构。特别是SDN,在真实网络中进行相关的网络实验有一定难度,自然需要一个仿真平台可以学习这种新型的网络架构,而Mininet就应运而生,承担了这个光荣而艰巨的使命。Mininet自带交换机(switchs)、主机(hosts)、控制器(controllers),同时,在mininet上可以安装OpenvSwitch、多种控制器(NOX\POX

北风 1万+

宇树G1嵌入式软件架构及技术实现

该架构通过硬件加速(FPGA)+确定性调度(RTX5)的组合,在1ms控制周期内完成从传感器采集到43轴输出的全链路处理,相比波士顿动力系统缩短40%的着地稳定时间。,结合ARM Cortex-R5与FPGA的异构计算能力,实现43自由度1kHz实时控制。

m0_60674045的博客 4311

通过制作Flappy Bird了解Native 2D中的Sprite,Animation

欢迎来到unity学习、unity培训、unity企业培训教育专区,这里有很多U3D资源、U3D培训视频、U3D教程、U3D常见问题、U3D项目源码,【狗刨学习网】unity极致学院,致力于打造业内unity3d培训、学习第一品牌。      引子   这一次我们开始将Unity中Native 2D中的Sprite,并且使用Animation来让Sprite动起来。   在接下来的几篇

810

COCO2017数据集类别分布深度解析

本文深入解析了COCO2017数据集的类别分布情况,包括80个常见物体的分类统计和样本数量分析。通过对比训练集与验证集的分布一致性,探讨了数据均衡性问题,并针对高频和低频类别提出了实用的数据预处理和模型训练建议,帮助优化计算机视觉任务的性能。

weixin_42533751的博客 369

【Unity3D基础教程】(三):通过制作Flappy Bird了解Native 2D

【狗刨学习网】 引子 上一次我们讲了MonoBehaviour的前世今生,了解了游戏中的每一个GameObjec都是由脚本控制的,这一次我们开始将Unity中Native 2D中的Sprite,并且使用Animation来让Sprite动起来。 在接下来的几篇博客里,我会通过做一个Flappy Bird来讲解Unity中各个组件的使用,项目的源代码在这里:Unity

915

ROS2机械臂MPC轨迹规划实战:从MoveIt 2插件配置到参数调优全流程

本文详细介绍了ROS2机械臂MPC轨迹规划的全流程,从MoveIt 2插件配置到参数调优。通过模型预测控制(MPC)技术,实现高精度运动控制,特别适合复杂装配任务。文章包含环境搭建、插件部署、参数设计及实战调优方法,帮助开发者快速掌握ROS2机械臂的MPC轨迹规划技术。

i0j1k2l3m的博客 206

快速生成2D卡通人物的AI工具:开启Live2D角色创作的新时代

随着这一创新工具的推出,我们正见证着Live2D角色创作进入了一个全新的阶段。它不仅极大地简化了角色设计的过程,也为广大创作者提供了一种全新的表达方式。对于那些渴望将脑海中的构思迅速转化为现实的人来说,这无疑是一大福音。现在就访问项目主页,开始探索无限可能吧!t=O83A项目主页https://human3daigc.github.io/Textoon_webpage/

这里汇聚了前沿的技术分享与实用的开发技巧,带你探索从创意到企业的技术创业之路。 4831

【Unity3D基础教程】给初学者看的Unity教程(三):通过制作Flappy Bird了解Native 2D中的Sprite,Animation...

作者:王选易,出处:http://www.cnblogs.com/neverdie/ 欢迎转载,也请保留这段声明。如果你喜欢这篇文章,请点【推荐】。谢谢! 引子 上一次我们讲了MonoBehaviour的前世今生,了解了游戏中的每一个GameObjec都是由脚本控制的,这一次我们开始将Unity中Native 2D中的Sprite,并且使用Animation来让Sprite动起来。 在接...

weixin_30608503的博客 304

Spec Kit:GitHub 官方推出的规范驱动开发工具包,让 AI 编程真正可控、高效、高质量

先明确“做什么”和“为什么”,再考虑“如何做”。它通过一系列标准化命令(如/specify/plan/implement可验证的功能规格(spec)可执行的技术方案(plan)可追溯的开发任务(tasks)高质量的实现代码(code)最终实现“规范即代码,代码即规范”的闭环。📌项目地址许可证:MIT(完全开源,欢迎贡献)Spec Kit 代表了 GitHub 对AI 原生开发(AI-Native Development)AI 不应替代开发者,而应放大开发者的意图。

lpfasd123的博客 1711

Unity2D 制作小游戏FlappyBird心得—Unity5学习笔记

Unity2D 制作小游戏FlappyBird心得—Unity5学习笔记 前些天用Unity2D制作了一个小游戏FlappyBird,算作是计算机图形学这门课的一个小作业了,我用的Unity开发引擎版本是5.4.1_64-bit的,其中有些控件的脚本语法跟Unity4的不太一样,这也给我的自学过程造成了很多困扰,网上的代码很多都是Unity4版本的,没法在5上实现。 我写这篇文章希望能记录一些

世靖的码场 5272

从0到1构建数据分析AI Agent:数据采集、洞察生成与报告自动化

在企业数字化转型的今天,数据分析师80%的时间被消耗在重复取数、数据清洗、报表排版等低价值劳动上,真正用于深度业务洞察和决策支持的时间不足20%。本文将从核心概念、技术原理、代码实现、落地实践全维度,教你从0到1搭建一套完整的数据分析AI Agent系统,实现「用户用自然语言提需求→Agent自动采集多源数据→AI自动挖掘业务洞察→自动生成符合业务要求的多格式报告」的全链路自动化,平均可将需求响应速度从天级压缩到分钟级,释放70%以上的分析师人力成本。

AI Python 编程之道的博客 471

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Flappy bird基于Unity的实现

该游戏火爆于2013年。游戏 比较简单。打开Unity 新建项目 把相机调成正交,再 把 工具栏改成 上 有个2D的按钮,点它导入素材,制作背景、带有透明背景的,最好是PNG格式然后把 Texture Type改为 sprite (2D and UI), 如果一张图片里面有很多个素材就把Sprite Mode 改为multiple 点击 sprite edit 再点slice 切割  auto 自...

zebin的博客 3889

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

Unity 2D Flappy Bird Tutorial

Unity 2D Flappy Bird Tutorial In this Tutorial we will learn how easy it is to make a game like Flappy Bird in Unity. Flappy Bird was released in 2013 and became the most download

perfel的专栏 1481

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

上一篇: unity3D游戏开发之Transform的坐标变换注意事项
下一篇: Unity游戏开发之动画播放与动画控制器 Animator Controller
七大黍
博客等级 码龄20年 436粉丝 260原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值