个人学习第一章节:球吃豆

1.初入Unity3d,作为新手的我们第一步当然是登录官网,下载对应的Unity3d。

新手下载个人免费版本即可,下载结束按照默认安装即可。

2.打开unity3d,这里分为Projects与Learn切换界面,这里建议先从Learn中简单案例入手,比如第一章要学习的Roll a Ball

3.创建一个项目,只需要更改项目名称和保存位置即可。等待片刻进入主界面。

这时需要保存一下当前场景(通常游戏有多个场景,但这里我们只用到一个场景)

在项目目录下创建_Scences的文件夹并且把当前场景命名为MiniGame存入_Scences

4.这时候正式开始制作游戏,在hierarchy界面Create一个地面重命名为Ground

我们可以通过Scale的x,z数值改变来盖面地面大小(这里的x,z即为默认的x,y,Unity3d的y为竖直方向)

5.此时需要添加一个玩家对象,这里我们只需要用到球体即可,更改y轴让球体处于地面表层。(在gizmos界面可以关闭线条显示方便操作,当你需要对某个物体进行操作时候,比如Player。点击hierarchy内的Player,光标移动到上方试图按下F或者双击Player即可)

6.玩家入场了,这时我们需要道具的加入,点击hierachy界面添加cube,旋转使其更加好看(这时可以先隐藏player,在inspector内勾选名称前√即可)

7.由于我们需要多个道具,所以我们在这里将道具作为预设内容,新建文件夹Prefabs保存道具,并且在hierachy中添加Pick Ups作为Pick Up的父对象,并且复制粘贴Pick Up

8.这里相机视角需要调整,提高摄像机高度,45度往下拍摄,游戏内为单一的白色,我们现在修改道具以及地面颜色,首先创建Materials文件夹,其中创建Material,设置好颜色拖拽到指定对象即可(设置为全局操作)。

9.此时Player角色还不可以移动别着急,我们需要界定一个区域来保证游戏的内容,这里用cube设置长宽高来防止角色掉下去。

10.好了这时候我们要让小球动起来了,这里我们将要增加一个脚本项目,在Project内创建文件夹Scripts,在Player的Inspector中添加脚本(这里注意脚本内获取刚体,所以Player本身要是刚体)。

11.打开编辑c#脚本,此时我们需要获取键盘输入,利用Input类(查看官方api),在FixedUpdate中执行移动。

我们需要讨论一下FixUpdate与Update,LateUpdate区别

FixUpdate不受机器性能游戏帧率影响,在处理Rigidbody时候用FixUpdate

Update受机器性能影响,不同机器帧率不同,时间间隔也不一样。可在Edit->ProjectSetting->time  找到Fixedtimestep

LateUpdate是在所有Update函数调用后被调用。这可用于调整脚本执行顺序。例如:当物体在Update里移动时,跟随物体的相机可以在LateUpdate里实现

资料参考:http://bbs.9ria.com/thread-417976-1-1.html

12.此时小球已经可以移动,但是与道具无法发生拾取动作,原因是道具默认为静态碰撞器(指的是没有附加刚体而附加了碰撞器的游戏对象。这类对象会保持静止或者很轻微的移动。对于环境模型十分好用,当和刚体碰撞时而不会移动),此时进入方法为OnCollisionEnter(),而这里我们需要进入OnTriggerEnter(),所以最终我们要修改道具为istrigger,添加刚体且设置为kinematic(运动学)类型,添加tag类型为Pick Up便于脚本获取碰撞对象,在Player脚本里添加代码

具体内容必看http://www.mamicode.com/info-detail-477001.html

13.此时我们已经完成了大部分的内容,在此基础上我们对摄像机进行优化,让其跟随Player移动。在Camera中添加脚本CameraController,在其中添加代码这里用到的是LateUpdate(),这里设置player为public,在编辑器中拖拽player到脚本下即可

14.再次对界面进行操作,将道具进行旋转操作,利用脚本实现,在Prefabs中添加脚本。

15.对分数进行采集与判定游戏结束,需要利用到UI界面的添加,在Hierarchy添加UI中的Text放置在界面左上方。由于计数是根据Player收集道具个数增加,所以在PlayerController脚本中设置UI增加。

16.此时整个游戏开发完成,我们保存并发布游戏。

在这里添加或者直接拖拽一开始保存的场景即可,选择好发布的平台发布即可。

最终实现效果,大功告成

这里推荐一个博客,帮助入门学习路径

http://www.cnblogs.com/android-blogs/p/6132965.html

完整项目

https://github.com/sonyi2009/Roll-a-Ball.git

