We are working with Unity 3D and we have a game fully developed, but the client wants fully operational game rooms, with lights, fans, fog machines ect (in the real world) that will be triggered from the Unity game that we have developed, I`ll start in saying that I have no idea how to do this, and I'm stressing! I understand that I need to use a DMX box for this, we have done a lot of research and the enttec USB DMX PRO seems like the right way to go, but I don't know how to use a DMX box at all.
I may be wrong, but it seems we need to send a file of code to it to giving it it's actions to preform? and we send it this code by placing the code file in a folder, but I'm not sure of that! if this is the case, then I could get unity to place files in a folder at the correct given moments in the game.
If someone who knows how to send code to a DMX box, it would be great if you could correct me on this, and if you could tell me the type of code so that I can get learning it that would be great.
And is the USB DMX PRO to right way to go?
DMX is the way to go, you can get all-sorts of kit that can be controlled by it (including smoke machines)
The protocol itself is easy, its just a stream of 8-bit 512 byte values repeated over and over again, the timing is crucial though so the stream needs to be generated in its own process or even processor (which is how the entec pro is doing it)
The interesting thing is how to talk to that process or processor and as a programmer, thats what should lead your decision, dmx interfaces will either let you talk raw to the interface or be oriented around triggering 'scenes' which are ready made sets of values
What you are being really asked to do is "show control" a popular protocol for that is "OSC" (open sound control) so the way I would tackle it is install the OSC library into unity, and use a dmx hardware/software combination that is compatible with that.