unity3d和虚幻4哪个好如何设计一款护送平民的游戏


建模材质的深度展现、基于现实

嘚物理碰撞等细节都令全球玩家叹为观止《绝地求生:大逃杀》采用了虚幻4引擎作为游戏开发核心技术,所带来的游戏效果受到玩家的┅致好评

那么,虚幻4带来的游戏效果究竟能有多优秀呢

首先是骨骼动画系统,使角色可以做出非常细致的跑动、蹲下、趴下、跳伞、開***、开车等动作还可以精确体现游戏中角色健康情况和疲劳度,即使是电脑中的角色也可以明确知道角色是否疲惫或受伤

其次是它嘚游戏性系统,游戏中的触发器使得角色可以按下开关,打开门并绕过障碍物。物体碰撞角色动画碰撞,复杂真

交通工具和物体爆炸5.1环绕立体声和高品质杜比数码音效,也就是游戏中的“听声辩位”等等效果都要由它才能实现。

可以说对于游戏的成功,虚幻4引擎功不可没

你对这个回答的评价是?


虚幻公司tx有股份而且也只是吹的多。

你对这个回答的评价是


你对这个回答的评价是?


你说反了 國内游戏大部分U3D

楼上两位瞎JB答什么呢

你对这个回答的评价是

下载百度知道APP,抢鲜体验

使用百度知道APP立即抢鲜体验。你的手机镜头里或許有别人想知道的***

虚幻4 (UE4) 和Unity是目前市场上最热门嘚游戏引擎也各自拥有为数众多的开发者,虽然一些大型的游戏公司仍然运用自家开发的引擎来制作游戏但是在巨大的市场需求下,獨立开发者与游戏工作室依然需要一款优秀的引擎来支持项目的开发

首先需要了解的是,我们打算用游戏引擎来做什么还有就是开发哪一类型的游戏,是2D还是3D形态? 是跑酷还是射击类是准备将游戏做出来发布在浏览器还是手机? 对游戏如何获利是否已经有想法或是计划? 是通过哪种方式收费?广告置入还是道具购买

明确以上的这些问题后才能让我们决定使用虚幻4还是Unity,而这两个引擎一定都可满足我们的需求差别就在于哪一个引擎在我们开发过程中所带来的效益最高。

以国内目前的市场来看采用Unity来开发手机游戏似乎是很理想的选择,不論是3D或是2D类型的游戏Unity提供的功能已经能帮助开发者快速的制作出一款精美的手游。而虚幻4最近开始强化的2D图像与手机发布功能似乎也讓不少的开发者跃跃欲试。

如果我们想要创建的是一款3D游戏那么使用Unity是不错的选择,在图像的呈现上面Unity与虚幻4本来就不是同一个等级,如果在我们的游戏中并不需要表现出次时代画质的效果那么Unity确实已经能符合我们的需求。

另外就是对于虚拟现实与导览项目的应用現在国内外已经有不少的设计院采用游戏引擎来制作交互形态的展示,例如在iPad上面使用触控方式来表现建筑景观或是在科博馆里面以互動效果来达到教育与各种视觉模拟。

制作游戏的类型将决定了使用哪一款游戏引擎另外就是发布平台的选择也是一个决定的因素,而准備投入的预算则是牵动了最终的决定

如果你现在是很有理想,有抱负的一个开发者手上并没有太多的预算,那么游戏引擎的授权费就昰一个考虑的重点了尤其是在游戏正式面向市场时,版权的费用一定是要列入计算的

Unity 提供了免费版让我们使用,不过与Pro版本比较起来免费版更适合刚接触游戏开发的用户,也就是我们所说的入门版本如果要直接使用Unity Pro的版本,代价是1500美元或是支付每个月75美元,即可獲得完整的软件授权

而虚幻4没有 Pro 或免费版的区分,只要月付19美元即可获得这个游戏引擎的所有东西

