Large-space AR content rendering method and system
By implementing multi-level segmentation and state-marking for differentiated resource management of large spaces, the problems of high memory consumption and low performance in large-space AR rendering are solved, achieving efficient resource scheduling and smooth virtual content presentation.
Patent Information
- Application Number
- CN202511483541.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-10-17
- Publication Date
- 2025-11-21
- Estimated Expiration
- 2045-10-17
AI Technical Summary
Existing large-space AR rendering solutions suffer from high memory consumption, low performance, and improper resource management, leading to problems such as untimely loading or premature unloading.
By dividing the large space into multiple levels, initial subspace units of multiple levels are formed. Status markers are added according to the user's location and predicted location, and differentiated loading and caching strategies are configured, including the current status, the potentially reachable status, and the unreachable status, and real-time loading, preloading, and delayed unloading are implemented respectively.
Significantly reduces redundant asset loading, decreases terminal resource consumption, improves rendering efficiency and smoothness, and enhances the immersive experience and interactive stability of virtual-real fusion.
Smart Images

Figure CN120997462A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of augmented reality, and in particular to a method, system, computer device, and computer-readable storage medium for rendering large-space AR content. Background Technology
[0002] With the rapid development of augmented reality (AR) technology, large-space AR applications have shown great potential in fields such as commercial displays, cultural tourism, and education and training. These applications typically require the creation of immersive experiences that blend the virtual and real worlds within physical spaces ranging from hundreds to thousands of square meters, which poses a significant challenge to AR content rendering technology.
[0003] In related technologies, current large-space AR rendering solutions adopt a holistic packaging approach, which packages all virtual assets in the scene (including 3D models, textures, animations, etc.) into a single complete runtime file. The advantage of this approach is its simplicity, loading all resources at once; however, this approach results in excessively large data volumes, requiring all resources to be loaded into memory during runtime, leading to high memory usage and severely impacting the performance of mobile devices, causing issues such as lag, overheating, and even crashes.
[0004] In addition, a hot update mechanism can be used for large-scale AR rendering. This approach can optimize the runtime file size and dynamically add or unload resources. However, during the hot update process, users cannot use or experience the service normally while waiting for resources to download; furthermore, due to the lack of intelligent resource management strategies, situations such as "untimely loading" or "premature uninstallation" often occur.
[0005] Therefore, a rendering method for large-scale AR content is needed, which can achieve more refined spatial division and more intelligent resource scheduling. Summary of the Invention
[0006] This application provides a method, apparatus, system, computer device, and computer-readable storage medium for rendering large-space AR content, in order to at least solve the problems of low rendering efficiency and high runtime memory consumption caused by managing the entire large-space scene as a unit in the related art.
[0007] In a first aspect, embodiments of this application provide a method for rendering large-space AR content, characterized in that it is applied to AR content rendering in a large space, the method comprising: In the preprocessing process, the large space is divided into multiple levels to obtain multiple levels of initial subspace units. With the optimization goal of improving spatial accuracy and minimizing the number of spaces, the initial subspace units are optimized based on the user's set experience area to obtain subspace units, and the subspace units are associated with their corresponding virtual resources. During the application execution process, state markers are added to the subspace units based on the user's real-time and predicted locations. These state markers include: current location, potentially reachable, and unreachable states. Based on the status markers, differentiated loading and caching strategies are configured for each subspace unit, and large-space AR content is rendered based on the loading and caching strategies and the virtual resources corresponding to each subspace unit.
[0008] In some embodiments, the large space is divided into multiple levels to obtain multiple levels of initial subspace units, including: The intelligent platform identifies and parses the CAD files corresponding to the large space to obtain the physical spatial hierarchy information of the large space. Based on the spatial hierarchy information, the large space is initially divided to form multiple levels of initial subspace units; During the initial segmentation process, the size of the initial subspace unit is dynamically adjusted according to the space occupied by the virtual assets within the initial subspace unit.
[0009] In some embodiments, the large space is divided into multiple levels to obtain multiple levels of initial subspace units, including: The KD-tree algorithm is used to initially divide the large space into multiple levels of initial subspace units, wherein each initial subspace unit is a multidimensional asymmetric space. Obtain the spatial overlapping scenes existing in the large space, and modify the area range of the initial subspace unit associated with the overlapping scenes according to the user's movement trajectory during the AR experience.
[0010] In some embodiments, during the process of segmenting a large space into multiple levels, the method further includes: The boundary extent of each initial subspace unit is marked using a collision box-based cube framework; After displaying the subspace units based on the marked boundary range, the initial subspace units are optimized according to the user's operation instructions.
[0011] In some embodiments, with the optimization goals of improving spatial accuracy and minimizing the number of spaces, the sub-space units are optimized in conjunction with the user's defined experience area, including: Acquire the user's set movement trajectory or passable area in the large space; Based on the set movement trajectory or the passable area, and the intersection with the initial subspace unit, the initial subspace unit is optimized and adjusted to obtain a subspace unit. The optimization and adjustment include: merging adjacent subspace units, deleting redundant subspace units, and adjusting the boundary range of the subspace unit. The optimized subspace units are associated with their corresponding virtual resources to form a hierarchical space set. The optimization objectives include: reducing virtual asset loading errors by improving spatial segmentation accuracy, and reducing runtime memory usage by reducing the total number of subspace units.
[0012] In some embodiments, the real-time location status is used to mark the subspace unit where the user is currently located, and the virtual resources within the current subspace unit are matched with a real-time loading strategy. The potential reachability state is used to mark subspace units that are predicted to be reachable within a preset future time period and that match the user's current movement direction and speed. The virtual resources within the subspace units that are predicted to be reachable within the preset future time period are matched with a preloading strategy. The "unreachable state" is used to mark subspace units that are outside the user's current mobility range. Virtual resources within subspace units that are outside the user's current mobility range are matched with a delayed unloading strategy. The dynamic update of the status marker is based on at least one of the following factors: the user's real-time location coordinates, the user's movement speed vector, the user's field of view direction, and the topological connection relationship between subspace units.
[0013] In some embodiments, configuring loading strategies for the subspace units based on the state flags includes: For the subspace unit in the current state, load all associated virtual resources into the runtime memory, maintain the high-precision rendering state of the virtual resources, and update the relative positional relationship between the virtual resources and the user's viewpoint in real time. For the subspace unit of the potential reachable state, the preloading priority is calculated based on the user's movement speed and direction, and according to the preloading priority, a portion of the virtual resources of the subspace unit is loaded into the cache space; For subspace units that are unreachable, the loaded virtual resources are marked as pending release, and the virtual resources are released according to memory pressure.
[0014] In some embodiments, rendering large-space AR content, based on the loading and caching strategy and the virtual resources corresponding to the subspace unit, includes: The virtual assets within the subspace unit are dynamically sorted based on their priority, and the virtual assets are loaded according to the priority of the dynamic sorting. The priority of the virtual assets is based on at least one of the following factors: user interaction weight, visual salience, and computing resource consumption.
[0015] Secondly, embodiments of this application provide a rendering system for large-space AR content, applied to AR content rendering in large spaces. The system includes: a preprocessing module and an execution module, wherein: The preprocessing module is used to divide a large space into multiple levels to obtain multiple levels of initial subspace units. With the optimization goal of improving spatial accuracy and minimizing the number of spaces, the module optimizes the initial subspace units based on the user's set experience area to obtain subspace units and establishes an association between the subspace units and their corresponding virtual resources. The execution module is used to add status markers to the subspace units based on the user's real-time and predicted locations. These status markers include: current location status, potentially reachable status, and unreachable status. Based on the status markers, differentiated loading and caching strategies are configured for each subspace unit, and large-space AR content is rendered based on the loading and caching strategies and the virtual resources corresponding to each subspace unit.
[0016] Thirdly, embodiments of this application provide a computer device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the method described in the first aspect above.
[0017] Fourthly, embodiments of this application provide a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the method described in the first aspect above.
[0018] Compared to related technologies, this application provides a method for rendering large-space AR content. It divides the large space into multi-level spatial units, adds status markers indicating the user's real-time and predicted locations (immediate location, potentially reachable, and inaccessible), and configures differentiated loading strategies for each unit before rendering the large space. This method, through hierarchical spatial management and dynamic loading strategies, achieves precise matching between virtual assets and the user's current and potentially reachable spaces. This significantly reduces redundant asset loading, minimizes terminal resource consumption, avoids screen tearing, and greatly improves the rendering efficiency and smoothness of large-space AR content, enhancing the immersive experience and interactive stability of virtual-real integration. Attached Figure Description
[0019] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments and are used to explain this application, but do not constitute an undue limitation of this application. In the drawings: Figure 1 This is a flowchart of a method for rendering large-space AR content according to an embodiment of this application; Figure 2 This is a schematic diagram of a spatial division result based on physical space according to an embodiment of this application; Figure 3 This is a schematic diagram of the optimized interval segmentation result according to an embodiment of this application; Figure 4 This is a schematic diagram of an optimized subspace unit according to an embodiment of this application; Figure 5 This is a structural block diagram of a large-space AR content rendering system according to an embodiment of this application; Figure 6 This is a schematic diagram of the internal structure of an electronic device according to an embodiment of this application. Detailed Implementation
[0020] To make the objectives, technical solutions, and advantages of this application clearer, the application is described and illustrated 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 scope of this application. All other embodiments obtained by those skilled in the art based on the embodiments provided in this application without inventive effort are within the scope of protection of this application.
[0021] Obviously, the accompanying drawings described below are merely some examples or embodiments of this application. Those skilled in the art can apply this application to other similar scenarios based on these drawings without any inventive effort. Furthermore, it is understood that although the efforts made in this development process may be complex and lengthy, for those skilled in the art related to the content disclosed in this application, any changes to design, manufacturing, or production based on the technical content disclosed in this application are merely conventional technical means and should not be construed as insufficient disclosure of the content of this application.
[0022] In this application, the reference to "embodiment" means that a specific feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of this application. The appearance of this phrase in various places in the specification does not necessarily refer to the same embodiment, nor is it a separate or alternative embodiment that is mutually exclusive with other embodiments. It will be explicitly and implicitly understood by those skilled in the art that the embodiments described in this application may be combined with other embodiments without conflict.
[0023] Unless otherwise defined, the technical or scientific terms used in this application shall have the ordinary meaning understood by one of ordinary skill in the art to which this application pertains. The terms “a,” “an,” “an,” “the,” and similar words used in this application do not indicate quantity limitation and may indicate singular or plural. The terms “comprising,” “including,” “having,” and any variations thereof used in this application are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or device that includes a series of steps or modules (units) is not limited to the listed steps or units, but may also include steps or units not listed, or may include other steps or units inherent to these processes, methods, products, or devices. The terms “connected,” “linked,” “coupled,” and similar words used in this application are not limited to physical or mechanical connections, but may include electrical connections, whether direct or indirect. “Multiple” used in this application refers to two or more. “And / or” describes the relationship between related objects, indicating that three relationships may exist; for example, “A and / or B” can represent: A alone, A and B simultaneously, and B alone. The character " / " generally indicates that the preceding and following objects are in an "or" relationship. The terms "first," "second," and "third" used in this application are merely to distinguish similar objects and do not represent a specific ordering of the objects.
[0024] This application provides a method for rendering large-space AR content. Figure 1 This is a flowchart of a method for rendering large-space AR content according to an embodiment of this application, such as... Figure 1 As shown, the process includes the following steps: S101, in the preprocessing process, the large space is divided into multiple levels to obtain multiple levels of initial subspace units. With the optimization goal of improving spatial accuracy and minimizing the number of spaces, the subspace units are optimized based on the user's set experience area to obtain subspace units, and the subspace units are associated with their corresponding virtual resources. In an exemplary embodiment, step S101 can provide a data foundation for the subsequent dynamic management of virtual assets through spatial segmentation and optimization. Its core logic is to combine the spatial segmentation capability of the KD tree algorithm with the actual needs of user experience scenarios to construct a multi-level subspace system that conforms to the spatial structure characteristics and adapts to the user interaction trajectory.
[0025] Specifically, this step first utilizes the multidimensional spatial segmentation characteristics of the KD-tree algorithm to decompose the large space (such as buildings, shopping malls, museums, etc.) that was originally a whole into initial sub-space units with hierarchical relationships (such as the hierarchy of "building-floor-public area-room"), thus realizing the structured decomposition of space; Based on this, and considering the actual scenarios such as spatial overlap and limited user trajectory in the AR experience, the initial subspace is adjusted in combination with the user-defined experience area (such as passable area and key interaction area) to form a subspace unit that adapts to the actual experience scenario. The goal is to "improve spatial accuracy" (ensure that the subspace can accurately match the user's visible range and interaction area) and "minimize the number of spaces" (reduce the complexity of resource management).
[0026] In step S101, the large space is first divided into multiple levels based on the KD-tree algorithm to obtain initial subspace units of multiple levels, including the following specific steps: S1. The large space is initially divided using the KD tree algorithm to form multiple levels of initial subspace units, where each initial subspace unit is a multidimensional asymmetric space. Among them, the KD tree algorithm is a tree-like data structure used for multidimensional spatial data partitioning. Its core is to recursively select coordinate axes (such as the x, y, and z axes in three-dimensional space) to divide the space and finally form multiple initial subspace units.
[0027] In large-space AR scenarios, the specific steps are as follows: Hierarchical settings: Based on the physical structure of the large space and the needs of AR experience, the hierarchical relationship of the subspaces is preset, such as "Building - Level - Area - Room". Each level corresponds to a different scale of space (e.g., "Building" is the largest level and "Room" is the smallest level). Multidimensional asymmetric segmentation: Unlike the symmetric segmentation of traditional KD trees, this step combines the actual structure of large spaces, such as irregular room layouts and irregularly shaped public areas, to perform asymmetric segmentation. That is, the shape and size of subspaces at the same level can be flexibly adjusted according to the physical space characteristics. For example, a long and narrow corridor and a square exhibition hall can be used as subspaces of different shapes at the same level. Initial subspace generation: Through recursive segmentation using the KD-tree algorithm, multiple initial subspace units with hierarchical relationships are ultimately formed. Each unit is a multi-dimensional (e.g., three-dimensional space) asymmetric structure, and the hierarchical relationship of the subspace units corresponds to the physical / logical structure of the large space (e.g., the spatial hierarchy of a building).
[0028] Figure 2 This is a schematic diagram of a spatial division result based on physical space according to an embodiment of this application, such as... Figure 2 As shown, the divided spaces are independent of each other and have no overlapping areas.
[0029] S2: Obtain the spatially overlapping scenes existing in the large space, and modify the area range of the sub-space units associated with the overlapping scenes based on the user's movement trajectory during the AR experience.
[0030] Considering the numerous spatially overlapping scenes in AR experiences (such as users seeing parts of adjacent rooms through doors and windows in a corridor), the traditional KD-tree segmentation of "independent non-overlapping subspaces" cannot cover such scenes. Therefore, in this embodiment, these overlapping scenes are first identified, specifically by determining the location of overlapping areas through scene mapping data or pre-annotated interactive areas. Furthermore, based on the user's movement trajectory during the AR experience, the subspace range associated with overlapping scenes is modified. The trajectory can be determined through pre-collected traversable paths, user-defined experience routes, etc.
[0031] Figure 3 This is a schematic diagram of the optimized interval segmentation result according to an embodiment of this application, as shown below. Figure 3 As shown, if a user can see part of the room (subspace S3) from the corridor (subspace S1), the range of S3 needs to be expanded to the overlapping area visible to the user in the corridor, forming a new subspace S3' (including the overlapping part of the original S3 and S1).
[0032] In another exemplary embodiment, the physical spatial hierarchy information inherent in computer-aided design (CAD) files can also be utilized, combined with the actual needs of user experience, to construct a multi-level subspace system that combines structural accuracy with user interaction adaptability.
[0033] Specifically, this step first involves automatically parsing the CAD files corresponding to large spaces (such as buildings, shopping malls, museums, etc.). By identifying and analyzing layer information, block definitions, and other structural data in the CAD files, the physical hierarchical relationships of the space are extracted, thereby performing a preliminary structural division of the space and forming sub-spatial units that can reflect the actual architectural layout, such as a hierarchical structure of "building → floor → public area → room".
[0034] Building upon this foundation, to address practical issues in augmented reality (AR) experiences such as spatial overlap and user path limitations, further optimization of the initial subspace is necessary. The optimization goals are set as "improving spatial accuracy" (ensuring precise matching between the subspace and the user's visible and interactive areas) and "reducing the number of spaces" (lowering resource management complexity). By integrating user-defined experience areas (such as navigable paths and key interactive areas), the initial subspace is adjusted to ultimately generate optimized subspace units that meet actual experience requirements.
[0035] In step S101, the large space is divided into multi-level sub-space units based on the CAD file, specifically including the following steps: S1: Use an intelligent platform to identify and parse CAD files of large spaces to obtain their physical spatial hierarchy information; First, structural elements are identified from the layers and entities in the CAD file. For example, outlines in the "WALLS" layer can be used to define the boundaries of rooms and corridors; block insertions in the "Furniture" or "Doors" layers can be used to identify the locations of specific objects and passageways. Text labels are often used to name rooms or areas (such as "Exhibition Hall A" or "Room 101"), and this information can be extracted to establish the logical hierarchy of the space and form the initial structure of the space.
[0036] S2, based on the extracted hierarchical relationships, generates initial subspace units. For example, the enclosed area defined by wall polylines in the "Floor1" layer can be used as a "floor" level subspace; each named room within that floor can be used as a "room" level subspace. This creates a set of multi-level initial subspaces that directly correspond to the physical layout defined in the CAD drawings.
[0037] Optionally, during the initial partitioning process, the size of the subspace can be dynamically adjusted based on the space occupied by the preset virtual assets within the initial subspace unit. If a large subspace (such as an open-plan office) is designated to accommodate a large number of virtual assets, it can be further subdivided to avoid a single subspace becoming a performance bottleneck during rendering. Furthermore, with the optimization goals of improving spatial accuracy and minimizing the number of spaces, optimizing the subspace unit in conjunction with the user's defined experience area includes: S1, obtain the user's set movement trajectory or passable area in a large space; First, obtaining the user's set movement trajectory or passable area is the core basis for optimization. The set trajectory can be not only a specific path, but also a passable area. These trajectories or areas directly reflect the actual reachable and visible space range of the user, providing a realistic reference for subspace adjustments.
[0038] S2, based on the intersection of the set movement trajectory or passable area with the subspace unit, optimize and adjust the subspace unit. The optimization and adjustment include: merging adjacent subspace units, deleting redundant subspace units, and adjusting the boundary range of the subspace unit. Specifically, if the user's trajectory is restricted by obstacles (such as support columns or central island platforms) (e.g., trajectory P1 cannot traverse a certain area), the range of the subspace associated with that area needs to be adjusted (e.g., shrinking or splitting the atomic space) to ensure that the subspace is consistent with the area that the user can actually reach and see. In this embodiment, the adjustment process must simultaneously satisfy "improving spatial accuracy" (the degree of matching between the subspace range and the user's actual visible / accessible area) and "minimizing the number of spaces" (avoiding the management complexity caused by excessive subspace splitting). For example, optimization can be achieved by merging adjacent and functionally similar subspaces and deleting redundant subspaces that cannot be covered by the user's trajectory.
[0039] Figure 4 This is a schematic diagram of an optimized subspace unit according to an embodiment of this application, such as... Figure 4 As shown, when there are inaccessible areas such as support pillars in the space, the user's trajectory (such as P1) will be restricted. In this case, the boundaries of the associated subspaces (such as S3') need to be adjusted to ensure that the subspace range is consistent with the user's actual reachable and visible area (to improve accuracy). For redundant subspaces that the trajectory cannot pass through to generate interaction, they can be directly deleted. Adjacent subspaces that are covered by the trajectory can be merged (to reduce the number) to avoid excessive subspace splitting or range deviation from the actual experience scenario.
[0040] S3 establishes a relationship between the optimized and adjusted subspace units and their corresponding virtual resources to form a hierarchical space set; For example, for a single hierarchical space, the relational expression for the set of virtual assets it contains is denoted as follows: the nth hierarchical space contains m virtual assets: .
[0041] In this embodiment, the optimization goal is to improve spatial accuracy and minimize the number of spaces. It can be understood that improving spatial accuracy can reduce virtual asset loading errors (only loading assets that the user may come into contact with within the subspace, avoiding loading irrelevant assets); reducing the number of subspaces can reduce runtime memory usage (fewer subspaces mean fewer asset sets need to be managed at the same time, reducing redundant loading), ultimately solving the problems of large memory usage and low performance in traditional solutions.
[0042] Additionally, it should be noted that in different 3D engines (such as Unity3D, Unreal Engine, etc.), a similar geometric form to a collision box can be used to present the segmented hierarchical space (such as buildings, floors, rooms, etc.) in a visually intuitive way.
[0043] Those skilled in the art will understand that this visualization allows developers to clearly see the boundaries of each space, including whether the spaces are independent and whether there is overlap (such as the overlapping areas formed by doors and windows in corridors and rooms), thus making it easier to edit and adjust the spaces. For example, the spatial boundaries can be optimized based on the user's movement trajectory to ensure the accurate association between virtual assets and corresponding spaces, thereby improving the operational efficiency during content development.
[0044] Step S101 above first initially divides the large space into multi-level, multi-dimensional, asymmetric initial subspaces, constructing a basic hierarchical structure. Then, combining spatial overlap scenarios and user movement trajectories, the range of the subspaces is adjusted to adapt to the actual visible and reachable areas. This step achieves precise matching of subspaces with user experience scenarios, improving spatial accuracy while minimizing the number of spaces. This lays the foundation for subsequent dynamic management of virtual resources for AR experiences based on user location, improving operational performance and development efficiency.
[0045] S102, in the application execution process, add status markers to the subspace units according to the user's real-time location and predicted location. The status markers include: current location status, potentially reachable status, and unreachable status. Among them, the current status is used to mark the subspace unit where the user is currently located. In this embodiment, the virtual resources in the current subspace unit are matched with the real-time loading strategy. Potentially reachable state: Used to mark subspace units that are predicted to be reachable within a preset future time period and match the user's current movement direction and speed. Virtual resources within the subspace units predicted to be reachable within the preset future time period are matched with a preloading strategy. Unreachable status: Used to mark subspace units that are beyond the user's current mobility range. Virtual resources within subspace units that are beyond the user's current mobility range are matched with a delayed unloading policy. The dynamic update of the status marker is based on at least one of the following factors: the user's real-time position coordinates, the user's movement velocity vector, the user's head control pose (view direction), and the topological connection relationship between subspace units.
[0046] It should be noted that head-controlled pose refers to the user's field of vision direction, which is a factor used to dynamically update the state labeling of subspace units. Specifically, based on the user's orientation (e.g., set to a visual distance of 10 meters), the subspace directly in front of the user can be preferentially labeled as "potentially reachable".
[0047] In this embodiment, the mechanism described above determines the area a user might enter based on the intersection of rays with space, thereby preloading virtual resources for that area. This solves the lag problem caused by improper resource management in traditional AR rendering, achieving precise resource management and improving rendering efficiency and user experience smoothness.
[0048] In this embodiment, step S102 uses the subspace units optimized in the preprocessing stage to achieve precise management of virtual resources by dynamically marking the subspace state, thus solving the problems of "large runtime memory usage and low loading efficiency" in traditional solutions.
[0049] This step is based on an actuator (which can be an SDK, Software Development Kit, or software development kit) running on the main AR application. This actuator captures the user's location and behavior data in real time, and, combined with the hierarchical relationship of subspace units, labels each subspace with three states: "currently present," "potentially reachable," and "unreachable." Differentiated resource loading strategies (real-time loading, preloading, and delayed unloading) are then matched to different states. Its core objective is to load resources only when necessary and release redundant resources promptly, thereby reducing memory usage, improving rendering smoothness, and ensuring a smooth, lag-free, and resource-load-free AR experience for users in large spaces.
[0050] Specifically, the current state is the layer of space that the AR experience user is "passing through" corresponding to the current state. Specifically, it can be a subspace unit directly covered by the user's current physical location or field of view.
[0051] In this state, virtual resources need to adopt a "real-time loading strategy," which means immediately loading and rendering all virtual assets within the subspace (such as virtual exhibits in a room and AR interactive elements on the wall) to ensure that the virtual and real content within the user's current field of view is presented without delay. This strategy solves the problem of "resource loading lag caused by overall packaging" in traditional solutions, ensuring a real-time interactive experience.
[0052] Potentially reachable states correspond to the hierarchical spaces that AR experience users "may pass through" in a short period of time. Specifically, they refer to the sub-space units that can be reached in a future preset time period (such as within 5 seconds) based on data such as the user's current movement direction and speed. For example, the next room ahead when the user moves to the end of the corridor.
[0053] In this embodiment, the virtual resources in this state adopt a "preloading strategy," loading resources in advance before the user arrives (such as preloading the virtual model of the next exhibition hall) to avoid loading wait when the user enters. The priority of preloading is determined by the user's movement trend (e.g., the faster the speed, the farther the preloading range) and the direction of view (e.g., the subspace being faced is loaded first), balancing resource loading efficiency and memory usage.
[0054] The "unreachable" state corresponds to a "cannot be passed through" level of space, which refers to a subspace unit that is beyond the user's mobility range (such as an area blocked by obstacles or an area completely opposite to the current trajectory direction).
[0055] In this embodiment, a "delayed unloading strategy" is adopted for virtual resources in this state. The resources are first hidden (to reduce rendering burden), and if it is confirmed that the user cannot reach the resource for a long time (e.g., more than 30 seconds), the resource is completely unloaded to release memory. This strategy avoids the problem of "invalid resources continuously occupying memory" in traditional solutions, further optimizing performance.
[0056] In addition, it should be noted that the state markers in this embodiment are dynamically updated based on multiple factors. Specifically, these factors include: real-time location coordinates are used to determine the subspace of the "instantaneous state"; the movement speed vector affects the prediction range of the "potentially reachable state"; the field of view direction prioritizes marking the subspace the user is facing as potentially reachable, thus improving the accuracy of preloading; furthermore, the subspace topology connection relationship is also included, such as the connectivity of adjacent subspaces, which may affect the reachability judgment, such as a closed door making the corresponding subspace inaccessible.
[0057] The above-mentioned multi-dimensional factors work together to ensure that the status markers are synchronized with the user's actual experience trajectory, thereby achieving dynamic and precise management of resources.
[0058] Through step S102 above, based on the user's real-time and predicted location, the subspace is marked with its current location, potentially reachable, and inaccessible states. Real-time loading, preloading, and delayed unloading strategies are then matched accordingly, and the states are dynamically updated based on the user's location and speed. This effectively reduces memory usage in subsequent execution stages, solves performance issues of traditional solutions, and improves the smoothness and stability of large-space AR experiences.
[0059] S103: Based on the status flags, configure differentiated loading and caching strategies for each subspace unit, and render large-space AR content according to the loading and caching strategies and the virtual resources corresponding to the subspace units.
[0060] Specifically, for a subspace unit in its current state, all associated virtual resources are loaded into the runtime memory, and the high-precision rendering state of the virtual resources is maintained. In addition, the relative positional relationship between the virtual resources and the user's viewpoint is updated in real time. Specifically, for the space "being passed through," priority should be given to ensuring the virtual-real fusion effect within the user's current field of vision. During execution, the strategy for this state is as follows: All virtual resources associated with the subspace are fully loaded into the runtime memory to ensure that the resources can be directly accessed; at the same time, the high-precision rendering state of the virtual resources (such as complete texture details and fine model structure) is maintained to avoid simplifying the presentation and affecting the experience; in addition, the relative positional relationship between the virtual resources and the user's perspective needs to be updated in real time to ensure that the virtual content can accurately fit the physical space as the user moves, turns and other actions, so as to achieve a natural virtual-real fusion effect.
[0061] Building upon this foundation, to further optimize the instantaneous response and smoothness of rendering, virtual assets within the subspace are dynamically sorted. This sorting is based on the preset priority of the virtual assets, determined by multiple factors, including user interaction weight, visual salience, and computational resource consumption. For example, a virtual button that a user can directly click and interact with (high interaction weight) will be given a higher priority than a static decorative model in the distance, thus being loaded and rendered first. Similarly, objects located in the center of the user's field of vision or with strong color contrast (high visual salience) will also be prioritized. Through this priority-based dynamic loading, it can be ensured that the most critical and eye-catching content is presented first when a user enters a new space, greatly enhancing the immediacy and immersion of the experience.
[0062] For subspace units with potentially reachable states, the preloading priority is calculated based on the user's movement speed and direction, and a portion of the virtual resources of the subspace are loaded into the cache space according to the preloading priority. Specifically, for subspaces that users may reach within a preset time period, it is necessary to balance resource preloading with system load. In this embodiment, the specific strategy is to calculate the preloading priority based on the user's movement speed and direction to avoid resource waste caused by indiscriminate loading; It's important to note that the core of this step lies not only in determining which subspaces to preload, but also in intelligently selecting which virtual assets within those subspaces to load. In this embodiment, virtual assets are dynamically sorted and selectively loaded based on their priority. The asset priority assessment criteria are also based on factors such as user interaction weight, visual salience, and computational resource consumption. For example, when a user is walking into an exhibition hall, the system will prioritize preloading virtual assets with high interaction weight and high visual salience, such as signs and core exhibits, into the cache. Meanwhile, some computationally intensive but non-core effects or background decorations may be assigned lower priority and not loaded temporarily or loaded in a lower-precision version. Through this refined strategy, only a portion of the core virtual resources within a subspace are loaded into the cache space according to priority. This not only reserves critical resources for areas the user might enter in advance, significantly reducing loading latency when entering the space later, but also avoids loading all resources of the entire subspace into the cache, thus making more efficient use of limited cache space and avoiding additional pressure on currently running memory.
[0063] For subspace units that are unreachable, the loaded virtual resources are marked as pending release, and the virtual resources are released based on memory pressure.
[0064] Specifically, for subspaces that users determine are inaccessible, this embodiment optimizes system performance by releasing redundant resources. The specific strategy is as follows: loaded virtual resources are marked as pending release, and their rendering is first hidden to reduce real-time drawing pressure; subsequently, based on the current memory pressure, these resources are gradually released to completely clear the memory space they occupy, avoiding problems such as lag and overheating caused by invalid resources occupying system resources for a long time.
[0065] The concept of priority can also be introduced during the release process. When system memory pressure increases, lower-priority virtual assets, such as background objects that are not visually prominent, have no interactivity, and consume a lot of resources, will be released first. This approach ensures that even when resources need to be released, cached high-priority assets that may need to be quickly reloaded due to sudden user switching will be preserved as much as possible. This avoids problems such as lag and overheating caused by invalid resources occupying system resources for a long time, achieving more intelligent and efficient memory management.
[0066] It can be understood that S103 is the stage from resource scheduling to final presentation of large-space AR content. Based on the state marking of sub-space units, it formulates and executes differentiated loading and caching strategies to ultimately achieve accurate rendering of virtual content. This step, by dynamically adjusting the loading range, storage location (RAM / cached space), and rendering precision of virtual resources, ensures smooth presentation of AR content that the user is currently experiencing and will soon encounter, while avoiding unnecessary resource consumption of system memory. This solves the performance bottleneck caused by "indiscriminate resource loading" in traditional solutions, achieving high efficiency and stability in large-space AR experiences.
[0067] Through steps S101 to S103 above, an optimization solution is proposed to address the problems of cumbersome development, large installation package size, high runtime memory consumption, and reduced performance caused by traditional large-space AR content development being based on the entire scene. The large space is divided into multi-level asymmetric subspaces, such as "building-floor-public area-room," and the space is optimized in conjunction with the user's AR experience movement trajectory. Space division and optimization are completed through an editor, and the executor marks the subspace state based on the user's real-time and predicted positions, implementing differentiated loading strategies (real-time loading, preloading, delayed unloading) for virtual assets. This solution, through refined space management and dynamic resource scheduling, solves the shortcomings of traditional solutions, improving the granularity and efficiency of development task decomposition, reducing runtime memory consumption, and enhancing the rendering performance and smoothness of large-space AR content.
[0068] This embodiment also provides a rendering system for large-space AR content, which is used to implement the above embodiments and preferred embodiments, and will not be repeated as described above. As used below, the terms "module," "unit," "subunit," etc., can refer to a combination of software and / or hardware that performs a predetermined function. Although the apparatus described in the following embodiments is preferably implemented in software, hardware implementation, or a combination of software and hardware, is also possible and contemplated.
[0069] Figure 5 This is a structural block diagram of a large-space AR content rendering system according to an embodiment of this application, such as... Figure 5 As shown, this system is used for AR content rendering in large spaces and includes: a preprocessing module 50 and an execution module 51, wherein: The preprocessing module 50 is used to divide the large space into multiple levels to obtain multiple levels of initial subspace units, and to optimize the initial subspace units based on the user's set experience area with the optimization goal of improving spatial accuracy and minimizing the number of spaces, so as to obtain subspace units. Execution module 51 is used to add status markers to subspace units based on the user's real-time and predicted locations. The status markers include: current location status, potentially reachable status, and unreachable status. Based on the status flags, differentiated loading and caching strategies are configured for each subspace unit, and large-space AR content is rendered according to the loading and caching strategies and the virtual resources corresponding to the subspace units.
[0070] This system addresses the problems of cumbersome development, large installation packages, high runtime memory consumption, and reduced performance caused by developing large-space AR content on a scene-by-scene basis. An optimization solution is proposed. The core technology involves dividing the large space into multi-level asymmetric subspaces of "building-floor-public area-room," optimizing the space based on the user's AR experience and movement trajectory, completing space division and optimization through an editor, and using an executor to mark the subspace state based on the user's real-time and predicted positions, while implementing differentiated loading strategies for virtual assets. This solution overcomes the shortcomings of traditional methods through refined space management and dynamic resource scheduling, improving the granularity and efficiency of development task decomposition, reducing runtime memory consumption, and enhancing the rendering performance and smoothness of large-space AR content.
[0071] In one embodiment, Figure 6 This is a schematic diagram of the internal structure of an electronic device according to an embodiment of this application, such as... Figure 6 As shown, an electronic device is provided, which can be a server, and its internal structure diagram can be as follows. Figure 6As shown, the electronic device includes a processor, a network interface, internal memory, and non-volatile memory connected via an internal bus. The non-volatile memory stores an operating system, computer programs, and a database. The processor provides computing and control capabilities, the network interface communicates with external terminals via a network connection, the internal memory provides an environment for the operation of the operating system and computer programs, the computer programs are executed by the processor to implement a method for rendering large-space AR content, and the database stores data.
[0072] Those skilled in the art will understand that Figure 6 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the electronic device to which the present application is applied. The specific electronic device may include more or fewer components than shown in the figure, or combine certain components, or have different component arrangements.
[0073] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. This computer program can be stored in a non-volatile computer-readable storage medium. When executed, the computer program can include the processes of the embodiments of the above methods. Any references to memory, storage, databases, or other media used in the embodiments provided in this application can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), dual data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), Rambus direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.
[0074] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0075] The above embodiments merely illustrate several implementation methods of this application, and while the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the invention patent. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this patent application should be determined by the appended claims.
Claims
1. A method for rendering large-space AR content, characterized in that, The method for rendering AR content in large spaces includes: In the preprocessing process, the large space is divided into multiple levels to obtain multiple levels of initial subspace units. With the optimization goal of improving spatial accuracy and minimizing the number of spaces, the initial subspace units are optimized based on the user's set experience area to obtain subspace units, and the subspace units are associated with their corresponding virtual resources. During the application execution process, state markers are added to the subspace units based on the user's real-time and predicted locations. These state markers include: current location, potentially reachable, and unreachable states. Based on the status markers, differentiated loading and caching strategies are configured for each subspace unit, and large-space AR content is rendered based on the loading and caching strategies and the virtual resources corresponding to each subspace unit.
2. The method according to claim 1, characterized in that, Dividing a large space into multiple levels yields multiple levels of initial subspace units, including: The intelligent platform identifies and parses the CAD files corresponding to the large space to obtain the physical spatial hierarchy information of the large space. Based on the spatial hierarchy information, the large space is initially divided to form multiple levels of initial subspace units; During the initial segmentation process, the size of the initial subspace unit is dynamically adjusted according to the space occupied by the virtual assets within the initial subspace unit.
3. The method according to claim 1, characterized in that, The KD-tree algorithm is used to partition the large space into multiple levels, resulting in initial subspace units at multiple levels, including: Obtain the spatial overlapping scenes existing in the large space, and modify the area range of the initial subspace unit associated with the overlapping scenes according to the user's movement trajectory during the AR experience.
4. The method according to any one of claims 2 and 3, characterized in that, With the optimization goals of improving spatial accuracy and minimizing the number of spaces, the initial subspace unit is optimized in conjunction with the user's defined experience area, including: Acquire the user's set movement trajectory or passable area in the large space; Based on the set movement trajectory or the passable area, and the intersection with the initial subspace unit, the initial subspace unit is optimized and adjusted to obtain a subspace unit. The optimization and adjustment include: merging adjacent subspace units, deleting redundant subspace units, and adjusting the boundary range of the subspace unit. The optimized subspace units are associated with their corresponding virtual resources to form a hierarchical space set. The optimization objectives include: reducing virtual asset loading errors by improving spatial segmentation accuracy, and reducing runtime memory usage by reducing the total number of subspace units.
5. The method according to claim 3, characterized in that, In the process of dividing a large space into multiple levels, the method further includes: The boundary extent of each initial subspace unit is marked using a collision box-based cube framework; After the initial subspace units based on the marked boundary range are displayed, the initial subspace units are optimized according to the user's operation instructions.
6. The method according to claim 1, characterized in that, The real-time location status is used to mark the user's current subspace unit, and the virtual resources within the current subspace unit are matched with a real-time loading strategy. The potential reachability state is used to mark subspace units that are predicted to be reachable within a preset future time period and that match the user's current movement direction and speed. The virtual resources within the subspace units that are predicted to be reachable within the preset future time period are matched with a preloading strategy. The "unreachable state" is used to mark subspace units that are outside the user's current mobility range. Virtual resources within subspace units that are outside the user's current mobility range are matched with a delayed unloading strategy. The dynamic update of the status marker is based on at least one of the following factors: the user's real-time location coordinates, the user's movement speed vector, the user's field of view direction, and the topological connection relationship between subspace units.
7. The method according to claim 6, characterized in that, Based on the state flags, configuring loading strategies for the subspace units includes: For the subspace unit in the current state, load all associated virtual resources into the runtime memory, maintain the high-precision rendering state of the virtual resources, and update the relative positional relationship between the virtual resources and the user's viewpoint in real time. For the subspace unit of the potential reachable state, the preloading priority is calculated based on the user's movement speed and direction, and according to the preloading priority, a portion of the virtual resources of the subspace unit is loaded into the cache space; For subspace units that are unreachable, the loaded virtual resources are marked as pending release, and the virtual resources are released according to memory pressure.
8. The method according to any one of claims 1, 6, and 7, characterized in that, Rendering large-space AR content, based on the loading and caching strategy and the virtual resources corresponding to the subspace unit, includes: The virtual assets within the subspace unit are dynamically sorted based on their priority, and the virtual assets are loaded according to the priority of the dynamic sorting. The priority of the virtual assets is based on at least one of the following factors: user interaction weight, visual salience, and computing resource consumption.
9. A rendering system for large-space AR content, characterized in that, For AR content rendering in large spaces, the system includes: a preprocessing module and an execution module, wherein: The preprocessing module divides the large space into multiple levels to obtain multiple levels of initial subspace units. With the optimization goals of improving spatial accuracy and minimizing the number of spaces, the module optimizes the initial subspace units based on the user's set experience area to obtain subspace units and establishes an association between the subspace units and their corresponding virtual resources. The execution module is used to add status markers to the subspace units based on the user's real-time and predicted locations. These status markers include: current location status, potentially reachable status, and unreachable status. Based on the status markers, differentiated loading and caching strategies are configured for each subspace unit, and large-space AR content is rendered based on the loading and caching strategies and the virtual resources corresponding to each subspace unit.
10. A computer device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the method as described in any one of claims 1 to 8.
Citation Information
Patent Citations
3D sand table real-time visual angle tracking system
CN117827012A
Object rendering method and device and storage medium
CN118052923A
Virtual scene control method and system based on MR large space
CN118708085A
Page progressive rendering method and system based on streaming data
CN120687692A
Dynamic resource constraint based selective image rendering
US20240386632A1