mcwind's blog

游戏开发 Unity3d catia二次开发,协同设计流程,多学科设计仿真
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

随笔分类 -  Unity 游戏开发

Unity 游戏开发
摘要:本文摘要本文主要记录了我在开发格斗游戏时用到的几个运动特效,可以方便地表现武器挥动、运动模糊和其他一些特效。灵活使用可以大幅提升格斗游戏的视觉效果和感染力。有关Unity的其他话题也可以查阅我的其他文章。 一、运动轨迹运动轨迹常常用于表现武器的挥舞效果,在提高速度感的同时又能让玩家看清楚招式动作,所以是常见的一种格斗特效。Unity中可以直接使用TrailRender来实现该效果。 二、运动模糊运动模糊就是保留前几帧影像,形成一定的重影模糊效果,从而突出速度感。配合慢镜头使用往往能很好地表现运动高潮效果。运动模糊在Unity中是通过Motion Blur image effect脚本实现的。 阅读全文

posted @ 2011-03-03 23:54 mcwind 阅读(5186) 评论(0) 推荐(0)

摘要:本文摘要 本文首先描述了Unity3.0在支持大型游戏项目开发时的两个不足:即对模块化和svn协同缺乏支持。随后,分析了Unity自带的Export/Import Package 功能,并提出了使用此功能与svn配合实现多人项目协同的方法。有关Unity的其他话题也可以查阅我的其他文章。 Unity项目协同的挑战 在使用Unity开发游戏项目时,一般都需要多人同时工作。例如每人负责不同的场景,或者一些人负责调试光照和渲染,另一些负责编写程序逻辑。总之一个人全包的情况对于稍大一点的项目而言少之又少。但遗憾的是Unity对协同项目工作和大型项目的支持可以用糟糕来形容。 首先,Unity没有模块化开 阅读全文

posted @ 2011-02-27 02:11 mcwind 阅读(2891) 评论(0) 推荐(2)

摘要:在上一篇Unity角色模型优化要点中,我主要是翻译了官方的原文,并加了少量自己的注释。随后,经过这几天对角色换肤的测试,总结出一些建模和导入的要点,供大家参考。 所谓角色换肤也就是游戏中常见的角色自定制功能:玩家开始游戏前,一般需要创建一个游戏角色,选择性别、容貌、发型等等。进入游戏后,就可以操作自己创建的角色做出行走、跳跃、攻击等动作。很多游戏还允许玩家在中途变换发型甚至改变体态(例如升级后肌肉变得发达)等等。下图就是WOW中角色选择的画面示例。 从游戏开发者的角度来看,由于可定制元素排列组合的结果非常多,不可能事先将所有结果都一个一个建出来并施加动作。所以必须采取分部位建模,然后通过编程控 阅读全文

posted @ 2011-02-21 01:44 mcwind 阅读(3936) 评论(3) 推荐(1)

摘要:在和朋友制作游戏的过程中,经常有人问到角色模型应该怎么建才更符合Unity的需要。在此,我将Unity官方网站中关于建模要求的部分翻译如下,供参考。限于本人英文水平有限,而且并没有一字一句地翻译,而是基于自己对引擎的理解,采用更符合中文的语序来翻译。故采取在原文段落下方附加中文翻译的做法,以便大家对照。有些内容若朋友们觉得翻译得不妥,欢迎给我留言。Modeling Optimized Characters角色优化建模Use one Skinned Mesh Renderer一个角色仅使用一个SkinedMeshRenderer(后简称 SMR)Your character should use 阅读全文

posted @ 2011-02-18 22:06 mcwind 阅读(2830) 评论(1) 推荐(0)

摘要:游戏世界中物体是由网格面构成的,而每个网格面都有正反两个面。默认Unity是不绘制网格反面(也叫背面 BackFace)的,这样是为了提高速度。因为Unity假设绝大多数情况下被物体都是有体积的,所以每个反面都会被正面遮挡,也就无需绘制。 不过有些物体我们建模时并没有体积,例如披风、伞布等等。此时,就需要告诉Unity对这个物品正反面都要绘制。 Unity中可以使用Shader来实现此功能。首先,在项目视图中右键新建一个shader文件(如果该物品已经使用了一个shader,则可直接打开该文件),然后在sub shader中加入 Cull Off语句即可。 关于Cull 的其他信息,可以参考. 阅读全文

posted @ 2011-02-18 17:44 mcwind 阅读(1437) 评论(0) 推荐(0)

摘要:为了实现游戏人物外形的定制,专门研究了Unity示例程序。对程序中动态载入身体各部位模型并进行组合的代码看了很久才明白。下面做一些备忘。首先需要了解几个基本对象的结构一、SkinedMeshRender:该对象负责网格绘制。主要数据成员包括var bones: Transform[] 骨骼var materials : Material[] 材质var sharedMesh :Mesh 网格其中Mesh的主要成员是 vertices : Vector3[] 顶点boneWeights : BoneWeight[] 骨骼权重boneWeights数组与vertices数组对应,表示对应下标的顶点 阅读全文

posted @ 2011-02-18 01:22 mcwind 阅读(3910) 评论(0) 推荐(0)