zoukankan      html  css  js  c++  java
  • 从零开始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>BFQJU[8JN{DLRGY83DULG.jpg 举个例子,你要让树在地面上产生阴影,那就得让树投射阴影,然后让地面接受阴影才行)

    9.物体碰撞:

      之前我们添加的立方体是作为障碍物存在的。水管工是不能从里面穿过的。 需要我们设置下属性。

      

    BoxCollider  启用后物体就可以作为障碍物存在了,也就是说水管工不能穿过该立方体。不启用的时候,水管工可以跑到他的里面。

    Mesh Renderer  选中后,该物体呈现在游戏界面。不选中就不呈现在游戏界面。注意,它不和BoxCollider 属性冲突。也就是说,一个物体选中了BoxCollider 没有选中Mesh Renderer 的时候,它在游戏界面上是不显示的。但是,当你走到他的左边那边的时候,依然会有阻拦作用。

    因此,此属性可以处理地图边界问题。阻挡游戏小人儿跑到地图外面。

  • 相关阅读:
    染色法判定二分图
    Kruskal算法求最小生成树
    Prim算法求最小生成树
    Floyd算法求多源最短路
    spfa判断负环
    java 线程的使用
    java IO基础
    数据库 EXISTS与NOT EXISTS
    数据库 何为相关查询和不相关查询?
    数据库的基础知识
  • 原文地址:https://www.cnblogs.com/liuruitao/p/4101781.html
Copyright © 2011-2022 走看看