UnigineEditor
Interface Overview
Assets Workflow
Adjusting Node Parameters
Setting Up Materials
Setting Up Properties
Landscape Tool
Using Editor Tools for Specific Tasks
FAQ
编程
Fundamentals
Setting Up Development Environment
Usage Examples
UnigineScript
C++
C#
UUSL (Unified UNIGINE Shader Language)
File Formats
Rebuilding the Engine and Tools
GUI
Double Precision Coordinates
应用程序接口
Containers
Common Functionality
Controls-Related Classes
Engine-Related Classes
Filesystem Functionality
GUI-Related Classes
Math Functionality
Node-Related Classes
Objects-Related Classes
Networking Functionality
Pathfinding-Related Classes
Physics-Related Classes
Plugins-Related Classes
CIGI Client Plugin
Rendering-Related Classes

Streaming

This section contains settings related to resource streaming.

Streaming settings

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:
  • Async - asynchronous streaming mode
  • Forced - force-loading of all meshes and/or textures required for each frame at once (e.g. grabbing frame sequences, rendering node previews, warmup, etc.)
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.
Notice
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.
Notice
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.

Notice
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.
Notice
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.
Notice
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.
Notice
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-05-16