使用Unity 3D时是否有任何限制?

时间:2017-04-16 21:30:06

标签: unity3d 3d unity5

我仍然是3D编程/游戏开发领域的新手。我使用Unity与MonoDevelop,主要使用由Blender制作的模型,纹理等。编程逻辑由C#完成。

我的主要问题是:Unity是否有可能实现的一切?我知道这是一个广泛的问题,但是“一切”我的意思就像现在几乎所有的3D游戏(或2D游戏),例如:

  • intro / cutscenes(例如,到达地图上的特定点)
  • 菜单/动画菜单组件中的主菜单/配置
  • 可配置的声音/图形选项
  • 多个地图/场景,按需加载地图/场景/游戏对象
  • 音效,背景音乐

再次对不起,我知道这是一个广泛的问题,但我无法摆脱Unity中“无法做我想做的一切”的感觉(如果你知道我的意思)。

例如,我可以像使用Blender / Unity完全使用使命召唤MW2或超级马里奥64? (我知道那些可能是使用他们自己的游戏引擎等,但我只是指构成整个游戏的所有组件,基本上)。

或以其他方式制定,任何人都可以说“哦,这是一个好主意,但你无法用Unity实现这一点”,或类似的东西。如果有,为什么?

谢谢!

4 个答案:

答案 0 :(得分:6)

我敢说在Unity中写游戏真的不可能。有些事情很难或不可行,但让我们从你的小清单开始。

  • 简介/过场动画:目前这是一本小手册。您可能需要编写一些C#代码来控制GameObjects和Camera上的一组动画。我会说难,不是不可能的。另一种方法是使用Cinema Director(资产商店)或等待直到Unity版本Timeline(之前称为Director,这是一种专门用于此类内容的功能; D)

  • 主菜单:这很简单。自v4.6起,Unity拥有一个名为Canvas的功能。用它制作相当简单的菜单(甚至是动画菜单)。

  • 声音和图形选项:不是我的部门,但我相信你想要的是Unity Quality settings。它们允许您创建一些预定义的图形设置,以便用户可以在它们之间进行选择。此外,在ShaderLab(统一的着色器语言)中编写着色器时,您可以根据您的播放器所具有的图形卡来统一它应该如何表现。

  • 多个地图/场景,按需加载地图/场景/游戏对象:对于按需内容,有AssetBundles。从来没有真正使用它们,但一般的想法正是如此:将一些资产分组到文件中并告诉游戏下载它,加载资产并在游戏中使用它们(如DLC)。如果您打算在其中存储代码,可能会遇到一些困难,但同样,这并非不可能。

  • 音效,背景音乐:呃......你有我。你可能想看看Unity的Audio Mixer,但这是我从未真正研究过的东西。 (理论上它也很简单,我看到我的同事一直在处理音频)

Unity几乎可以在小团队中做任何你想做的事情。如果你偶然发现了一些你不能轻易做到的事情,我会建议你查看资产商店,因为其他人很可能已经遇到过这个问题了。

现在,关于Unity无法做什么:

Unity是一款旨在满足大多数人需求的游戏引擎。因此,如果您的游戏需要复杂而繁重的计算,它有时会面临效率问题。但如果你把它们统一起来,你可能也会把它们放在其他地方。这里的另一种选择是将重物写入统一之外的dll中。在任何情况下,Unity中的大多数效率问题都可以通过良好的编程实践和一些C#知识来纠正。

修改支持。我认为这是Unity目前所拥有的最大差距。社区中有很多尝试,但是没有一个尝试始终有效的通用解决方案。如果您打算制作一个可修改的游戏,您可能需要阅读很多内容,调整代码并自己编写很多内容。但同样,这并非不可能。人们已经做到了,你也可以做到。

图形技术 Unity4在AAA游戏通常具有的渲染技术方面存在很大差距,但Unity5非常好,应该涵盖几乎所有其他现代引擎支持的内容。 (纠正我,如果我是错的人)在unity5中有几个限制。

特别困扰我的团结中的大多数限制都与编辑有关,而且实际上不可能解决。

如果我记得任何东西,我会在这里编辑它。

答案 1 :(得分:2)

Unity是一个真正的多功能引擎。 如果你指定了所有的东西,使用统一的默认引擎,或者也可以使用某些插件,你可以获得最大的支持。

<强>过场动画

您可以使用C#编写代码来编辑过场动画,这一切都取决于您希望为电影效果确保的质量水平。

主菜单

你可以使用默认安装统一的工具轻松创建菜单和其他HUD,特别是“Canvas”gameObject适用于HUD,加载菜单就像游戏中的任何其他场景一样

<强>声音

团结中的声音编辑相当不错,不仅仅是创建声音,而是配置它们在游戏中重现的方式

地图

地形编辑器非常强大,你也可以从资产商店导入资产包,youtube上也有很好的视频,你可以制作自己的地图来激发灵感,还有许多工具,如着色器,风和地形

如果你正在寻找更强大的图形和更高的保真度,Unity可能不是你正在寻找的工具,Unreal填补了更多的空白,但你必须学习C ++,编辑的主要lenguaje。 Unity第一次是一个非常可靠的选择

答案 2 :(得分:0)

(我还不能发表评论,低代表)

我可以说,在使用Unity的4年中,我从来没有想过无法创建我想要的东西(虽然我不得不为事情做一些变通办法)。如今,Unity如此广泛,你可以想象一个功能,它存在。

我目前正在开展一个多人游戏的学校项目,并且工作稳定。我知道的唯一限制是其他引擎更快,(对某些人来说)更容易使用。我知道一个人编译游戏需要大约30秒。哪个不是那么好。但他的代码也非常垃圾。

您是否可以尝试想要构建的示例游戏或事物。这有助于回答这个问题。

答案 3 :(得分:0)

因此,虚幻引擎和许多其他引擎具有许多内置的功能。但是,这些带有约束。使用虚幻引擎,您已经在寻找很多已经打包到引擎中的东西,但是您必须跳过障碍才能使其完全按照您想要的方式工作。

另一方面,Unity内置的内容不多。例如,在Unreal中,您可以立即创建贝塞尔曲线,并让摄像机沿着这些曲线进行摄影。 Unity要求您编写自己的解决方案。

话虽如此,因为您正在编码或构建自己的解决方案,所以您的工作可能会花费一些时间,但您可能会对其有更多的控制权。