Skip to main content

Protoflux图形化编程语言简介

ProtoFlux 是一种基于节点的图形化编程语言

vbq6Aq9EyKuqw9Uj-image.png

ProtoFlux 是我们创意工具皇冠上的明珠 - 我们经验丰富的团队迄今为止设计的最强大的可视化编程语言,它允许您快速制作原型并构建从简单交互到复杂游戏和系统的任何内容 - 提供完整的实时协作支持和即时反馈。构建从虚拟形象和世界交互性到复杂系统和游戏的任何内容。

— https://resonite.com/features.html

这个语言,本质上是C#的一个变种,而这个就是游戏本身与其他VR社交游戏不同的一点,能够与他人共同协作看代码。不幸的是,对于普通玩家来说,让他们接触的话,学习成本太高,开发者接触的话,部分人表示学习成本高,有部分人表示游戏游戏优化太差以至于不愿意花费时间,包括各种零零碎碎的吐槽,反正就是不愿意参与,这使得这种最强大的语言,反而成为了一个具有争议的“特色”

— 莫蒂默贝克特 VRCD-Resonite支部核心人员

用法

ProtoFlux在世界中表示为节点,可以从ProtoFlux节点浏览器中选择,并从ProtoFlux工具生成。

你可以从库存中包含的Resonite Essentials文件夹中轻松生成ProtoFlux工具,以开始使用ProtoFlux编写脚本(该工具本身位于Essentials文件夹的Tools文件夹中)。

要查看节点列表,请转到 ProtoFlux 浏览器版本 了解游戏中的样式,或转到 所有节点的字母顺序列表 查看完整列表。每个节点页面都链接回这两个列表。

要开始使用 Protoflux,请先生成(按键盘3),然后从上述文件夹中装备 ProtoFlux 工具。装备后,Protoflux 节点浏览器可以在上下文菜单中找到。要选择节点,请使用 Protoflux 工具双击该节点。这将使节点的名称出现在工具上方,以表明它已被选中。然后双击,以生成所选节点。

您还可以通过在指向节点的同时点击辅助节点来快速选择已存在的节点。

可以通过将激光指向节点的连接点并按住 Primary(大多数控制器的 Trigger,或左键单击),然后拖动导线并松开 Primary,同时指向另一个节点的连接点来连接节点。然后,可以通过在按住 Primary 时与 ProtoFlux 工具尖端的红线相交来切割它们。

与组件/插槽接口

要更改或读取插槽或组件属性的属性,请使用 ProtoFlux 工具指向给定字段名称时用控制器抓取(或右键单击)(例如,指向并抓取插槽上显示“位置”的位置)。使用 ProtoFlux 工具抓取场地时,打开上下文菜单。这将为您提供三个选择。

源(Source) :这将生成一个节点,该节点引用你持有的属性的源。这用于读取字段的值或使用 Protoflux 写入字段。

驱动器(Drive) :这将生成一个节点,以允许您在本地连续地将值写入您持有的变量。

引用(Reference) :这将生成一个节点,以允许您获取对给定值的字段的引用。这对于像 ProtoFlux:Tween Value 这样需要引用它正在更改的值的节点非常有用。

包装/拆包 Protoflux

要打包 Protoflux,请使用 ProtoFlux 工具按住 Secondary 并指向一组 Protoflux。原通量应该变成浅蓝色,这表示它已被选中(这也使所选的原通量充当一个对象,使你可以轻松地移动原通量组)。

选择 Protoflux 后,使用 Inspector 创建一个空插槽。这将是 Protoflux 被打包到的插槽中。要打包 Protoflux,请使用 Inspector 的左侧抓取插槽,使其名称位于 ProtoFlux 工具上方。抓取时,打开上下文菜单并选择 打包到(Pack Into) 。打包后,Protoflux 仍将正常运行,但将不再显示其视觉效果,并将应用一些优化。

要打开它的包装,请抓住你打包它时的同一个插槽并打开上下文菜单,同时装备了 ProtoFlux 工具。现在应该有一个选项来解压 Protoflux。

变量

在 ProtoFlux 中,有 3 种类型的泛型变量:

最简单的变量类型是数据模型存储。它在写入后会自动同步到所有用户。大多数简单的脚本都可以完全使用这些脚本来完成,但如果过度使用,可能会影响性能。

列表的自然进展是存储。它类似于大多数语言中的标准变量。它不会通过网络进行同步,这减轻了这样做的开销,但可能会导致不同步。

最后,我们有本地变量。它们是针对不同的执行链实例化的,因此,如果您的 ProtoFlux 一次被调用两次,您可以从两个上下文中读取和写入变量,它们将各自使用变量的唯一实例,该实例在执行结束时被丢弃。

脉冲

还没好

我的意见

这种编程语言看起来是很好,在很多种层面上说,但问题就在于,这种最强大的可视化编程语言,要多少学习成本?

每一个游戏都是有一定的学习成本的,有些游戏有很多人玩,就是在于这个游戏学习成本不高,甚至没有成本,却能体验到很多的游戏乐趣,这是当今市场给出的结果,也是每一个开发者都要注意的一个问题。

如果以道具系统作为卖点的话,或许会很好,但可惜的是,一年的反馈中,游戏的引导,还有目前的情况,已经劝退了一些人了...

但作为开拓者,要想有人接触,尤其是要有中文社区,那么搞好这个编程语言是至关重要的,不然拉人,也不一定能拉到多少人...