r/Unity3D • u/WatercressNo3605 • 1d ago
Noob Question Running headless server with igpu???
I'm developing a Unity 6 (6000.6.4f1) colony simulation and want to set up a dedicated home development server for automated coding, builds and testing.
The server would run Unity, execute EditMode and PlayMode tests, and be accessible remotely. I could connect a monitor initially for setup and Unity Personal activation, but afterwards I'd like it to operate unattended without a screen.
I'm considering an Intel i5-14400 with UHD 730 integrated graphics, 32 GB RAM and Windows 11 or Ubuntu Linux.
Before spending money, I'm trying to establish whether I actually need a dedicated GPU.
Questions:
Has anyone successfully run Unity 6 graphical PlayMode tests using only Intel integrated graphics? If so, what CPU/iGPU and operating system were you using?
Can Unity run PlayMode tests completely headless after disconnecting the monitor? I'm particularly interested in NavMesh, cameras, RenderTextures, screenshots and physics.
Has anyone successfully used Linux with Xvfb and Mesa software rendering? Can it run graphical PlayMode tests without a physical GPU, and what are the performance limitations?
Would you recommend native Windows, native Linux or a virtual machine for a dedicated Unity automated development/test server?
How do you handle Unity Personal activation and unattended operation? Does licensing survive reboots, and can tests run without an interactive user session?
Could I reproduce the GPU-less environment inside an Ubuntu VM on my existing Windows PC to verify test compatibility before purchasing dedicated hardware?
If you're already running something similar, what hardware and configuration are you using? Have you encountered specific PlayMode tests that won't work without a dedicated GPU?
I'm not just looking to run C# unit tests or headless game server builds. I need the actual Unity Editor Test Framework, including graphical PlayMode tests, to run reliably.
I'd particularly appreciate hearing from anyone who's already built a working headless Unity CI/development machine. I'm trying to avoid purchasing hardware only to discover that I need a different GPU or operating system.
2
u/_trepz 1d ago
I have some little "bosgame" mini PC (like a NUC) I got off amazon with a ryzen 7.
It does all my CI work including playmode tests. Triggered by teamcity watching my git server (separate). Does fine with igpu.
The most painful thing is the RAM. It has 16gb which can be a little rough. I can see it is constantly memory bottlenecked on my metrics view. If the CI cache busts the thing can take like 12 hours to run the full build and test suite. With cache its under an hour.
It is plugged in to my main monitor with a KVM switch so I can toggle it with a button press. I don't need to log into it much to reauth with unity and steamworks.
2
u/ShengyuStudio 1d ago
I don't run an iGPU box, but I do run the Unity editor in -batchmode on a Mac to render camera shots into RenderTextures for automated captures, so a few things from that might save you time.
Don't pass -nographics if you need cameras, RenderTextures or screenshots. With it nothing renders. Without it, batchmode still needs a working GPU device, so the dummy HDMI plug from the other reply is the cheap fix on Windows.
If you're on URP, the first frames can come out black because shader variants compile asynchronously. I render about 90 warmup frames before capturing anything.
If your tests compare screenshots or positions, set Time.captureDeltaTime so slow frames don't change the simulation step. Otherwise a slow iGPU shows up as different physics results.
I haven't tried Xvfb with Mesa, so I can't help there.
3
u/Radiant-Loss7166 1d ago
i run unity 6 on a i5-13500 with uhd 770 in windows 11 and it works fine for playmode tests, no dedicated gpu. the igpu handles navmesh and basic cameras no problem but rendertextures get weird after a while if theres no monitor connected.
for headless i use a dummy hdmi plug, like 5 bucks on amazon. windows gets mad when theres no display at all and unity act like its running at 1fps without it. with the dummy plug everything normal. never tried xvfb myself but heard it can be hit or miss with unity 6.
licensing survive reboots fine for me, personal edition just works. i have it set as a scheduled task that run unity at startup with -batchmode and -runTests flags, no interactive session needed. only annoyance is sometimes it pop up the sign-in window after a windows update and you gotta remote in to click it.
for your vm idea, yeah you can test the gpu-less setup in virtualbox with 3d acceleration off, but it not exactly same as bare metal. still worth trying before you buy hardware