从零开始Unity3D游戏开发【2 简单的水管工例子】
1.首先,创建一个新的Project。
2.hierarchy(层)窗体下的Create下添加一个plane(平面)
3.调整Main Camera的视角,让panel显示在Game窗体。这一步比较困难,如果没有3维建模基础,确实不好整。但是没关系,别忘记了我们有快捷键。
在Scence(场景)里面调整好panel的视图,一般来说X轴在右侧。然后选中Main Camera,按住Ctrl+Shift+F,就会发现摄像机自动定位了。
4.导入系统资源包
Project下->Assets文件夹->右键->ImportPackage->Character Controller 然后导入全部
Assets文件夹下的Character Controller里面会有个水管工的图片,拖到plane里面,调整好视角。
5 Hierarchy(层)窗体下的Create下添加一个立方体Cube,放到plane上
6. Hierarchy(层)窗体下的Create下添加一个灯光,放到plane上
初步效果图如下:
7.U3D的灯光分为 Directional 方向光, Point 点光, Spot 聚光,area 区域光 具体的属性,用途在下一篇文章会摘抄一份详细的。
8.添加影子(光下面没有影子是多么奇葩的事情)
注意画红框框的地方,Area Light只是我们添加的光的名字,那么现在,它是区域光吗?答案是不是,他是 Directional 方向光。为什么呢?因为他的Type设置了。所以,有时候千万不要被名字迷惑。想要让光下的物体有影子,还得设置光的属性Shadow的属性为soft Shadows或者Hard Shadows.
阴影分为hard shadows和soft shadows两种,前一种阴影比较重,后一种相对柔和。但是默认情况下,你会发现只要directional light类型的灯光才可以使用阴影,别急,咱们来改一个设置,让其他两种灯光也能使用阴影,打开edit-project settings-player,然后将rendering path改为deferredlighting(延迟光照),这下你的电光源和聚光灯也能产生阴影了~(要产生阴影,还需要将投射阴影的对象的Cast shadows(投射阴影)勾选,将接受阴影的对象的Receive shadows(接受阴影)勾选, <ignore_js_op> 举个例子,你要让树在地面上产生阴影,那就得让树投射阴影,然后让地面接受阴影才行)
9.物体碰撞:
之前我们添加的立方体是作为障碍物存在的。水管工是不能从里面穿过的。 需要我们设置下属性。
BoxCollider 启用后物体就可以作为障碍物存在了,也就是说水管工不能穿过该立方体。不启用的时候,水管工可以跑到他的里面。
Mesh Renderer 选中后,该物体呈现在游戏界面。不选中就不呈现在游戏界面。注意,它不和BoxCollider 属性冲突。也就是说,一个物体选中了BoxCollider 没有选中Mesh Renderer 的时候,它在游戏界面上是不显示的。但是,当你走到他的左边那边的时候,依然会有阻拦作用。
因此,此属性可以处理地图边界问题。阻挡游戏小人儿跑到地图外面。
从零开始Unity3D游戏开发【2 简单的水管工例子】的更多相关文章
- 从零开始Unity3D游戏开发【1 常用快捷键】
Unity3D近两年起来的很快.自己对游戏一直很有兴趣,所以想找机会转游戏开发.目的之一是赚钱,目的之二是完成自己的小梦想. Unity3D的人才还是紧缺的,招聘网站上各个公司真敢拿着钱砸.让.NET ...
- 从零开始Unity3D游戏开发【3烘焙】
烘焙:通过烘焙能把动态场景转化为静态场景.从而提高游戏的性能. [烘焙步骤] 1.Edit---Player---Rendering[forword] 2.Directional light(必须是这 ...
- Unity3D游戏开发之简单的碰撞检測
在"Project"面板中单击"Create"旁边的小三角,选择"javascript"创建一个名为"collision" ...
- 从零开始Unity3D游戏开发【4 材质球和渲染纹理】
[创建材质球] 1.Project 面板下 create-Material 然后将材质球拖放到物体,物体的颜色便会和材质球相同: [渲染纹理 RenderTexture]
- Unity3D游戏开发初探—2.初步了解3D模型基础
一.什么是3D模型? 1.1 3D模型概述 简而言之,3D模型就是三维的.立体的模型,D是英文Dimensions的缩写. 3D模型也可以说是用3Ds MAX建造的立体模型,包括各种建筑.人物.植被. ...
- 从一点儿不会开始——Unity3D游戏开发学习(一)
一些废话 我是一个windows phone.windows 8的忠实粉丝,也是一个开发者,开发数个windows phone应用和两个windows 8应用.对开发游戏一直抱有强烈兴趣和愿望,但奈何 ...
- Unity3D游戏开发之连续滚动背景
Unity3D游戏开发之连续滚动背景 原文 http://blog.csdn.net/qinyuanpei/article/details/22983421 在诸如天天跑酷等2D游戏中,因为游戏须要 ...
- Unity3D游戏开发从零单排(四) - 制作一个iOS游戏
提要 此篇是一个国外教程的翻译,尽管有点老,可是适合新手入门. 自己去写代码.debug,布置场景,能够收获到非常多.游戏邦上已经有前面两部分的译文,这里翻译的是游戏的最后一个部分. 欢迎回来 在第一 ...
- [Unity3D]Unity3D游戏开发《反对》说到游戏(上)——目标跟踪
朋友,大家好.我是秦培,欢迎关注我的博客.我的博客地址blog.csdn.net/qinyuanpei. 首先博主要自我反省,过了这么久才来更新博客,这段时间主要是在忙着写期末的作业,所以博主基本上没 ...
随机推荐
- vimTAB宽度等设置
10 set shiftwidth=4 11 set softtabstop=4 12 set textwidth=200 13 set nu 14 set autoindent 15 set noe ...
- 新手必看:如何快速看懂VC++项目
1.在具备必需的编程基础知识后,试图理解一份完整的代码可以从以下几个方面入手: 1)首先运行以下程序,从外部角度感受一下有哪些功能. 2)了解代码中每个类的功能.看看文档,或者类的注释,那么仅仅 ...
- nexus 7 2013 驱动安装及root
驱动安装 Nexus 7 2013连接上电脑后,设备管理器显示新设备 nexus 7 待安装驱动(其实是MTP设备待安装驱动).去谷歌网站下载最新的USB驱动,version 8.0 的.与以前的版本 ...
- Coursera-Neural Networks by Geoffrey Hinton
feed-forward networks symmetrically-connection neural networks
- aix installp软件包管理工具
软件可以安装成两种状态:applied和committed.Applied状态保存了原来以前版本的软件,它把以前版本存储在/usr/lpp/PackageName目录下.这种方式可以回滚到以前的软件版 ...
- AndroidUI 视图动画-透明动画效果 (AlphaAnimation)
1.新建一个Android项目,Activity添加一个按钮如下代码: <Button android:id="@+id/btnAiphaAnimation" android ...
- 04737_C++程序设计_第2章_从结构到类的演变
例2.1 使用成员函数的实例. #define _SCL_SECURE_NO_WARNINGS #include <iostream> using namespace std; struc ...
- POJ 2029 DP || 暴力
在大矩形中找一个小矩形 使小矩形包括的*最多 暴力或者DP 水题 暴力: #include "stdio.h" #include "string.h" int ...
- 跨文档消息传递----postMessage()
HTML5 规范中,提出了XDM,又称为 跨文档消息传递,其核心是 postMessage()方法,进行跨域和跨文档消息传递,示例如下: <div class="CrossDocume ...
- 异常 ORA-00257: archiver error. Connect internal only, until freed
我oracle 是安装在linux 下. ORA-00257: archiver error. Connect internal only, until freed 得知是错误是由于归档日志(arch ...