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

Seb*_*ian 2 3d unity-game-engine unity5

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

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

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

再次抱歉,我知道这是一个广泛的问题,但我无法摆脱Unity中"无法做我想做的一切"的感觉(如果你知道我的意思).

例如,我可以用Blender/Unity完全编写游戏,例如Call of Duty MW2或Super Mario 64吗?(我知道那些可能是使用他们自己的游戏引擎等,但我只是指构成整个游戏的所有组件,基本上).

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

谢谢!

Mag*_*irr 6

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

  • Intro/Cutscenes:目前这是一本小手册.您可能需要编写一些C#代码来控制GameObjects和Camera上的一组动画.我会说难,不是不可能的.另一种选择是使用Cinema Director(资产商店)或等待直到Unity发布时间轴(以前称为Director,这是一种专门用于此类内容的功能; D)

  • 主菜单:这很容易.从v4.6开始,Unity就有了一个名为Canvas的功能.用它很简单的制作菜单(甚至是动画菜单).

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

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

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

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

现在,关于Unity不能做什么:

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

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

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

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


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