2014-10-22 186 views
1

我们正在与Unity 3D合作,我们有一个完全开发的游戏,但客户希望完全可操作的游戏室,灯光,风扇,雾机等(在现实世界中)将从我们开发的Unity游戏中触发,我会开始说我不知道​​如何做到这一点,而且我强调! 我知道我需要使用DMX盒子,我们已经做了大量的研究,enttec USB DMX PRO似乎是正确的选择,但我不知道如何使用DMX盒子。Unity3D控制灯光,风扇和其他设备

我可能是错的,但似乎我们需要发送一个代码文件给它,它给它的动作预成型?我们通过将代码文件放在一个文件夹中发送它的代码,但我不确定!如果是这种情况,那么我可以统一在游戏中正确的时刻将文件放入文件夹中。

如果有人知道如何将代码发送到一个DMX盒子,如果你能纠正我的问题,如果你能告诉我代码的类型,这样我就可以学习它,这将是非常棒的。

而且是USB DMX PRO正确的路要走吗?

回答

0

DMX是要走的路,你可以得到所有种类的套件,可以由它来控制(包括油烟机)

协议本身是容易的,它只是8位的512字节流价值重复一遍又一遍,时间是至关重要的,虽然如此流需要生成在其自己的过程中,甚至处理器(这是如何entec pro是这样做的)

有趣的是如何与那个谈话进程或处理器,以及作为程序员,这就是你应该做出决定的主要原因,dmx接口可以让你原生接触界面,或者围绕触发“场景”来定位,这些场景是现成的值集合

你真的被要求做的是“show control”是一个流行的协议,那就是“OSC”(开放式声音控制),所以我要解决它的方式是将OSC库安装到unity中,并使用dmx与之兼容的硬件/软件组合。

+0

这就是我们终于做的事情,我应该更早地听取您的建议,因为我试图直接从统一发送命令,如果可能或不会,我不知道..但我做不到;) 最后我用UniOSC和lightjams – Beauzach 2014-11-14 08:39:21

+0

很高兴你的工作,Lightjams看起来非常好 – 2014-11-18 13:24:20

0

在阅读您的问题之前,我不知道dmx盒子,它看起来确实可以满足您的目的,但前提是您只打算使用dmx兼容硬件。

我有一个统一的程序,也用于控制真实世界的事件在几个例子 - 例如为了触发一个相机快门 - 事情是,除非你使用现成的完全包装的硬件设置,那里不会成为一个能够控制所有真实世界设备的单元。

以烟单元为例,很有可能只有一个GPIO引脚可供您控制。在这种情况下,您需要考虑为每个真实世界的设备构建一个微控制单元。

更具体地,命令的链将是这样的: 1.统一想要启动的烟,发送命令到包装器 2.包装发送命令到微控制器 3.微控制器到烟单元发送适当的信号(或真实世界的按钮推动如果烟雾单位甚至没有一个GPIO)

这个过程可能需要一些时间,特别是如果你不熟悉微控制器,但它肯定是可行的,问题仍然是,如果客户端与开发时间和成本没关系。

0

我不知道Unity框架,但也许会更容易使用Artnet协议。它通过以太网,因此应该更容易编程。或者您可以尝试使用LightJams等第三方软件 - 它是全功能的DMX控制器,支持OSC。有Unity的OSC库,所以你可以在LightJams上设置线索(例如,打开灯光到红色,并开启雾机),并通过从Unity发送OSC命令到LightJams来执行它们。

+1

不幸的是我不能设置两个答案是正确的,但OSC(UniOSC资产)和LightJams是我们去的方式,它的工作原理! – Beauzach 2014-11-14 08:40:37