使用UE4制作游戏的行业专业人员是完全使用蓝图,还是只使用C ++?


15

作为游戏开发模块的老师,我通常坚持要求用户使用C ++,因为它是行业中比较抢手的技能,但是虚幻引擎4中有关C ++的在线支持和信息似乎相对薄弱。专业人士现在是否也在使用蓝图


11
文档不能很好地衡量使用了多少东西。
MichaelHouse

缺少有关虚幻引擎4 C ++的文档,因为您需要亲自阅读代码。如果可以访问源代码,则不一定严格需要文档。不过,拥有它会很好。
Oxy

1
@Oxy源代码不能替代文档。期。来源是多少难度比文档阅读,顾名思义,因为文档的一点是要提炼出一个功能确实为可读的格式是什么。对于像Unreal这样的高性能,功能强大的代码,这是双重事实。
基金莫妮卡的诉讼

1
我在解释发生的事情,没有理由。“不过,拥有它会很好。” 而且,您最好阅读所用函数的代码,甚至包括已记录的函数,因为一些重要的函数具有诸如“ foo(x){/ * foo”之类的金色块,因此未实现,而是改用bar(x),因为通常其行为类似于foo(x )已完成* / bar(x);}。我还必须看到一个与代码发展保持同步的文档系统,除了自动文档外,它除了生成参数类型和返回类型外,无非就是阅读标头确实
。– Oxy

Answers:


25

是的,专业游戏使用蓝图。

有些使用了C ++和蓝图。我们同时在Dead by Daylight上使用。

蓝图的一大优点是,非程序员可以访问编写脚本行为的功能。并非每个项目都会以这种方式使用它们,但这是它们被设计的原因之一。他们将UnrealScript替换为无需击中C ++即可改变行为的手段,并且还替换了Unreal 3的可视脚本系统Kismet。


你可以扩大吗?是仅程序员使用蓝图,还是仅使用“非技术”人员,或者两者都使用?它是用于特定目的还是几乎用于任何用途?
KABoissonneault

7
@KABoissonneault非常混合。在大多数情况下,没有一种简单的方法可以清楚地区分程序员从事的工作与非程序员从事的工作。也就是说,如果你有一个设计师,谁可能会希望调整尤其如此各地的代码。蓝图在快速原型制作中也得到了广泛使用,如果性能不需要,它们不一定会转换为C ++。根据工作室和项目的不同,它也会有很大的不同,因此没有答案。
基金莫妮卡的诉讼

9

来自游戏行业之外的一些轶事:我们将UE4用于VR中的体系结构可视化。

尽管我希望大多数东西都用C ++内置,但是我们也将蓝图大量用于各种“附加逻辑”,例如电灯开关,门等。

这种方式已经存在了两年多,而我是这项工作开始时唯一的程序员。所以这是我的观察:

  • 令人震惊的是,非程序员可以使用Blueprints!
  • 我可能会惊吓新手程序员如何使用蓝图;)
  • 即使最终将其转换为C ++,蓝图对于快速的RnD阶段也是不错的选择

对我来说,最大的好处是:在很多对话中,我清楚地看到,蓝图唤起了我成为非技术同事的程序员的愿望。发生这种情况的主要原因是,他们可以实现相当复杂的逻辑,同时能够对其进行可视化调试。

他们实际上从软件构架以及巨大的意大利面条蓝图的陷阱(或噩梦)中吸取了一些辛苦的教训。但是只有在此过程中取得了许多成功之后,才有成功!因此,他们一点也不灰心,而是有动力去做得更好,并找出自己如何做的。

自从他们开始使用C ++,Python和C#课程以来,我们的蓝图的整体质量变得更好了,但最重要的是:在开发我们的核心库时,我现在有一些帮助:)

TLDR;

是的,我们使用的是蓝图,它们甚至使我最初的非技术同行成为更好的程序员。


1
诸如Blueprints之类的视觉语言的优点之一就是您不必担心语法,而且它们通常是如此抽象,以至于您只需很少的样板就可以完成很多工作。它们使学习方法编码变得容易,而不会被语法所困扰。通常,他们也太高级了,无法做任何巫术,但是,您知道,我愿意权衡这一点,让非编码人员对游戏的行为产生直接影响。
基金莫妮卡的诉讼

@NicHartley尝试myVector.x += otherVector.x在蓝图中进行。:o
Almo

1
@Almo我大约90%确信这是可能的,除非您真的希望它成为一条“线”。只是(get myVector x) (get otherVector x) -> (+) -> (assign myVector x)(哇,很难在文本中写出蓝图……)。不过,我没有要测试的虚幻副本。或者,如果向量是不可变的,则只需创建一个新向量即可,(myVector.x + otherVector.x, myVector.y, myVector.z)
Fund Monica的诉讼

1
绝对有可能,但是很乱。矢量线进入Break框,该框具有x,y,z输出。进行两次,一次获取myVector.x,另一次获取otherVector.x,将其添加并将其路由到分配框。
Almo

1
我没有说你不能。只是这太可怕了。
Almo
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.