blui
在过去的几年中,游戏开发引擎变得越来越容易访问。 像Unity这样一直免费使用的引擎,以及最近从基于订阅的服务转变为免费服务的虚幻引擎,使独立开发人员可以访问AAA发布者使用的相同行业标准工具。 这些引擎都不是开源的,但每个引擎都可以促进周围的开源生态系统的发展。
这些引擎中包含插件,允许开发人员通过添加特定的应用程序来增强引擎的基本功能。 这些应用程序的范围从简单的资产包到更复杂的事物,例如人工智能(AI)集成。 这些插件在创作者之间差异很大。 有些是由发动机开发工作室提供的,而有些则是由个人提供的。 后者很多是开源插件。
什么是BLUI?
作为独立游戏开发工作室的一部分,我经历了在专有游戏引擎上使用开源插件的好处。 一个开源插件Aaron Shea的BLUI在我们团队的开发过程中发挥了重要作用。 它使我们能够使用基于Web的编程(例如HTML / CSS和JavaScript)来创建用户界面(UI)组件。 即使Unreal Engine(我们的首选引擎)具有实现类似目的的内置UI编辑器,我们仍选择使用此开源插件。 我们之所以选择使用开放源代码替代方案,是出于三个主要原因:开放源代码的可访问性,易于实施以及开放源代码程序随附的积极支持的在线社区。
在虚幻引擎的最早版本中,我们在游戏中创建UI的唯一方法是通过引擎的本机UI集成,使用Autodesk的Scaleform应用程序,或通过遍布整个虚幻社区的一些基于选择的基于订阅的虚幻集成。 在所有这些情况下,这些解决方案要么无法为独立开发人员提供具有竞争力的UI解决方案,要么对于小型团队而言过于昂贵,要么仅对大型团队和AAA开发人员而言是昂贵的。
在商业产品和虚幻引擎的本机集成使我们失败之后,我们便向独立社区寻求解决方案。 在那里,我们发现了BLUI。 它不仅与虚幻引擎无缝集成,而且还维护了一个强大而活跃的社区,该社区经常推送更新,并确保独立开发人员可以轻松访问文档。 BLUI使开发人员能够将HTML文件导入虚幻引擎并在程序内部进行进一步编程。 这样一来,通过网络语言创建的用户界面就可以与游戏代码,资产和其他元素集成在一起,并具有HTML,CSS,JavaScript和其他网络语言的全部功能。 它还提供了对开源Chromium Embedded Framework的全面支持。
安装和使用BLUI
使用BLUI的基本过程包括首先通过HTML创建UI。 开发人员可以使用任何工具来实现此目的,包括自举JavaScript代码,外部API或任何数据库代码。 HTML页面准备就绪后,您可以使用与安装任何Unreal插件相同的方式安装插件,并加载或创建项目。 加载项目后,您可以将BLUI函数放在Unreal UI蓝图内或通过C ++进行硬编码的任何位置。 开发人员可以在其HTML页面中调用函数,也可以使用BLUI的内部函数轻松更改变量。
![将BLUI集成到虚幻引擎4蓝图中 Integrating BLUI into Unreal Engine 4 blueprints](https://i-blog.csdnimg.cn/blog_migrate/ea8c0ce860cdb87a5f2d0aaae5a0f4b6.png)
将BLUI集成到虚幻引擎4蓝图中。
在我们当前的项目中,我们使用BLUI将UI元素与游戏中的音轨进行同步,以提供视觉反馈给游戏机制的节奏方面。 将自定义引擎编程与BLUI插件集成起来很容易。
![使用BLUI将UI元素与配乐同步。 Using BLUI to sync UI elements with the soundtrack.](https://i-blog.csdnimg.cn/blog_migrate/bc796fbbc6c7aa90df796f3c3ca57d08.png)
使用BLUI将UI元素与配乐同步。
由于BLUI GitHub页面上的文档 ,在虚幻引擎4中实现BLUI的过程很简单。 还有一个论坛,由支持虚幻引擎的开发人员组成,他们渴望同时询问和回答有关插件以及在实施该工具时出现的任何问题。
开源优势
开源插件可在专有游戏引擎的范围内扩展创造力。 它们继续降低了进入游戏开发的障碍,并且可以产生前所未有的游戏机制和资产。 随着对专有游戏开发引擎的访问不断增长,开源插件社区将变得越来越重要。 不断提高的创造力将不可避免地超过专有软件,开源将填补空白并促进真正独特游戏的开发。 而新颖性正是使独立游戏如此出色的原因!
翻译自: https://opensource.com/article/18/6/blui-game-development-plugin
blui