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 简单的水管工例子】的更多相关文章

  1. 从零开始Unity3D游戏开发【1 常用快捷键】

    Unity3D近两年起来的很快.自己对游戏一直很有兴趣,所以想找机会转游戏开发.目的之一是赚钱,目的之二是完成自己的小梦想. Unity3D的人才还是紧缺的,招聘网站上各个公司真敢拿着钱砸.让.NET ...

  2. 从零开始Unity3D游戏开发【3烘焙】

    烘焙:通过烘焙能把动态场景转化为静态场景.从而提高游戏的性能. [烘焙步骤] 1.Edit---Player---Rendering[forword] 2.Directional light(必须是这 ...

  3. Unity3D游戏开发之简单的碰撞检測

    在"Project"面板中单击"Create"旁边的小三角,选择"javascript"创建一个名为"collision" ...

  4. 从零开始Unity3D游戏开发【4 材质球和渲染纹理】

    [创建材质球] 1.Project 面板下  create-Material 然后将材质球拖放到物体,物体的颜色便会和材质球相同: [渲染纹理 RenderTexture]

  5. Unity3D游戏开发初探—2.初步了解3D模型基础

    一.什么是3D模型? 1.1 3D模型概述 简而言之,3D模型就是三维的.立体的模型,D是英文Dimensions的缩写. 3D模型也可以说是用3Ds MAX建造的立体模型,包括各种建筑.人物.植被. ...

  6. 从一点儿不会开始——Unity3D游戏开发学习(一)

    一些废话 我是一个windows phone.windows 8的忠实粉丝,也是一个开发者,开发数个windows phone应用和两个windows 8应用.对开发游戏一直抱有强烈兴趣和愿望,但奈何 ...

  7. Unity3D游戏开发之连续滚动背景

    Unity3D游戏开发之连续滚动背景 原文  http://blog.csdn.net/qinyuanpei/article/details/22983421 在诸如天天跑酷等2D游戏中,因为游戏须要 ...

  8. Unity3D游戏开发从零单排(四) - 制作一个iOS游戏

    提要 此篇是一个国外教程的翻译,尽管有点老,可是适合新手入门. 自己去写代码.debug,布置场景,能够收获到非常多.游戏邦上已经有前面两部分的译文,这里翻译的是游戏的最后一个部分. 欢迎回来 在第一 ...

  9. [Unity3D]Unity3D游戏开发《反对》说到游戏(上)——目标跟踪

    朋友,大家好.我是秦培,欢迎关注我的博客.我的博客地址blog.csdn.net/qinyuanpei. 首先博主要自我反省,过了这么久才来更新博客,这段时间主要是在忙着写期末的作业,所以博主基本上没 ...

随机推荐

  1. Google的兼容包问题【转】

    转自:http://blog.sina.com.cn/s/blog_3e28c8a50101g14g.html 项目之前好好的,今天开Eclipse,,出错. 错误Error retrieving p ...

  2. 【Python】iiblogs ——命令行下的网页收藏夹

    昨天和集训队的几位大大聊天,聊着聊着就聊到了博客的问题,发现几个人要么在CSDN 要么在博客园上, 要记住他们的所有的地址还真是不便,于是灵机一动,何不自己写一款小工具来存储打开他们的博客呢?于是将这 ...

  3. 网易云课堂_C语言程序设计进阶_第二周:指针:取地址运算和指针、使用指针、指针与数组、指针与函数、指针与const、指针运算、动态内存分配_2信号报告

    2 信号报告(5分) 题目内容: 无线电台的RS制信号报告是由三两个部分组成的: R(Readability) 信号可辨度即清晰度. S(Strength)    信号强度即大小. 其中R位于报告第一 ...

  4. Wormholes(SPFA+Bellman)

    Wormholes Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 36860   Accepted: 13505 Descr ...

  5. linux命令学习(1)

    linux下的文件命名规则 1)除了/ 之外,所有的字符都合法. 2)有些字符最好不用,如空格符.制表符.退格符和字符@ # $ & ( ) - 等. 3)避免使用. 作为普通文件名的第一个字 ...

  6. android listview 三种适配器设置

    1: public class ArrayAdapterActivity extends ListActivity { @Override public void onCreate(Bundle sa ...

  7. C#中关于DateTime的最大值和最小值

    System.DateTime的最小可能值:DateTime.MinValue.ToString()=0001-1-1 0:00:00 我们实际用的时候会指定一个默认值DateTime.Parse(& ...

  8. Swift应用开源项目推荐

    1. 风靡全球的2048 2014年出现了不少虐心的小游戏,除了名声大噪的Flappy Bird外,最风靡的应该就是2048了.一个看似简单的数字叠加游戏,却让玩的人根本停不下来,朋友圈还一度被晒分数 ...

  9. JAVA装饰器模式

    Java程序员们应该对java.io对不会陌生,因为java.io包采用了装饰器模式. 一.定义: Decorator装饰器,顾名思义,就是动态地给一个对象添加一些额外的职责,就好比为房子进行装修一样 ...

  10. .net的页面在大并发下偶尔出现503错误

    我们开发了一个回调页面,由一个工具负责调用,由于压力非常大,回调页面通过6台服务器负载均衡的: 最近业务系统又再次扩容,回调页面压力成倍增加,在高峰时间段偶尔出现了503错误. 拿到这个问题首先对系统 ...