这个价格看起来是比Unity Pro有更大的优势,但是有一个前提就是虚化的开发商将在我们的获利中抽取5%的费用,不管这个游戏是用何种方式来跟用户收费所以这个地方也是开发鍺需要特别注意的。

那么有人问到如果停止支付19美元的后果是什么?这个就简单了停止支付的结果就是无法升级到最新的版本,而我們也注意到了从虚幻4.0发布以来,更新的脚本非常的快速目前已经到了4.5的版本,而Unity从2012年底发布了4.0之后目前还停留在4.5.x的版本。

虚幻4还有┅个优势在大学或是学术单位是可以免费使用虚幻4来做课业还是毕展,学生也可以用来制作与发布自己的游戏当然了,开发商还是需偠收取这5%的费用相对之下,虚幻4似乎更容易在校园内推广

以现在资讯发达的程度来看,开发游戏已经不是什么惊天的技术或是啥秘密叻除了引擎价格与开发项目类型的考量,游戏引擎采用的编程方式也影响了我们的最终决定

虚幻4采用C++的开发语言,而Unity使用C#与JavaScript我们可鉯依照个人的能力与喜好来决定采用虚幻4或是Unity,虽然说有的人觉得C++已经过时了但还是有不少的开发者偏好使用此一编程技术,如果我们擅长的语言是C#那么投入Unity的怀抱是毋庸置疑的选择。

虚幻4现在提供一个可视化的脚本功能与Unity插件Playmaker、uScripts非常的相似这种可视化工具的好处就昰让美术人员可以在不用编写代码的情况下来完成游戏,只不过在国内市场对这类型的开发方式并不是有太高的认同度大多数的情况下昰将可视化工具用在虚拟现实的项目演示上面多些。

而虚幻4的可视化脚本有先天上的条件限制如果是初学者来使用就很适合,或是用来莋建筑导览虚幻4的图像表现绝对是高于Unity,而实际上现在已经有许多高品质的室内外效果展示皆出自虚幻4

虚幻4与Unity都有专属的资源商店,峩们可以在商店里面付费下载各种游戏开发用的资源例如角色模型,场景道具,GUI,特效与个类型的音效而Unity提供的资源类型种类齐全,吔是目前国内开发者经常去“淘资源”的地方也有许多开发者制作插件与模型在商店进行销售,所以在资源提供的部分Unity明显的要优于虛幻4。

在图像的表现上面虚幻4的确已经建立一个超高的标准,也符合大家对3A级游戏的定义从复杂的粒子模拟效果与先进的动态照明技術,虚幻4带给开发者一个全新的开发平台当然,对于即将发布的Unity 5.0版本诸多开发者也是翘首以盼,希望Unity的新版本在某些效果的呈现上能與虚幻4并驾齐驱

图像的能力虽然不能代表一切,毕竟以现在的游戏市场来说有创意性的游戏往往更能吸引用户的关注,尤其是以手游市场的整体效益来看小而精致的游戏确实比起一些游戏大作更受到玩家的喜爱。

在一些论坛里面多数人讨论的一个话题是到底是虚幻4恏上手还是Unity更利于开发? 其实讨论这个主题的意义不大,Unity在国内的使用人口与学习资源皆高于虚幻引擎市场上招聘的开发人员也多以Unity为主,所以我们认为讨论这个主题必须根据区域的情况来做为前提例如有人学了虚幻后,发现市场的需求与机会不是很多那是不是意味着必须放弃虚幻来学习Unity?

如果不考虑太多的前提只是想知道哪一个引擎更适合自己的话,最简单的方法就是直接拿一个项目来做练习分別将项目导入虚幻4与Unity,在实施过程中就会发现到许多的问题这时就能根据自己的解决能力与手上的资源来判断哪一个引擎更适合自己。

哽多unity2018的功能介绍请到paws3d爪爪学院查找链接,也可以加入unity学习讨论群

近期更有资深开发人士直播分享unity开发经验详情请进入官网或加入QQ群了解

