3D development engine-oriented adaptive stream loading method
By integrating environmental awareness and network monitoring modules into the 3D development engine, the resource loading strategy is dynamically optimized, solving the problems of intelligent resource loading and network adaptability in existing technologies, and achieving efficient resource management and a smooth user experience.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-24
- Publication Date
- 2026-03-10
AI Technical Summary
Existing 3D development engines' streaming loading solutions cannot intelligently adjust resource loading strategies, resulting in visual stuttering, network latency, and low memory management efficiency, failing to meet the real-time requirements of highly complex applications.
By integrating environmental awareness and network monitoring modules, real-time data on scene resource visibility, user behavior, and network status are collected. A dynamic priority calculation model is established to optimize resource loading queues and lifecycle management. Combined with resource dependencies and preloading mechanisms, adaptive streaming loading is achieved.
It improves the smoothness and network adaptability of large-scale 3D applications, optimizes resource utilization efficiency, and provides a more stable user interaction experience.
Smart Images

Figure CN121636162A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of 3D development engine, and particularly to an adaptive streaming loading method for 3D development engine. BACKGROUND
[0002] In the field of modern 3D application development, with the rapid development of digital twin, smart city, virtual simulation training and high-end visualization display and other applications, the virtual scene constructed by them is becoming larger and larger in scale, and the model precision requirement is continuously improving, resulting in an exponential increase in scene data volume. The total amount of resources involved in such high-complexity 3D applications, including high-precision models, multi-resolution textures, complex materials and animation data, often far exceeds the physical memory capacity of terminal devices, posing a serious challenge to real-time rendering and interaction performance.
[0003] To solve this core contradiction, mainstream 3D development engines (such as Unity, Unreal Engine) generally adopt resource streaming loading technology as a key component of the underlying architecture. This technology aims to dynamically load necessary resource data from storage media (local or network) to memory according to the current and predicted future needs of the scene during application runtime, and simultaneously unload non-critical resources from memory, thereby supporting the continuous running and interaction of large-scale virtual environments within limited memory budget.
[0004] However, the existing streaming loading scheme integrated in 3D development engines has inherent limitations in design, making it difficult to meet the stringent requirements of intelligent and adaptive capabilities for high-end applications. First, the priority mechanism of resource loading mostly relies on the static rules preset by developers in the editor before project construction. This static strategy cannot perceive the dynamic context during application runtime, and cannot intelligently adjust according to the real-time changes of user viewpoint and the shift of interaction focus. As a direct consequence, the I / O bandwidth of the engine may be consumed in loading a large number of resources outside the current field of view or non-urgent resources, while the core models and textures urgently needed by the user's field of view or the next interaction operation are delayed due to queuing, resulting in visual stuttering, sudden "pop-up" of important models or unresponsive interaction, which seriously damages the continuity of immersion and user experience.
[0005] Secondly, the architecture of the existing scheme lacks sufficient adaptability to dynamically changing network environments. For applications that rely on cloud resource distribution or require real-time synchronization of large-scale scene data (such as distributed collaborative design platforms and online virtual showrooms), network bandwidth fluctuations and increased latency are the norm. The current engine's streaming loading system usually does not have real-time awareness and feedback mechanisms for network conditions, and cannot intelligently adjust the number of concurrent requests, downgrade the precision version of loaded resources, or re-plan the loading sequence when network bandwidth is limited, which can easily cause network channel congestion, delay critical data transmission, and even cause application process interruptions.
[0006] Finally, the management strategy of the existing technology for complex dependency relationships between resources is relatively rough, usually using simple full loading or fixed dependency chain order. At the same time, its memory resource recycling strategy is based on general algorithms such as "least recently used", without considering the real-time importance, functional criticality, and computational cost of re-loading resources. This single-dimensional management approach can result in a large number of non-critical resources remaining in memory, while resources that are urgently needed are unloaded prematurely due to lack of space, causing subsequent frequent I / O jitters, increasing storage system overhead, and severely affecting the overall efficiency and stability of the application program. SUMMARY
[0007] Therefore, the technical problem to be solved by the present application is to provide an adaptive streaming loading method for a 3D development engine, which can realize adaptive streaming loading of 3D resources and improve the smoothness, network adaptability, and system resource utilization efficiency of large-scale scenes.
[0008] To solve the above technical problems, the technical solution of the present application is:
[0009] The adaptive streaming loading method for a 3D development engine includes the following steps:
[0010] Through the environment perception module integrated in the 3D development engine, the environment state data during application program running is collected in real time, including scene resource visibility information determined by the rendering camera parameters, behavior prediction information generated based on user operation sequences through trajectory prediction algorithms, and resource function importance information preset in the resource management system;
[0011] Through the network monitoring module provided by the 3D development engine, the state indicators of the current network connection are continuously obtained, denoted as network state indicators, including available bandwidth values, network delay data, and data transmission success rates;
[0012] A dynamic priority calculation model is established, and the environment state data and network state indicators are used as input parameters to generate a quantitative priority score for each resource item in the to-be-loaded resource pool through weighted calculation.
[0013] Based on the result of the priority score, a priority queue management strategy is adopted to dynamically reconstruct and sort the resource loading task queue, and the number of concurrent loading tasks is adaptively adjusted according to real-time network state indicators, and a corresponding resource compression strategy is selected based on the available bandwidth value;
[0014] According to the resource priority score and the system memory usage, an adaptive resource life cycle management system is established, and by periodically scanning the resource instances in the memory, the allocation optimization and recovery cleaning operation of the memory resources are performed in combination with the access mode and priority change of the resources.
[0015] Preferably, the calculation process of the scene resource visibility information comprises the following steps:
[0016] The space bounding box of the resource object is converted from the three-dimensional world coordinate system to the two-dimensional screen coordinate system through graph transformation, and the projection range thereof in the screen space is obtained;
[0017] The projection area on the screen is calculated based on the projection range, and the projection coverage area value is calculated by ratio with the total area of the screen to obtain an area ratio factor;
[0018] The coordinate position of the geometric center point of the projection range in the screen space is calculated, and the distance between the geometric center point of the projection range and the screen center point is calculated to obtain a center offset factor;
[0019] The straight-line distance between the resource object and the camera viewpoint in the world coordinate system is obtained through spatial coordinate calculation to obtain a depth distance factor;
[0020] The area ratio factor, the center offset factor and the depth distance factor are taken as input parameters, and weighted sum calculation is performed according to the preset weight proportion to output a visual importance coefficient representing the resource visibility degree.
[0021] Preferably, the dynamic priority calculation model generates a priority score comprising the following steps:
[0022] A priority score calculation formula based on multiple linear regression is constructed: priority score=w1x visual importance coefficient+w2x behavior prediction coefficient+w3x function importance coefficient+w4x network quality coefficient+b;
[0023] Wherein, w1, w2, w3, w4 are feature weight parameters obtained by machine learning training, and b is a bias term;
[0024] The visual importance coefficient is calculated based on the visibility of scene resources. The behavior prediction coefficient is calculated based on the user's historical movement pattern and current movement vector using a trajectory prediction algorithm. The functional importance coefficient is determined according to the importance level set in the resource labeling system. The network quality coefficient is obtained by normalizing the current available bandwidth value and network latency data in the network status indicators.
[0025] Preferably, it also includes dynamic parameter adjustment, including the following steps:
[0026] The performance monitoring module continuously collects key performance indicators during system operation, including average frame rate, resource loading latency, peak memory usage, and network bandwidth utilization.
[0027] Based on historical data and current values of key performance indicators, a feedback control algorithm is used to dynamically adjust the weight parameters in the priority calculation model.
[0028] Preferably, the number of concurrent loading tasks is adaptively adjusted based on real-time network status indicators, and an appropriate resource compression strategy is selected based on available bandwidth values, including the following steps:
[0029] Establish a mapping table between available bandwidth values and the optimal number of concurrent tasks. This table records the system concurrent task configuration schemes corresponding to different ranges of available bandwidth values.
[0030] Query the mapping table based on the current available bandwidth value, dynamically set and execute the corresponding number of concurrent loading tasks;
[0031] When the current available bandwidth value is detected to be continuously lower than the preset warning threshold for multiple consecutive sampling periods, the resource compression strategy is triggered.
[0032] In the resource compression strategy, for resource files with multiple precision versions, the low-precision model data is selected to be loaded, and for texture resources, the texture format that has been processed by block compression is selected to be loaded. At the same time, the mipmap level of the texture is dynamically adjusted according to the current network conditions.
[0033] Preferably, the implementation process of a resource lifecycle management system includes the following steps:
[0034] Create and maintain a metadata record structure for each loaded resource instance. This structure includes the resource identifier, current dynamic priority score, timestamp of the most recent reference by the component, CPU time and I / O bandwidth consumed during resource loading, and an estimated recent usage probability based on access history.
[0035] Based on the metadata record structure, a weighted summation formula is used to calculate the comprehensive value score of each resource, with the most recent access time having the highest weight, followed by the priority score, and the loading cost having the lowest weight.
[0036] When the available memory ratio is detected to be lower than the preset safety threshold, the resource reclamation process is initiated. All resources are sorted according to the comprehensive value score, and the resource instances with the lowest scores are removed one by one until the available memory is restored to a safe level.
[0037] During resource removal, a memory defragmentation operation is performed simultaneously, which merges free memory space by moving resource data blocks in memory, thereby improving memory utilization efficiency.
[0038] Preferably, it also includes multi-level cache management, including the following steps:
[0039] Establish a multi-level cache architecture in memory based on access frequency, including a hot data cache for storing frequently accessed resources and a cold data cache for storing infrequently accessed resources;
[0040] The resource's popularity score is calculated based on its access frequency, recent access time, and priority rating. The storage location of the resource in the cache level is then dynamically adjusted based on the popularity score.
[0041] When the cache space utilization reaches its limit, a candidate set for elimination is constructed based on the comprehensive value score and popularity value of the resources. Resource instances with low value scores and popularity values are removed first, while resources with high frequency of access are promoted in the cache hierarchy.
[0042] Preferably, it also includes resource dependency handling, including the following steps:
[0043] In the resource import and preprocessing stage of the 3D development engine, the internal structure of complex resources is parsed by static analysis of resource files, and a directed acyclic graph representing the dependency relationship between resource components is constructed. In the graph, nodes represent each sub-resource, and edges represent reference relationships.
[0044] During the runtime loading phase, the system dynamically selects between synchronous loading of the complete dependency chain or phased loading with a critical path priority, based on the current system CPU load, memory pressure, and network conditions.
[0045] In the phased loading strategy, the core functional components of the resources are loaded first, including mesh data, basic materials, and necessary animation skeletons. After loading is completed and the resources are basically usable, enhancement components, including high-resolution textures, complex shader programs, and detailed animation data, are loaded asynchronously in the background.
[0046] Preferably, it also includes preloading, comprising the following steps:
[0047] Based on the user's current movement speed, movement direction, and operation history, a motion prediction algorithm is used to predict the range of scene areas that the user may enter within a preset time window;
[0048] Based on the predicted scene area range, preload the metadata information of all resources within the scene area range, and start a progressive preloading process according to resource type and priority;
[0049] During the preloading process, the system's CPU, memory, and I / O load metrics are continuously monitored. When the system load exceeds a preset threshold, the geographical scope of preloading is dynamically reduced or the quality level of preloaded resources is lowered.
[0050] Preferably, it also includes anomaly handling and recovery, including the following steps:
[0051] The anomaly monitor can monitor various abnormal states during the resource loading process in real time, including network timeouts, data verification failures, memory allocation errors, and file format incompatibility.
[0052] When an abnormal state is detected, the corresponding backup loading scheme is selected and enabled according to the type of abnormal state, including retry mechanism, backup server switching, resource format conversion and simplified model loading;
[0053] Record detailed contextual information of abnormal states, including the abnormality type, occurrence time, resource identifier, and system status, and dynamically update system policies based on historical abnormality data. Prevent the recurrence of similar abnormalities through abnormality pattern recognition.
[0054] After adopting the above technical solution, the beneficial effects of the present invention are:
[0055] The adaptive streaming loading method for 3D development engines in this application includes: real-time acquisition of environmental state data during application runtime through an environment perception module integrated into the 3D development engine; environmental state data including scene resource visibility information determined by rendering camera parameters, behavior prediction information generated by a trajectory prediction algorithm based on user operation sequences, and resource function importance information preset in the resource management system; continuous acquisition of current network connection status indicators through a network monitoring module provided by the 3D development engine, denoted as network status indicators, including available bandwidth, network latency data, and data transmission success rate; and establishment of a dynamic priority calculation model to prioritize environmental data. Status data and network status metrics are used as input parameters to generate a quantified priority score for each resource item in the resource pool to be loaded through weighted calculation. Based on the priority score results, a priority queue management strategy is adopted to dynamically reconstruct and sort the resource loading task queue. At the same time, the number of concurrent loading tasks is adaptively adjusted according to real-time network status metrics, and an appropriate resource compression strategy is selected based on the available bandwidth. Based on the resource priority score and system memory usage, an adaptive resource lifecycle management system is established. By periodically scanning resource instances in memory and combining resource access patterns and priority changes, memory resource allocation optimization and reclamation operations are performed.
[0056] This application collects environmental status data such as scene resource visibility, user behavior prediction, and resource functional importance through an environmental perception module, and obtains network status indicators such as available bandwidth and network latency through a network monitoring module. Based on this multi-dimensional data, a dynamic priority calculation model generates a quantitative score for each resource to be loaded, ensuring that critical resources are loaded first and effectively solving the problem of screen lag.
[0057] At the execution level, the number of concurrent tasks is dynamically adjusted based on network conditions, and resource compression strategies are automatically activated when bandwidth is insufficient, including loading low-precision models and compressing textures, significantly improving network adaptability. Simultaneously, a resource lifecycle management system, combined with priority scoring and access patterns, intelligently manages memory resources to optimize memory usage efficiency. This application also includes resource dependency handling, preloading, and exception recovery mechanisms, forming a complete adaptive stream loading scheme.
[0058] It achieves the transformation from static preset to dynamic optimization, which can intelligently adjust the resource loading strategy according to changes in the runtime environment, ensure smooth operation in large-scale 3D application scenarios, improve resource utilization efficiency, enhance system stability under different network conditions, and provide users with a better interactive experience. Attached Figure Description
[0059] The present invention will be further described below with reference to the accompanying drawings and embodiments.
[0060] Figure 1 This is a flowchart of an adaptive stream loading method for 3D development engines according to an embodiment of the present invention. Detailed Implementation
[0061] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the invention.
[0062] like Figure 1 As shown, the adaptive stream loading method for 3D development engines of the present invention includes the following steps:
[0063] By integrating the environment perception module into the 3D development engine, environmental status data is collected in real time during application runtime. The environmental status data includes scene resource visibility information determined by rendering camera parameters, behavior prediction information generated by trajectory prediction algorithm based on user operation sequence, and resource function importance information preset in the resource management system.
[0064] The network monitoring module provided by the 3D development engine continuously acquires the current network connection status indicators, which are recorded as network status indicators. These network status indicators include available bandwidth, network latency data, and data transmission success rate.
[0065] A dynamic priority calculation model is established, which takes environmental status data and network status indicators as input parameters, and generates a quantitative priority score for each resource item in the resource pool to be loaded through weighted calculation.
[0066] Based on the priority scoring results, a priority queue management strategy is adopted to dynamically reconstruct and sort the resource loading task queue. At the same time, the number of concurrent loading tasks is adaptively adjusted according to real-time network status indicators, and an appropriate resource compression strategy is selected based on the available bandwidth value.
[0067] Based on resource priority scores and system memory usage, an adaptive resource lifecycle management system is established. By periodically scanning resource instances in memory and combining resource access patterns and priority changes, memory resource allocation optimization and reclamation operations are performed.
[0068] In this application, the environment perception module is integrated into the 3D development engine and is responsible for collecting environmental state data in real time during application runtime. The environmental state data consists of three core parts: first, scene resource visibility information determined by the rendering camera's position, viewpoint, and frustum parameters, reflecting the visual salience of each resource object in the current frame; second, behavior prediction information generated based on the user's continuous operation sequence and through a trajectory prediction algorithm, used to estimate the user's future movement path and interaction intent; and finally, resource functional importance information preset in the resource management system, using a predefined tagging system to identify the criticality of different resources in the application's functional logic. These three dimensions of data together constitute a complete description of the environmental state, providing a data foundation for subsequent resource priority calculations.
[0069] The calculation process for scene resource visibility information, determined by the rendering camera parameters, includes:
[0070] By transforming the spatial bounding box of a resource object from the three-dimensional world coordinate system to the two-dimensional screen coordinate system, its projection range in screen space is obtained.
[0071] The area covered by the projection area on the screen is calculated based on the projection range, and the ratio of the projection coverage area value to the total screen area is calculated to obtain the area ratio factor.
[0072] Calculate the coordinates of the geometric center point of the projection range in the screen space, and calculate the distance between the geometric center point of the projection range and the center point of the screen to obtain the center offset factor;
[0073] The depth distance factor is obtained by calculating the straight-line distance between the resource object and the camera viewpoint in the world coordinate system using spatial coordinates.
[0074] Using area proportion factor, center offset factor, and depth distance factor as input parameters, the parameters are weighted and summed according to preset weight ratios to output a visual importance coefficient that represents the degree of resource visibility.
[0075] The dynamic priority calculation model generates priority scores through the following steps:
[0076] Construct a priority score calculation formula based on multiple linear regression: Priority score = w1 × visual importance coefficient + w2 × behavior prediction coefficient + w3 × functional importance coefficient + w4 × network quality coefficient + b;
[0077] Where w1, w2, w3, and w4 are feature weight parameters obtained through machine learning training, and b is a bias term;
[0078] The visual importance coefficient is calculated based on the visibility of scene resources. The behavior prediction coefficient is calculated based on the user's historical movement pattern and current movement vector using a trajectory prediction algorithm. The functional importance coefficient is determined according to the importance level set in the resource labeling system. The network quality coefficient is obtained by normalizing the current available bandwidth value and network latency data in the network status indicators.
[0079] It also includes dynamic parameter adjustment, including the following steps:
[0080] The performance monitoring module continuously collects key performance indicators during system operation, including average frame rate, resource loading latency, peak memory usage, and network bandwidth utilization.
[0081] Based on historical data and current values of key performance indicators, a feedback control algorithm is used to dynamically adjust the weight parameters in the priority calculation model.
[0082] In this application, dynamic parameter adjustment plays a role in system self-optimization and continuous adaptation, enabling the system to learn and optimize online and automatically adjust decision parameters according to changes in the actual operating environment. By forming a complete perception-decision-optimization closed loop, this mechanism ensures that the system maintains optimal performance under different hardware configurations and network conditions, effectively improving the system's environmental adaptability and long-term operational stability.
[0083] In this application, the number of concurrent loading tasks is adaptively adjusted based on real-time network status indicators, and an appropriate resource compression strategy is selected based on available bandwidth values, including the following steps:
[0084] Establish a mapping table between available bandwidth values and the optimal number of concurrent tasks. This table records the system concurrent task configuration schemes corresponding to different ranges of available bandwidth values.
[0085] Query the mapping table based on the current available bandwidth value, dynamically set and execute the corresponding number of concurrent loading tasks;
[0086] When the current available bandwidth value is detected to be continuously lower than the preset warning threshold for multiple consecutive sampling periods, the resource compression strategy is triggered.
[0087] In the resource compression strategy, for resource files with multiple precision versions, the low-precision model data is selected to be loaded, and for texture resources, the texture format that has been processed by block compression is selected to be loaded. At the same time, the mipmap level of the texture is dynamically adjusted according to the current network conditions.
[0088] The implementation process of a resource lifecycle management system includes the following steps:
[0089] Create and maintain a metadata record structure for each loaded resource instance. This structure includes the resource identifier, current dynamic priority score, timestamp of the most recent reference by the component, CPU time and I / O bandwidth consumed during resource loading, and an estimated recent usage probability based on access history.
[0090] Based on the metadata record structure, a weighted summation formula is used to calculate the comprehensive value score of each resource, with the most recent access time having the highest weight, followed by the priority score, and the loading cost having the lowest weight.
[0091] When the available memory ratio is detected to be lower than the preset safety threshold, the resource reclamation process is initiated. All resources are sorted according to the comprehensive value score, and the resource instances with the lowest scores are removed one by one until the available memory is restored to a safe level.
[0092] During resource removal, a memory defragmentation operation is performed simultaneously, which merges free memory space by moving resource data blocks in memory, thereby improving memory utilization efficiency.
[0093] The resource lifecycle management system in this application achieves refined management of memory resources by establishing a complete resource metadata record and intelligent evaluation mechanism. This system maintains metadata for each resource instance, including priority score, access time, loading cost, and usage probability, and calculates a comprehensive value score based on a weighted algorithm, forming a scientific resource value evaluation system. Based on this, when system memory is insufficient, a resource reclamation process is automatically triggered, prioritizing the removal of low-value resources while simultaneously performing memory defragmentation to optimize storage space. This mechanism effectively improves memory utilization efficiency, significantly reduces unnecessary input / output operations, and ensures stable system operation in memory-constrained environments. In the overall technical solution of this application, this system plays a crucial role, translating priority scores into specific resource management strategies, providing decision-making basis for cache management and resource loading, and ensuring the rational allocation and continuous optimization of system resources through adaptive resource scheduling.
[0094] This application also includes multi-level cache management, comprising the following steps:
[0095] Establish a multi-level cache architecture in memory based on access frequency, including a hot data cache for storing frequently accessed resources and a cold data cache for storing infrequently accessed resources;
[0096] The resource's popularity score is calculated based on its access frequency, recent access time, and priority rating. The storage location of the resource in the cache level is then dynamically adjusted based on the popularity score.
[0097] When the cache space utilization reaches its limit, a candidate set for elimination is constructed based on the comprehensive value score and popularity value of the resources. Resource instances with low value scores and popularity values are removed first, while resources with high frequency of access are promoted in the cache hierarchy.
[0098] A multi-level caching management mechanism optimizes system performance by establishing a multi-level caching architecture based on access frequency. This mechanism first divides memory into hot data cache and cold data cache to store high-frequency and low-frequency accessed resources, respectively. The system calculates a resource's "heat value" based on its access frequency, recent access time, and priority score, and dynamically adjusts the resource's position in the cache hierarchy based on this value. When the cache space reaches its usage limit, the system constructs an eviction candidate set by combining the resource's overall value score and heat value, prioritizing the removal of resource instances with both low value and low heat, while simultaneously promoting high-frequency accessed resources to faster cache levels. This management strategy effectively improves cache hit rate, accelerates access to high-frequency resources, optimizes memory space utilization, and provides efficient data access support for the entire adaptive stream loading system.
[0099] This application also includes resource dependency handling, including the following steps:
[0100] In the resource import and preprocessing stage of the 3D development engine, the internal structure of complex resources is parsed by static analysis of resource files, and a directed acyclic graph representing the dependency relationship between resource components is constructed. In the graph, nodes represent each sub-resource, and edges represent reference relationships.
[0101] During the runtime loading phase, the system dynamically selects between synchronous loading of the complete dependency chain or phased loading with a critical path priority, based on the current system CPU load, memory pressure, and network conditions.
[0102] In the phased loading strategy, the core functional components of the resources are loaded first, including mesh data, basic materials, and necessary animation skeletons. After loading is completed and the resources are basically usable, enhancement components, including high-resolution textures, complex shader programs, and detailed animation data, are loaded asynchronously in the background.
[0103] Resource dependency handling can effectively improve the efficiency of resource loading and system response speed, ensure the availability of basic functions when system resources are limited, and optimize the overall system performance through reasonable resource scheduling.
[0104] It also includes preloading, which includes the following steps:
[0105] Based on the user's current movement speed, movement direction, and operation history, a motion prediction algorithm is used to predict the range of scene areas that the user may enter within a preset time window;
[0106] Based on the predicted scene area range, preload the metadata information of all resources within the scene area range, and start a progressive preloading process according to resource type and priority;
[0107] During the preloading process, the system's CPU, memory, and I / O load metrics are continuously monitored. When the system load exceeds a preset threshold, the geographical scope of preloading is dynamically reduced or the quality level of preloaded resources is lowered.
[0108] Preloading can complete resource preparation before the user arrives, effectively reducing the waiting time when switching scenes, and at the same time, the dynamic adjustment mechanism avoids the preloading process from causing overload to the system performance.
[0109] It also includes exception handling and recovery, including the following steps:
[0110] The anomaly monitor can monitor various abnormal states during the resource loading process in real time, including network timeouts, data verification failures, memory allocation errors, and file format incompatibility.
[0111] When an abnormal state is detected, the corresponding backup loading scheme is selected and enabled according to the type of abnormal state, including retry mechanism, backup server switching, resource format conversion and simplified model loading;
[0112] Record detailed contextual information of abnormal states, including the abnormality type, occurrence time, resource identifier, and system status, and dynamically update system policies based on historical abnormality data. Prevent the recurrence of similar abnormalities through abnormality pattern recognition.
[0113] Anomaly handling and recovery ensure rapid service recovery in the event of various anomalies. Basic system functions are maintained through a progressive degradation strategy, while historical data analysis is used to continuously optimize the system's fault tolerance, providing important reliability assurance for the entire adaptive stream loading system.
[0114] In summary, this application uses an environment perception module to collect environmental status data such as scene resource visibility, user behavior prediction, and resource functional importance, and a network monitoring module to obtain network status indicators such as available bandwidth and network latency. Based on this multi-dimensional data, a dynamic priority calculation model generates a quantitative score for each resource to be loaded, ensuring that critical resources are loaded first and effectively solving the problem of screen stuttering.
[0115] At the execution level, the number of concurrent tasks is dynamically adjusted based on network conditions, and resource compression strategies are automatically activated when bandwidth is insufficient, including loading low-precision models and compressing textures, significantly improving network adaptability. Simultaneously, a resource lifecycle management system, combined with priority scoring and access patterns, intelligently manages memory resources to optimize memory usage efficiency. This application also includes resource dependency handling, preloading, and exception recovery mechanisms, forming a complete adaptive stream loading scheme.
[0116] It achieves the transformation from static preset to dynamic optimization, which can intelligently adjust the resource loading strategy according to changes in the runtime environment, ensure smooth operation in large-scale 3D application scenarios, improve resource utilization efficiency, enhance system stability under different network conditions, and provide users with a better interactive experience.
[0117] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention should be included within the protection scope of the present invention.
Claims
1. A method for adaptive streaming loading of a 3D development engine, characterized in that, The method comprises the following steps: Through the environmental perception module integrated in the 3D development engine, the environmental state data during the running of the application is collected in real time, the environmental state data comprises scene resource visibility information determined by rendering camera parameters, behavior prediction information generated by a trajectory prediction algorithm based on a user operation sequence, and resource function importance information preset in a resource management system; Through the network monitoring module provided by the 3D development engine, the state indicators of the current network connection are continuously obtained, which are denoted as network state indicators, the network state indicators comprise available bandwidth values, network delay data and data transmission success rates; A dynamic priority calculation model is established, the environmental state data and the network state indicators are taken as input parameters, and a quantitative priority score is generated for each resource item in the resource pool to be loaded through weighted calculation; Based on the results of the priority score, a priority queue management strategy is adopted to dynamically reconstruct and sort the resource loading task queue, the number of concurrent loading tasks is adaptively adjusted according to the real-time network state indicators, and a corresponding resource compression strategy is selected based on the available bandwidth values; According to the resource priority score and the system memory usage, an adaptive resource life cycle management system is established, the allocation optimization and recovery cleaning operations of the memory resources are executed through periodic scanning of the resource instances in the memory, combined with the access mode and priority change of the resources.
2. The adaptive streaming loading method for 3D development engine of claim 1, wherein, The calculation process of the scene resource visibility information comprises the following steps: The space bounding box of the resource object is converted from the three-dimensional world coordinate system to the two-dimensional screen coordinate system through graphic transformation, and the projection range thereof in the screen space is obtained; The projection area on the screen is calculated based on the projection range, and the projection coverage area value is calculated by ratio with the total area of the screen to obtain an area ratio factor; The coordinate position of the geometric center point of the projection range in the screen space is calculated, and the distance between the geometric center point of the projection range and the screen center point is calculated to obtain a center offset factor; The straight-line distance between the resource object and the camera viewpoint in the world coordinate system is obtained through spatial coordinate calculation to obtain a depth distance factor; The area ratio factor, the center offset factor and the depth distance factor are taken as input parameters, and weighted summation calculation is performed according to the preset weight proportion to output a visual importance coefficient representing the resource visibility degree.
3. The adaptive streaming loading method for 3D development engine of claim 2, wherein, The dynamic priority calculation model generates the priority score, which comprises the following steps: A priority score calculation formula based on multiple linear regression is constructed: priority score = w1 x visual importance coefficient + w2 x behavior prediction coefficient + w3 x function importance coefficient + w4 x network quality coefficient + b; Wherein, w1, w2, w3, w4 are feature weight parameters obtained through machine learning training, and b is a bias term; The visual importance coefficient is obtained by calculating the scene resource visibility, the behavior prediction coefficient is calculated based on the user historical movement mode and the current movement vector through the trajectory prediction algorithm, the function importance coefficient is determined according to the importance level set in the resource label system, and the network quality coefficient is obtained by normalizing the current available bandwidth value and the network delay data in the network state indicators.
4. The adaptive streaming loading method for 3D development engine of claim 3, wherein, Further comprising dynamic parameter adjustment, including the following steps: Continuously collecting key performance indicators of system runtime, including average frame rate, resource loading delay, memory usage peak, and network bandwidth utilization, through the performance monitoring module; Based on the historical data and current value of the key performance indicators, using a feedback control algorithm to dynamically adjust the weight parameters in the priority calculation model.
5. The adaptive streaming loading method for 3D development engine of claim 1, wherein, Adaptively adjusting the number of concurrent loading tasks based on real-time network state indicators, and selecting the corresponding resource compression strategy based on the available bandwidth value, including the following steps: Establishing a mapping table of available bandwidth value and optimal concurrent task quantity, which records the system concurrent task quantity configuration scheme corresponding to different available bandwidth value intervals; Querying the mapping table according to the current available bandwidth value to dynamically set and execute the corresponding number of concurrent loading tasks; When it is detected that the current available bandwidth value has been continuously below the preset warning threshold for multiple consecutive sampling periods, triggering the resource compression strategy; In the resource compression strategy, for resource files with multiple precision versions, loading their low-precision model data, and for texture resources, loading the texture format after block compression processing, while dynamically adjusting the mipmap level of the texture according to the current network condition.
6. The adaptive streaming loading method for 3D development engine of claim 1, wherein, The execution process of the resource life cycle management system includes the following steps: Creating and maintaining a metadata record structure for each loaded resource instance, which contains the resource identifier, current dynamic priority score, timestamp of the last time referenced by the component, CPU time and I / O bandwidth consumed during resource loading, and recent usage probability estimate value based on access history prediction; Based on the metadata record structure, using a weighted summation formula to calculate the comprehensive value score of each resource, with the highest weight for the latest access time, followed by the priority score, and the lowest weight for the loading cost; When it is detected that the available memory ratio is below the preset safety threshold, starting the resource recycling process, sorting all resources according to the comprehensive value score, and removing the resource instances with the lowest score one by one until the available memory returns to the safety level; During the resource removal process, synchronously performing memory fragmentation consolidation operations to merge free memory space by moving resource data blocks in memory, improving memory usage efficiency.
7. The adaptive streaming loading method for a 3D development engine of claim 6, wherein, Further comprising multi-level cache management, including the following steps: Establishing a multi-level cache architecture based on access frequency in memory, including a hot data cache for storing high-frequency access resources and a cold data cache for storing low-frequency access resources; Calculating the heat value of resources based on their access frequency, latest access time, and priority score, and dynamically adjusting the storage location of resources in the cache hierarchy based on the heat value; When the cache space usage rate reaches the upper limit, constructing an elimination candidate set based on the comprehensive value score and heat value of resources, and preferentially removing resource instances with low value score and heat value, while promoting high-frequency access resources in the cache hierarchy.
8. The adaptive streaming loading method for 3D development engine of claim 1, wherein, Further comprising resource dependency relationship processing, including the following steps: In the resource import and preprocessing stage of the 3D development engine, the internal structure of complex resources is parsed through static analysis of resource files, and a directed acyclic graph representing the dependency relationship between resource components is constructed, with nodes representing individual sub-resources and edges representing reference relationships. In the runtime loading stage, based on the current system CPU load, memory pressure and network conditions, the synchronous loading of the complete dependency chain or the critical path priority phased loading strategy is dynamically selected. In the phased loading strategy, the core functional components of the resource are loaded first, including mesh data, basic materials and necessary animation skeletons. After the loading is completed and the resource is ensured to be available, the enhancement components are loaded asynchronously in the background, including high-resolution textures, complex shader programs and detailed level animation data.
9. The adaptive streaming loading method for 3D development engine of claim 1, wherein, It also includes preloading, including the following steps: Based on the user's current moving speed, moving direction and operation history, the motion prediction algorithm is used to predict the scene area range that the user may enter within a preset time window; According to the predicted scene area range, the metadata information of all resources in the scene area range is loaded in advance, and the progressive preloading process is started according to the resource type and priority; During the preloading execution process, the system CPU, memory and I / O load indicators are continuously monitored, and when the system load exceeds the preset threshold, the preloading geographic range is dynamically reduced or the resource quality level is reduced.
10. The adaptive streaming loading method for a 3D development engine of claim 1, wherein, It also includes exception handling and recovery, including the following steps: Through the exception monitor, various abnormal states in the resource loading process are monitored in real time, including network timeout, data verification failure, memory allocation error and file format incompatibility; When an abnormal state is detected, the corresponding backup loading scheme is selected and enabled according to the type of the abnormal state, including retry mechanism, backup server switching, resource format conversion and simplified model loading; The detailed context information of the abnormal state is recorded, including the type of the abnormal state, the time of occurrence, the resource identifier and the system state, and the system strategy is dynamically updated based on the abnormal history data to prevent the repeated occurrence of the same type of abnormality through abnormal pattern recognition.
Citation Information
Cited By
Three-dimensional scene resource loading speed optimization method
CN121858302A
Simulation model light map dynamic loading optimization method, device, equipment and medium
CN122244268A