Proof Of Concept
After taking a break from the project - I will be making a PoC would be a great way to understand how the system will work when I need so many computers to talk to each other. Adding full computers would be a waste of energy for the ship. So using SBC or Raspberry Pis would be great.
The computers do not need to be very powerful for sending data to the main game engine to reflect what is happening on the screen and vice-versa. I would like to use my knowledge of web technology where the input from the players on the touch screens can be sending data to the game engine to update the monitors and the actual game. You have to remember that I am in a close loop and not using the internet for the game to run.
My plan is to run an Unreal or Unity game on the pilot CPU (displaying on the TV) and sync the all ship that way using a wired network of SBC computers using RPC protocol. I want to use SBC boards since I will have touch screen, knobs, faders, LED, smaller screens, lighted switches, LED lighting, etc to be controlled by those SBC I/O channels.
A few protocols comes to mind but I would like to run NGINX web servers to sync it all with some WebSocket RPC modules as well. When one button is triggered it has to synchronize many monitors, touch screens, update data in the main game and keep logs.
Testing
I will be testing the following on the Raspberry Pis
- Web Server NGINX -> NodeJS -> ReactJS
- Web Server Python -> http.server
- Web Server NGINX -> Apache -> JS
- Unreal Web Server -> RESTFul compliant
- Web Socket Server
I will be testing the following architecture and game engine RPC
- Unity RPC
- Unreal RPC
- WebSocket RPC
- Local Gitlab to update all hardware with new code
- Connection latency with RPC
Disclaimer
The information provided herein is for general informational purposes only and is subject to change without prior notice. While efforts are made to ensure accuracy and timeliness, no guarantees can be made regarding the completeness, reliability, or currents of the content. Please verify all details independently before making any decisions based on this material.
Blog