Streaming
This section contains settings related to resource streaming.
Streaming Settings
Render Budget | Render budget value, which limits the number of loaded/created graphics resources during a frame according to loading/creation time. Budget value is measured in seconds. |
---|---|
Mode | Streaming mode to be used:
|
Use Memory Limit | Toggles memory limitation for asynchronous resource loading (streaming of meshes and textures) on and off. Corresponding memory limits are specified in the Meshes Memory Limit and Textures Memory Limit fields. |
Texture Cache Resolution | Resolution for texture cache elements. These minimized copies of textures are used instead of the originals. |
Texture Cache Preload | Preload texture cache at engine startup. Texture cache always remains in memory after loading. |
Preload at World Loading#
Shaders | Enables compilation of all shaders used in the loaded world on start-up. This option compiles and loads all shaders to RAM every time the world is loaded, which results in significant memory consumption. It is recommended to use pre-generated shaders cache instead when possible. In this case necessary shaders are loaded from cache to RAM on demand. |
---|
Memory Usage#
Meshes Memory Limit | Cache memory limit for meshes, in percentage of the total GPU memory. |
---|---|
Textures Memory Limit | Cache memory limit for textures, in percentage of the total GPU memory. |
Resources#
Check Duration | Resource check interval, in number of frames. Determines how often resources are checked for modification. |
---|---|
Destroy Duration | Resource cleanup interval, in number of frames. |
For OpenGL Only#
The settings below are available for OpenGL API only.
These parameters should be carefully adjusted for each particular case and configuration as they are heavily dependent on hardware and driver used.
Async Buffer |
Size of an intermediate buffer (between the CPU and new resource) used for mesh and texture streaming, in Mb. The size of this buffer must be equal to the size of the largest resource (mesh/texture), otherwise in case of a larger resource, the buffer will be resized causing a spike. Be aware, that the size of this intermediate buffer will be added to total memory consumption. |
---|---|
Async Buffer Indices |
Size of an intermediate buffer, analogous to the Async Buffer above, used for mesh streaming (to store vertex indices of meshes), in Mb. Be aware, that the size of this intermediate buffer will be added to total memory consumption. |
Async Buffer Synchronization |
Enable buffer synchronization for transferring data from the streaming thread to the main one. When disabled, both async buffer and async buffer for indices are created anew each time. This reduces the number of buffer syncronizations but increases the number of memory allocations. Sometimes (depending on the hardware/driver used, e.g. when the main thread is affected by sychronization primitives in other threads) memory allocation may be faster than synchronizations, in such cases, when streaming becomes unacceptably slow, it is recommended to disable buffer synchronization. |
Last update:
2019-08-16
Help improve this article
Was this article helpful?
(or select a word/phrase and press Ctrl+Enter)