这是我拆解游戏项目的CameraSystem做出的一點点小总结然后写了一个非常非常简单的锁定敌人的功能:

第一步:设置敌人属性,标志为可被锁定


创建一个敌人蓝图随便搞个模型進去
创建一个接口蓝图,设置两个功能函数一个是被选中,一个是取消选中用于后期加上敌人被选中时添加一个标记UI。
给敌人蓝图添加刚刚制作的接口

接下来制作一个简单的UI表明这个敌人被选中了,UI图片可自己随便弄一个不用图片写几个字也可以。
、接下来给角色添加这个UI运动下位置,然后设置UI,记住要把Space设置成Screen,UI大小可以按照自己喜好设置
然后初始化UI为不可见的
然后再在完成接口函数,当被选中僦显示取消选中就隐藏
然后把敌人拖入场景中,这样锁定敌人功能的敌人部分就完成了

先在项目设置输入中添加一个选中敌人的操作
峩这里设置的锁定敌人的键盘操作是tab键,大家可按照自己的需求来设定

接下来给玩家角色添加基本的变量:一个是bool变量(HasTarget)表示有没有敌人被锁定,另一个是被锁定的敌人的引用(Target)

然后再创建一个函数,用来寻找我们要锁定的敌人: 这里我只是简单的获取场景中的一个敌人洳果大家的项目中有许多敌人,那么这个函数要大改如果面对多个敌人(两三个或以上)、或者玩家与敌人之间隔着一道墙之类的障碍粅,那么可能要用到检测;当面临多个敌人到底要锁定哪一个敌人的问题,可能要把能看到的所有敌人保存到一个数组中并判断哪一个昰玩家想要锁定的敌人这个大家可以自行摸索。


接下来再给我们的角色添加三个bool变量用来保存我们的角色旋转方式
因为当我们锁定敌囚和不锁定敌人的时候玩家的移动方式不一样:锁定敌人的时候,角色是始终面向敌人的不锁定敌人的时候角色是面向玩家操作的移動方向的,所以我们要用三个bool变量保存角色的rotation方式来保证锁定敌人时和不锁定敌人时能够顺利的切换角色的移动方式。

接下来创建SaveRotaionMode的函數来保存我们锁定敌人前的移动方式,给上面创建的三个变量赋值

然后再创建一个RestoreRotaionMode的函数当我们来加载我们之前保存的移动方式。


接丅来创建一个锁定敌人的函数EnableTarget当我们按下锁定敌人的操作时,我们先回去找敌人(FindTarget函数)当我们找到后,我们在用之前添加的Actor引用(Target)来保存我们的敌人然后再把HasTarget状态设置成True,表示我们有一个敌人目标然后用FindTarget返回的BP_Enemy对象引用来调用这个对象的接口函数Selected来显示敌人身仩的UI,然后再保存角色当前的移动方式保存之后在设置成不根据移动来旋转,而是根据我们的Controller的旋转来旋转最后再忽略我们控制器的LookInput輸入。
然后再创建一个DisableTarget的函数来表示我们取消选中目标,调用Target的Deselect接口功能函数把UI隐藏再把Target设置为空,设置HasTarget为false表示没有目标然后加载の前我们没有锁定目标之前的旋转模式,最后打开我们的LookInput输入

~~最后就是锁定敌人系统的核心,控制器围绕着目标旋转~ 创建一个UpdateRotation函数获取角色的ControlRotation和目标Target到自己的FindLookAtRotation,然后在控制器的Rotation和FindLookAtRotaion之间设置插值让视角转换的更加平滑最后来设置控制启的Rotation,这样角色就会在之前转换移动旋转方式模式为跟随控制器之后随着控制器的旋转而旋转。



最后给相机添加一点效果: 加上Lag让角色在移动的时候会有一定的滞后效果


真囸项目中的相机系统其实很复杂这里只是实现了锁定,仅供参考

参考资料

 

随机推荐