Streaming
Этот раздел содержит настройки, связанные с потоковой передачей ресурсов.
First Frames Force | number of frames to load immediately after the first frame. It will make the scene appear right at the application start-up. Диапазон значений: [0, INT_MAX]. Значение по умолчанию : 60. Консольная команда: render_streaming_first_frames_force (API) |
---|---|
Max Threads | maximum number of threads used for streaming. Higher number of threads results in faster streaming, but may cause spikes in case of excessive consumption of GPU resources. Диапазон значений: [1, 256]. Значение по умолчанию : 1. Консольная команда: render_streaming_max_threads (API) |
Particles Memory Limit | cache memory limit for vertices of particle systems, in percentage of the total GPU memory. Setting a too low limit for a huge number of particle systems in the scene may lead to rendering only some of them. Диапазон значений: [0, 100]. Значение по умолчанию : 3. Консольная команда: render_streaming_particles_memory_limit (API) |
Preload at World Loading#
Shaders | Консольная команда: render_shaders_preload (API) |
---|
Budgets#
Loading | time limit for loading graphics resources, in milliseconds per frame. Increasing the limit leads to increasing the streaming performance. However, memory consumption also increases due to a decrease in the resource loading speed. Диапазон значений: [0.0f, inf]. Значение по умолчанию : 1.0f. Консольная команда: render_streaming_budget_loading (API) |
---|---|
Textures Destroy | time limit for deleting textures, in milliseconds per frame. The Engine will distribute the textures cleanup process by the required number frames in order to not exceed the time limit. The number of frames will also depend on the amount of content in the scene and the computing capacity. Increasing the limit leads to increasing the streaming performance. However, memory consumption also increases due to a decrease in the texture unloading speed. Диапазон значений: [0.0f, inf]. Значение по умолчанию : 0.1f. Консольная команда: render_streaming_budget_destroy_textures (API) |
Meshes Destroy | time limit for deleting meshes, in milliseconds per frame. The Engine will distribute the meshes cleanup process by the required number frames in order to not exceed the time limit. The number of frames will also depend on the amount of content in the scene and the computing capacity. Increasing the limit leads to increasing the streaming performance. However, memory consumption also increases due to a decrease in the mesh unloading speed. Диапазон значений: [0.0f, inf]. Значение по умолчанию : 0.1f. Консольная команда: render_streaming_budget_destroy_meshes (API) |
Textures#
Streaming Mode | streaming mode for textures. The following modes are available:
Консольная команда: render_streaming_textures_mode (API) |
---|---|
Cache Resolution | resolution for texture cache elements. These minimized copies of textures are used instead of the originals while the latter are loaded. Одно из следующих значений:
Консольная команда: render_streaming_textures_cache_resolution (API) |
Memory Limit | cache memory limit used for textures streaming. This is a recommended value to aim for. So, it can be exceeded if textures are required to render the current frame. The memory limit is associated with the lifetime: textures are deleted from video memory only when both values are exceeded. Диапазон значений: [0, 100]. Значение по умолчанию : 65. Консольная команда: render_streaming_textures_memory_limit (API) |
Life Time | lifetime of GPU cache used for textures rendering. The engine deletes textures after this time only if the specified memory limit for textures streaming is also exceeded. Диапазон значений: [1, 60]. Значение по умолчанию : 4. Консольная команда: render_streaming_textures_life_time (API) |
Meshes GPU#
Streaming Mode | streaming mode for loading meshes to video memory (VRAM). The following modes are available:
Консольная команда: render_streaming_meshes_mode_vram (API) |
---|---|
Memory Limit | memory limit used for loading meshes to video memory (VRAM). This is a recommended value to aim for. So, it can be exceeded if meshes are required to render the current frame. The memory limit is associated with the lifetime: meshes are deleted from VRAM only when both values are exceeded. Диапазон значений: [0, 100]. Значение по умолчанию : 4. Консольная команда: render_streaming_meshes_limit_vram (API) |
Life Time | lifetime of meshes in video memory since the last time they were accessed. The engine deletes meshes after this time only if the specified VRAM limit is also exceeded. Диапазон значений: [0, 60]. Значение по умолчанию : 4. Консольная команда: render_streaming_meshes_life_time_vram (API) |
Meshes CPU#
Streaming Mode | streaming mode for loading meshes to memory (RAM). The following modes are available:
Консольная команда: render_streaming_meshes_mode_ram (API) |
---|---|
Memory Limit | memory limit used for loading meshes to memory (RAM). This is a recommended value to aim for. So, it can be exceeded if meshes are required for the current frame. The memory limit is associated with the lifetime: meshes are deleted from RAM only when both values are exceeded. Диапазон значений: [1, 100]. Значение по умолчанию : 5. Консольная команда: render_streaming_meshes_limit_ram (API) |
Life Time | lifetime of meshes in memory since the last time they were accessed. The engine deletes meshes after this time only if the RAM limit is also exceeded. Диапазон значений: [1, 60]. Значение по умолчанию : 20. Консольная команда: render_streaming_meshes_life_time_ram (API) |
Prefetch CPU#
Collision Mode | mode of asynchronous pre-loading of meshes to memory before they are used. Pre-loading is available only for meshes, which have at least one surface with the Collision flag set. There are 3 modes of loading such meshes to RAM:
Консольная команда: render_streaming_meshes_prefetch_collision (API) |
---|---|
Intersection Mode | mode of asynchronous pre-loading of meshes into memory before they are used. Pre-loading is available only for meshes, which have at least one surface with the Intersection flag set. There are 3 modes of loading such meshes to RAM:
Консольная команда: render_streaming_meshes_prefetch_intersection (API) |
Radius | radius within which meshes are pre-loaded into memory. The value should exceed the physics radius (for collisions) and/or the radius within which intersections are calculated. Диапазон значений: [0.0f, inf]. Значение по умолчанию : 0.0f. Консольная команда: render_streaming_meshes_prefetch_radius (API) |
For OpenGL Only#
Приведенные ниже настройки доступны только для OpenGL API.
Async Buffer |
Размер промежуточного буфера (между ЦП и новым ресурсом), используемого для потоковой передачи сетки и текстур, в МБ. Размер этого буфера должен быть равен размеру самого большого ресурса (сетка / текстура), иначе в случае большего ресурса размер буфера будет изменен, что приведет к скачку. Имейте в виду, что размер этого промежуточного буфера будет добавлен к общему потреблению памяти. |
---|---|
Async Buffer Indices |
Размер промежуточного буфера, аналогичного Async Buffer выше, используемого для потоковой передачи ячеек (для хранения индексов вершин ячеек), в мегабайтах. Имейте в виду, что размер этого промежуточного буфера будет добавлен к общему потреблению памяти. |
Async Buffer Synchronization |
Включите синхронизацию буфера для передачи данных из потокового потока в основной. При отключении асинхронный буфер и асинхронный буфер для индексов каждый раз создаются заново. Это уменьшает количество синхронизаций буфера, но увеличивает количество выделений памяти. Иногда (в зависимости от используемого оборудования / драйвера, например, когда на основной поток влияют примитивы синхронизации в других потоках) распределение памяти может быть быстрее, чем при синхронизации, в таких случаях, когда потоковая передача становится неприемлемо медленной, рекомендуется отключить синхронизацию буфера. |