前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >BLUI:一种创建游戏UI的简单方法

BLUI:一种创建游戏UI的简单方法

作者头像
五月Rambo
修改2019-12-09 15:10:09
1.8K0
修改2019-12-09 15:10:09
举报
文章被收录于专栏:Opensource翻译专栏

开源游戏开发插件允许虚幻引擎用户使用基于Web的编程来创建独特的用户界面元素。

在过去几年中,游戏开发引擎变得越来越好上手了。像Unity这样一直免费使用的游戏引擎,以及最近从付费订阅转换为免费服务的虚幻引擎,它们都使独立开发人员可以使用3A 发布者使用的相同行业标准的工具。虽然这些引擎都不开源,但是它们可以促进行业的开源生态系统发展。

这些引擎中包含插件,允许开发人员通过添加特定的应用程序来增强引擎的基本功能。这些应用程序的范围从简单的资料包到更复杂的东西,例如人工智能(AI)的集成。这些插件在创作者之间差异很大。 有些是由引擎开发工作室提供的,而有些则是由个人提供的。后者有很大一部分是开源插件。

BLUI是什么?

作为独立游戏开发工作室的一员,我对在专有游戏引擎上使用开源插件的好处深有体会。一个由Aaron Shea开发的名叫BLUI的开源插件在我们团队的开发过程中发挥了重要作用。它允许我们使用基于Web的编程(例如HTML / CSS和JavaScript)创建用户界面(UI)组件。即使像Unreal Engine(我们的首选引擎)具有实现类似目的的内置UI编辑器,我们仍选择使用此开源插件。我们之所以选择使用开放源代码替代方案,是出于三个主要原因:开放源代码的可访问性,易于实施性以及开源代码程序随附的讨论热烈的在线社区。

在虚幻引擎的最早版本中,我们在游戏中创建UI的唯一方法是通过引擎自带的UI集成,使用Autodesk的Scaleform应用程序,或者通过遍布整个虚幻社区的一些订阅即可获得的虚幻集成。在所有这些情况下,这些解决方案要么无法为独立开发人员提供具有竞争力的UI解决方案,要么对于小型团队而言过于昂贵,要么就是仅仅对3A大作团队开放使用。

在商业产品和虚幻引擎的本机集成让我们失败之后,我们向独立社区寻求解决方案。在那里,我们发现了BLUI。它不仅与虚幻引擎集成得严丝合缝,而且还带出了一个强大而活跃的社区,该社区经常推送更新,并确保独立开发人员可以轻松访问文件。BLUI使开发人员能够将HTML文件导入虚幻引擎并在程序内部进行进一步编程。这样一来,通过Web语言创建的UI便可以通过HTML,CSS,JavaScript和其他Web语言的完整功能与游戏的代码,资料和其他元素集成。 它还提供了对开源Chromium嵌入式框架的全面支持。

安装并使用BLUI

要使用BLUI,首先我们要通过HTML来创建UI。开发人员可以使用任何工具来实现此目的,包括自建的JavaScript代码,外部API或任何数据库代码。HTML页面准备就绪后,您可以按照安装任何Unreal插件并加载或创建项目的方式安装插件。加载项目后,您可以将BLUI函数放在Unreal UI蓝图内的任何位置或通过C ++进行硬编码。开发人员可以在其HTML页面中调用函数,也可以使用BLUI的内部函数轻松更改变量。

在我们当前的项目中,我们使用BLUI将UI元素与游戏中的音轨进行同步,以提供视觉反馈给游戏机制的节奏方面。 将自定义引擎编程与BLUI插件集成起来很容易办到。

Integrating BLUI into Unreal Engine 4 blueprints.
Integrating BLUI into Unreal Engine 4 blueprints.

由于存在BLUI GitHub页面上的文档,在虚幻引擎4中实现BLUI的过程很简单。还有一个论坛,由支持虚幻引擎的开发人员组成,他们会很热心地询问和回答有关插件在使用时出现的任何问题。

开源插件的优势

开源插件可在专有游戏引擎的范围内扩展它的生命。它们继续降低了进入游戏开发的门槛,并且可以产生前所未有的游戏机制和资料。随着对独立游戏开发引擎的使用不断增长,开源插件社区将变得越来越重要。不断提高的创造力将不可避免地超过自带软件,开放源代码将填补空白并促进真正独特游戏的开发。而创造力正是独立游戏如此出色的原因!

本文系外文翻译,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系外文翻译前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • BLUI是什么?
  • 安装并使用BLUI
  • 开源插件的优势
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档