This page has been translated automatically.
视频教程
界面
要领
高级
实用建议
基础
专业(SIM)
UnigineEditor
界面概述
资源工作流程
版本控制
设置和首选项
项目开发
调整节点参数
Setting Up Materials
设置属性
照明
Sandworm
使用编辑器工具执行特定任务
如何擴展編輯器功能
嵌入式节点类型
Nodes
Objects
Effects
Decals
光源
Geodetics
World Nodes
Sound Objects
Pathfinding Objects
Players
编程
基本原理
搭建开发环境
使用范例
C++
C#
UnigineScript
统一的Unigine着色器语言 UUSL (Unified UNIGINE Shader Language)
Plugins
File Formats
材质和着色器
Rebuilding the Engine Tools
GUI
双精度坐标
应用程序接口
Animations-Related Classes
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
IG Plugin
CIGIConnector Plugin
Rendering-Related Classes
VR-Related Classes
创建内容
内容优化
材质
Material Nodes Library
Miscellaneous
Input
Math
Matrix
Textures
Art Samples
Tutorials
注意! 这个版本的文档是过时的,因为它描述了一个较老的SDK版本!请切换到最新SDK版本的文档。
注意! 这个版本的文档描述了一个不再受支持的旧SDK版本!请升级到最新的SDK版本。

Streaming

本节包含与资源流有关的设置。

Streaming settings

流媒体设置
First Frames Force
通过控制台访问: 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:
  • Async - asynchronous loading of textures.
  • Force - force-loading of textures required for each frame at ones.
选项 #1 默认情况下选择(见上文)。
通过控制台访问: render_streaming_textures_mode (API控制)
Cache Resolution
通过控制台访问: 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:
  • Async - asynchronous loading of meshes.
  • Force - force-loading of meshes required for the current frame at once.
  • All - loading all meshes available in the project on the application start-up. This mode is good for small projects with few meshes.
选项 #1 默认情况下选择(见上文)。
通过控制台访问: 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:
  • Async - asychronous loading of meshes.
  • Force - force-loading of meshes required for the current frame at once.
  • All - loading all meshes available in the project on the application start-up. This mode is good for small projects with few meshes.
选项 #1 默认情况下选择(见上文)。
通过控制台访问: 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:
  • Disable - loading is disabled.
  • Radius - meshes within the prefetch radius are loaded.
  • Full - all meshes with the Collision flag are loaded.
This method should be used when the Async streaming mode for meshes is set. 选项 #1 默认情况下选择(见上文)。
通过控制台访问: 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:
  • Disable - loading is disabled.
  • Radius - all meshes within the prefetch radius are loaded.
  • Full - all meshes with the Intersection flag are loaded.
This method should be used when the Async streaming mode for meshes is set. 选项 #1 默认情况下选择(见上文)。
通过控制台访问: 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

用于网格和纹理流传输的中间缓冲区(在CPU和新资源之间)的大小,以Mb为单位。此缓冲区的大小必须等于最大资源的大小(网格/纹理),否则,在资源较大的情况下,将调整缓冲区的大小,从而导致峰值。

注意
请注意,此中间缓冲区的大小将添加到总内存消耗中。
Async Buffer Indices

类似于上面的Async Buffer的中间缓冲区的大小,以Mb为单位,用于网格流传输(存储网格的顶点索引)。

注意
请注意,此中间缓冲区的大小将添加到总内存消耗中。
Async Buffer Synchronization

启用缓冲区同步以将数据从流线程传输到主线程。禁用后,每次都会重新创建索引的异步缓冲区和异步缓冲区。这减少了缓冲区同步的数量,但增加了内存分配的数量。

注意
有时(取决于所使用的硬件/驱动程序,例如,当主线程受到其他线程中的同步原语影响时),内存分配可能比同步要快,在这种情况下,当流变得令人无法接受的慢时,建议禁用缓冲区同步。
最新更新: 2024-04-19
Build: ()