【U3D入门小白教程——案例篇】之一:球吃豆相关推荐

  1. 【U3D入门小白教程——案例篇】之二:全民打飞机

    个人学习第二章节:雷电游戏 1.通过上一章的了解,初步入门了Unity引擎.现在我们将进一步学习游戏开发,学习制作一款射击类小游戏.首先我们需要去官网下载我们所需要的所有资源并且导入项目. 2.在项目 ...

  2. Java入门基础教程第一篇

    Java入门基础 Java是是一门面向对象编程语言,现在广泛使用,名声和c/c++.python一样,虽然我最常用的语言是python,但现在现在闲来无事,就写了这篇文章. 目录 Java入门基础 下 ...

  3. jeecg-boot 入门-小白避坑篇

    目录 一.jeecg-boot 入门 二.jeecg-boot 框架知识点 2.0 jeecg-boot 主题色修改 2.1 jeecg数据库表-字段规范 2.2 j-dict-select-tag ...

  4. springboot入门系列教程|第九篇:springboot实现图片上传与显示(附源码)

    前言## 上一篇我们介绍了springboot如何实现自定义拦截器配合注解使用,那么这篇我们将介绍springboot实现图片上传的功能. 目录## 文章目录 前言## 目录## 项目创建### 项目 ...

  5. Java - Dubbo实战(一)快速入门 小白教程

    Dubbo是什么? Dubbo[]是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案. 其核心部分包含: 远程通讯: 提供对多种基于长连接的NIO框架抽象封 ...

  6. 如何通过git拉取gitlab上面的项目(小菜鸟入门小白教程)

    小菜鸟们冲鸭!! 由于本人是个小菜鸟,刚起步,所以写下遇到的点点滴滴,希望能给同是小菜鸟的大家带去一定的帮助吧! 一.首先要在自己的电脑上面安装Git这个软件,可以去官网进行下载--https://g ...

  7. layui如何通过开关按钮实现div的隐藏于显现,展开时拥有动画效果(小菜鸟入门小白教程)

    小菜鸟们冲鸭!! 由于本人是个小菜鸟,刚起步,所以写下遇到的点点滴滴,希望能给同是小菜鸟的大家带去一定的帮助吧! 一.问题描述 由于是小菜鸟,所用最开始只会用普通的css按钮,然后通过onclick事 ...

  8. idea中提交时committed出现author 'xxx' is not 'Name ' and matches no existing author 的解决方法(小菜鸟入门小白教程)

    小菜鸟们冲鸭!! 由于本人是个小菜鸟,刚起步,所以写下遇到的点点滴滴,希望能给同是小菜鸟的大家带去一定的帮助吧! 一.问题描述 在idea中进行上传的时候,通过--VCS>Git>Conm ...

  9. Angular7入门辅助教程(一)——Angular模块

    如果有任何的非技术障碍,比如如何新建Angular项目,请先到我的"Angular7入门辅助教程"专栏参考这篇博客:Angular7入门辅助教程--前篇 NgModule 本篇博客 ...

最新文章

  1. C++编程进阶8(最好不要实现类型转换运算符、单形参的构造函数与类型转换、临时对象与RVO)
  2. openresty开发系列14--lua基础语法3函数
  3. 报道 | AI 2000 人工智能全球最具影响力学者榜单:美国领跑,中国第二,德国第三...
  4. 推荐一个MDI模式的远程桌面管理程序
  5. [蓝桥杯2019初赛]数列求值-模拟+数论
  6. oracle批量update 转
  7. HTML 标签学习总结第一天
  8. Jquery 动画
  9. 京东物流系统架构演进中的最佳实践
  10. SXF-2021软测实习生笔试
  11. c语言程序设计超市会员卡管理系统,C语言程序设计课程设计报告超市水果信息管理系统...
  12. 桃词典 Peach Dictionary 简易英语词典app开发 安卓软件开发 Part 5
  13. boundschecher2
  14. Linux系统时区时间修改
  15. 2020年全新开放式学习资源
  16. 基于kali2020环境,熟悉数据库服务的部署及基本验证方法及访问数据库
  17. java链接cobar例子_cobar续3-jdbc的简单调用
  18. 如何实现六轴机械臂的逆解计算?
  19. 在线教学系统:C#实现网络电子白板、课件功能
  20. 隐Box源码4.9.9版本/2022年最新

热门文章

  1. 百度地图(HTML5新特性)-全面详解(学习总结---从入门到深化)
  2. 如何利用PuTTY连接Windows主机和Linux虚拟机
  3. 求职套题2---各大公司
  4. 可兼容NAND512W3A2SZA6E物料的AFND1208U1-CKAI
  5. VC++获取磁盘剩余空间(附源码)
  6. MySQL删除数据后,释放磁盘空间
  7. 到底什么是云原生(Cloud Native)?什么是CNCF(Cloud Native Computing Foundation)
  8. BI神器Power Query(19)-- PQ提取商品信息
  9. 测试开发工程师成长心路
  10. 别下载CAJ了!用这个插件,轻松在知网下载PDF