Dedicated Server build target performs optimizations for networked applications. The build target applies some optimizations automatically by default, while others are optional because their impact depends on the game’s implementation.
By default, the Dedicated Server build target performs the following optimizations:
The Dedicated Server build target deactivates the Audio Subsystem because builds don’t need audio support when running as a dedicated server. Disabling the Audio Subsystem reduces CPU load.
The Dedicated Server build target removes process threads related to lighting because there’s no need to render lighting on a server build.
The Dedicated Server build target disables the following PlayerLoop callbacks because they aren’t necessary for a server build.
SendMouseEvents
UpdateAllRenderers
PlayerUpdateCanvases
The Dedicated Server build target removes GPU-only assets such as texture pixel data for textures and mesh vertex data, that the server doesn’t need. The build target preserves assets with CPU Read/Write access and assets in the Resource Folders.
Textures and meshes imported with CPU Read/Write access disabled are only accessible by the GPU, whereas the CPU can’t access them. Because the Dedicated Server build target doesn’t initialize a graphics device, there’s no need to include this data. Excluding this data reduces the memory usage of the executable.
Refer to the following lists to learn more about which assets the Dedicated Server build target removes and preserves.
Removed:
Preserved:
Note: To learn more about CPU Read/Write access, refer to Texture.isReadable and Mesh.isReadable.
You also have an option to apply additional optimizations through Enable Dedicated Server Optimizations property in the Player Settings window. These optimizations remove assets such as Shaders and Fonts. However, applying these optimizations may cause issues if the removed assets are referenced in the game’s implementation.
Assets removed:
In addition to the automatic optimizations applied through the Dedicated Server build target, you can apply the following implementation-specific optimizations manually.