GOPHERSPACE.DE - P H O X Y
gophering on hngopher.com
HN Gopher Feed (2017-10-30) - page 1 of 10
 
___________________________________________________________________
Show HN: Unity 3D in Docker
44 points by nenadg
https://github.com/nenadg/docker-unity3d
___________________________________________________________________
 
hesdeadjim - 3 hours ago
Hmm interesting, would a good use-case be deploying a scalable
fleet of multiplayer servers?
 
  jayd16 - 3 hours ago
  Easier and cheaper to run your MP code as a plain old .NET
  process and client lib.
 
    hesdeadjim - 3 hours ago
    You are assuming you can divorce your authoritative server
    logic from Unity.
 
      [deleted]
 
    lynxaegon - 3 hours ago
    Or you could use nodejs & socket.io for the MP server which is
    even cheaper
 
      robterrell - 3 hours ago
      Not sure how it's cheaper cost-wise, since the .NET runtime
      is free, but his solution avoids a re-write of game code in
      JS.
 
  nenadg - 3 hours ago
  Well that would be nobrainer with something like: `docker-compose
  scale unity=n` where n = 1...n*You will only have to assign pool
  of ip addresses for your services, since it's fixed in this
  example.Reference: https://medium.com/@tonywangcn/how-to-build-
  docker-cluster-w...
 
  robterrell - 3 hours ago
  You wouldn't want the full Unity editor for that use... you'd
  make an executable build of your game in server configuration and
  build a docker container of that.
 
    hesdeadjim - 2 hours ago
    Sorry that's what I meant.
 
yodon - 1 hours ago
This isn?t about running Unity games in Docker, it?s about running
the Unity editor in a container, for use in automated continuous
integration processes.
 
  mlevental - 1 hours ago
  exactly; anyone who doesn't see the use case hasn't built a
  business based around unity (not recommended btw!)
 
    HammadB - 42 minutes ago
    I'd love to hear your thoughts on why you don't recommend that.
    Think I could learn.
 
TazeTSchnitzel - 2 hours ago
Real-time 3D graphics over VNC sounds painful.
 
  zitterbewegung - 2 hours ago
  Automated testing of video games is less painful than manual
  testing though.
 
  stuntkite - 1 hours ago
  Probably not what OP is doing, but there are way better ways to
  do that than VNC. You can adaptively stream gaming pretty
  effectively over any network especially a local wired one.
 
    TazeTSchnitzel - 1 hours ago
    I wonder if Steam Home Streaming works for the Unity editor?
    It's a popular and accessible option.
 
      seba_dos1 - 25 minutes ago
      It works for the whole desktop, so yes.
 
knowaveragejoe - 2 hours ago
What are some use-cases for this sort of thing...?
 
  RandomBK - 2 hours ago
  Imagine spinning up 1000 instances of your game through
  Kubernetes and running automated end-to-end tests, with automated
  inputs and screenshot capture.
 
    joshstrange - 39 minutes ago
    Well for that you would probably just spin up containers
    running your game itself, not unity. This is more for building
    the game on like a CI I would think.
 
      RandomBK - 11 minutes ago
      Perhaps.  I'm not very familiar with Unity and the
      development kit itself, but I would imagine it contains the
      necessary testing harness and other infrastructure.
 
  nenadg - 2 hours ago
  I'm using it in very specific [undisclosed yet] scenario where
  Unity needs to do something, and that needs to scale.Much of the
  process is explained in this post https://medium.com/@tonywangcn
  /how-to-build-docker-cluster-w...
 
  legohead - 1 hours ago
  Not sure of the full capabilities of this but perhaps spawning
  game clients to test out your multiplayer server?
 
  stuntkite - 1 hours ago
  Unity is extremely useful for all sorts of things outside of and
  gaming adjacent. Compiling 3d assets, spatial calculation, audio
  processing, procedural tasks, physics and material modeling,
  GIS/Architectural/Structural simulation.I have a containerized
  set of headless unity processes that take a map selection from a
  variety of public and private sources plus user data and compile
  it into a detailed modeled environments to be later served in
  WebGL, mobile, desktop, and 3D printed. Doing it in the users
  client would involve a lot of memory management and storage on
  sometimes restrictive devices, also unity can hand things off to
  numpy/scipy, ffmpeg, etc easier on my server than it can your
  phone or desktop.There is also a huge push from Nvidia[1]
  specifically and others to build new tools for remote GPU use
  taking the load off of thinner and thinner clients doing more and
  more things. OSX High Sierra offers remote GPU usage in Metal2.
  Connecting all these vector processors will frequently be for
  data ETL, but rendering that data is going to fall onto tools
  like Unity a lot, which will also be sharing in the role of
  assembly and iteration.With the new new embedded machine learning
  chipsets in every new gizmo, tools like Unity and Unreal are
  about to be ubiquitous doing all sorts of heavy lifting. There
  isn't quite a written playbook for what's going on, but it's
  pretty crazy and exciting. Almost like it was 1996 internet
  again.[1] https://devblogs.nvidia.com/parallelforall/goai-open-
  gpu-acc...
 
    nenadg - 1 hours ago
    my man :)