Information processing system, information processing method, and program
The information processing system optimizes asset acquisition by controlling simultaneous and parallel downloads based on network structure metadata, addressing inefficient asset acquisition times in applications like live service games, thereby enhancing user experience.
Patent Information
- Application Number
- PCT/JP2025/005810
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-03-28
- Filing Date
- 2025-02-20
- Publication Date
- 2025-10-02
AI Technical Summary
The increasing richness of assets in applications, such as live service games and Location-Based Entertainment, leads to longer acquisition and update times, degrading the user experience due to inefficient asset acquisition processes.
An information processing system that controls the simultaneous and parallel acquisition of assets based on acquisition targets and priorities set using metadata expressing network structures, initiating application execution upon completion of high-priority asset acquisition.
Enhances asset acquisition efficiency, reducing the time required to start applications and improving user experience by prioritizing and managing asset downloads.
Smart Images

Figure JP2025005810_02102025_PF_FP_ABST
Abstract
Description
Information processing system, information processing method, and program
[0001] The present disclosure relates to an information processing system, an information processing method, and a program.
[0002] In recent years, the amount of time required to acquire and update assets has increased due to the increasing richness of assets used to execute applications, which has become a factor in degrading the user experience. As a technology for avoiding such degradation of the user experience, for example, the technology described in Patent Document 1 can be given.
[0003] Patent No. 7157099
[0004] However, with the technology described in Patent Document 1, it is difficult to efficiently acquire assets in parallel.
[0005] According to one aspect of the present disclosure, there is provided an information processing system including an acquisition control unit that controls the acquisition of assets used to execute an application, wherein the acquisition control unit controls the concurrent acquisition of the assets based on acquisition targets and acquisition priorities that are set based on metadata that expresses the relationships between the assets using a network structure, and when acquisition of the assets that have been set with a high acquisition priority has been completed, the acquisition control unit instructs the start of execution of the application.
[0006] According to another aspect of the present disclosure, there is provided an information processing method including a processor controlling acquisition of assets used to execute an application, wherein controlling the acquisition of the assets further includes controlling simultaneous and parallel acquisition of the assets based on acquisition targets and acquisition priorities set based on metadata that expresses relationships between the assets using a network structure, and instructing the application to start execution when acquisition of the assets set with a high acquisition priority has been completed.
[0007] According to another aspect of the present disclosure, there is provided a program that causes a computer to function as an information processing device, comprising an acquisition control unit that controls the acquisition of assets used to execute an application, the acquisition control unit controlling the simultaneous and parallel acquisition of the assets based on acquisition targets and acquisition priorities that are set based on metadata that expresses the relationships between the assets using a network structure, and instructing the start of execution of the application when acquisition of the assets that have been set with a high acquisition priority has been completed.
[0008] FIG. 1 is a block diagram showing an example of a configuration of an information processing system 1 common to each embodiment of the present disclosure. FIG. 1 is a block diagram showing an example of a functional configuration of a server 10A according to a first embodiment of the present disclosure. FIG. 2 is a block diagram showing an example of a functional configuration of a client 20A according to the same embodiment. FIG. 3 is a diagram for describing an example of determination of an acquisition target and determination of acquisition priority according to an embodiment of the present disclosure. FIG. 4 is a sequence diagram showing an example of an operation flow of the information processing system 1 according to the first embodiment of the present disclosure. FIG. 5 is a diagram for describing a data format used for transmitting and receiving game data 310 and metadata 320 according to an embodiment of the present disclosure. FIG. 6 is a block diagram showing an example of a functional configuration of a server 10B according to a second embodiment of the present disclosure. FIG. 7 is a block diagram showing an example of a functional configuration of a client 20B according to the same embodiment. FIG. 8 is a sequence diagram showing an example of an operation flow of the information processing system 1 according to the same embodiment. FIG. 9 is a block diagram showing an example of a functional configuration of a server 10C according to a third embodiment of the present disclosure. FIG. 10 is a block diagram showing an example of a functional configuration of a client 20C according to the same embodiment. FIG. 11 is a block diagram showing an example of an operation flow of the information processing system 1 according to the same embodiment. FIG. 12 is a block diagram showing an example of a hardware configuration of an information processing device 90 according to an embodiment of the present disclosure.
[0009] Preferred embodiments of the present disclosure will be described in detail below with reference to the accompanying drawings. In this specification and drawings, components having substantially the same functional configurations are designated by the same reference numerals, and redundant description will be omitted.
[0010] In addition, in this specification and drawings, when multiple identical components are to be described separately, letters or the like may be added to the end of the reference numerals. On the other hand, when it is not necessary to distinguish between multiple identical components, the letters or the like may be omitted and a description common to all of the multiple identical components may be given.
[0011] The description will be given in the following order: 0. System Configuration Example 1. First Embodiment 1.1. Functional Configuration Example of Server 10A 1.2. Functional Configuration Example of Client 20A 1.3. Operational Flow 2. Second Embodiment 2.1. Functional Configuration Example of Server 10B 2.2. Functional Configuration Example of Client 20B 2.3. Operational Flow 3. Third Embodiment 3.1. Functional Configuration Example of Server 10C 3.2. Functional Configuration Example of Client 20C 3.3. Operational Flow 4. Modified Example 5. Hardware Configuration Example 6. Summary
[0012] <0. System Configuration Example> In recent years, as shown by the trend of live service games, for example, there is a demand for frequent updates of game content to continually provide users with new experiences.
[0013] Furthermore, for example, in Location-Based Entertainment (LBE), there is a demand for providing a new experience to a user who visits a certain location by delivering content appropriate to that location.
[0014] Applications such as live service games and LBEs are often implemented based on various game engines. However, in recent years, as assets have become richer, the size of application packages has tended to increase.
[0015] Furthermore, the above also increases the time required to acquire (download) and update application packages, which in turn increases the time required to start an application, resulting in a poor user experience.
[0016] The technical concept of one embodiment of the present disclosure was conceived with the above points in mind, and makes it possible to more efficiently obtain assets used to run an application and further reduce the time required to start the application.
[0017] For this reason, one feature of an information processing method according to one embodiment of the present disclosure is that a processor controls the simultaneous and parallel acquisition of assets based on acquisition targets and acquisition priorities set based on metadata that expresses the relationships between assets using a network structure, and when acquisition of an asset with a high acquisition priority is completed, instructs the start of execution of an application.
[0018] FIG. 1 is a block diagram showing an example of the configuration of an information processing system 1 that executes the above-described information processing method and is common to each embodiment of the present disclosure.
[0019] As shown in FIG. 1 , an information processing system 1 according to each embodiment of the present disclosure includes a server 10 and a client 20 .
[0020] The information processing system 1 according to each embodiment of the present disclosure may include a plurality of clients 20.
[0021] The clients 20 of the server 10 are communicatively connected via a network 50 .
[0022] (Server 10) The server 10 according to each embodiment of the present disclosure is an information processing device that stores assets used to execute an application and distributes the assets based on a request from the client 20, for example.
[0023] (Client 20) The client 20 according to each embodiment of the present disclosure is an information processing device that acquires (downloads) assets from the server 10 and executes applications that use the assets.
[0024] In the following, a case where the application executed by the client 20 according to each embodiment of the present disclosure is a game application will be mainly described as an example.
[0025] In this case, the client 20 according to each embodiment of the present disclosure may be a stationary or portable game console, a personal computer (PC), a smartphone, a head mounted display (HMD), a glasses-type device, or the like.
[0026] (Network 50) The network 50 is a communication path between the server 10 and the client 20. The network 50 may take any form, such as the Internet or a public line network.
[0027] The configuration example of the information processing system 1 common to the embodiments of the present disclosure has been described above. Hereinafter, the first to third embodiments of the present disclosure will be described in detail.
[0028] In the following description, the information processing system 1 according to the first embodiment includes a server 10A (see FIG. 2) and a client 20A (see FIG. 3). The information processing system 1 according to the second embodiment includes a server 10B (see FIG. 7) and a client 20B (see FIG. 8). The information processing system 1 according to the third embodiment includes a server 10C (see FIG. 10) and a client 20C (see FIG. 11).
[0029] However, when there is no need to distinguish between the server 10A according to the first embodiment, the server 10B according to the second embodiment, and the server 10C according to the third embodiment, the servers 10A, 10B, and 10C may be collectively referred to simply as server 10, and an explanation common to the servers 10A, 10B, and 10C may be provided.
[0030] Similarly, when there is no need to distinguish between client 20A according to the first embodiment, client 20B according to the second embodiment, and client 20C according to the third embodiment, client 20A, client 20B, and client 20C may be collectively referred to simply as client 20, and a description common to client 20A, client 20B, and client 20C may be provided.
[0031] 1. First Embodiment <<1.1. Functional Configuration Example of Server 10A>> First, a functional configuration example of the server 10A according to the first embodiment will be described. Fig. 2 is a block diagram showing a functional configuration example of the server 10A according to the first embodiment of the present disclosure.
[0032] As shown in FIG. 2, the server 10A according to the first embodiment includes a control unit 110 and a storage unit 120.
[0033] (Control Unit 110) The control unit 110 controls each component included in the server 10. The functions of the control unit 110 are realized by cooperation between various processors, such as a central processing unit (CPU) and a graphics processing unit (GPU), and memories.
[0034] As shown in FIG. 2, the control unit 110 of the server 10A includes a distribution unit 111.
[0035] (Distribution Unit 111) The distribution unit 111 controls the distribution (transmission) of the game data 310 and the metadata 320 to the client 20 based on a request from the client 20, for example.
[0036] One of the features of the distribution unit 111 is that it is configured so that the clients 20 can download the game data 310 simultaneously and in parallel.
[0037] Another feature of the distribution unit 111 is that it changes the game data 310 to be preferentially transmitted based on the acquisition priority, which will be described later.
[0038] The distribution unit 111 may be implemented based on a protocol such as Hypertext Transfer Protocol 3 (HTTP / 3), for example.
[0039] (Storage Unit 120) The storage unit 120 stores various types of information used in the information processing system 1.
[0040] The storage unit 120 stores, for example, game data 310 and metadata 320 .
[0041] (Game Data 310) The game data 310 includes various assets used in the execution of the game application.
[0042] The assets also include, for example, data related to a map that constitutes game space information 330 (see FIG. 3) used for rendering a game application, and data, binaries, etc. related to objects (3D objects, 2D objects, etc.) to be placed on the map.
[0043] (Metadata 320) The metadata 320 is data that expresses the relationships between assets using a network structure.
[0044] More specifically, the metadata 320 expresses the relationships between the maps in the form of a network structure.
[0045] The metadata 320 also expresses the relationship between the map and the objects placed on the map in the form of a network structure.
[0046] The metadata 320 may also include information such as the storage location, rendering position, size, version, and variations of each asset.
[0047] The metadata 320 may express the relationships between assets in a network structure using a format such as JavaScript (registered trademark) Object Notation (JSON) or Extensible Markup Language (XML).
[0048] The metadata 320 will be described in detail later.
[0049] The above has described an example of the functional configuration of the server 10A according to the first embodiment. Note that the functional configuration described above using Fig. 2 is merely an example, and the functional configuration of the server 10A according to the first embodiment is not limited to this example.
[0050] For example, the server 10A may further include an input unit that accepts operation inputs from the user, a display unit that displays various types of information, and the like.
[0051] The functional configuration of the server 10A according to the first embodiment can be flexibly modified according to specifications, operations, and the like.
[0052] <<1.2. Example of Functional Configuration of Client 20A>> Next, a description will be given of an example of the functional configuration of the client 20A according to the first embodiment. Fig. 3 is a block diagram showing an example of the functional configuration of the client 20A according to the first embodiment.
[0053] As shown in FIG. 3, the client 20A according to the first embodiment includes a display unit 210, an input unit 220, a control unit 230, and a storage unit 240.
[0054] (Display Unit 210) The display unit 210 displays various types of information under the control of the control unit 230. To this end, the display unit 210 includes various displays.
[0055] (Input Unit 220) The input unit 220 accepts input operations by a user who uses an application. To this end, the input unit 220 includes various input devices such as a keyboard, a mouse, and a controller.
[0056] The input unit 220 may also receive operations based on user speech. In this case, the input unit 220 includes a microphone for picking up the user's speech, a recognizer for recognizing the content of the speech, and the like.
[0057] (Control Unit 230) The control unit 230 controls each component included in the client 20. The functions of the control unit 230 are realized by cooperation between various processors such as a CPU and a GPU and a memory.
[0058] As shown in FIG. 3, the control unit 230 of the client 20A includes a rendering unit 231, a logic unit 232, and an acquisition control unit 233.
[0059] (Rendering Unit 231) The rendering unit 231 converts the game space information 330 output from the logic unit 232 into data that can be displayed by the display unit 210, that is, performs so-called rendering.
[0060] (Logic Unit 232 ) The logic unit 232 updates the game space information 330 based on information (operation information) related to the input operation received by the input unit 220 .
[0061] In addition, the logic unit 232 outputs the updated game space information 330 and a signal requesting rendering to the rendering unit 231 .
[0062] The rendering unit 231 and the logic unit 232 may be implemented using a game engine that is widely used in the game industry.
[0063] (Acquisition Control Unit 233) The acquisition control unit 233 controls the acquisition of assets used to execute an application and the acquisition of metadata 320.
[0064] One of the features of the acquisition control unit 233 is that it controls the simultaneous and parallel downloading of assets from the server 10 by the client 20 .
[0065] If the application is a game application, the assets are included in the game data 310. Therefore, if the application is a game application, the acquisition control unit 233 may control the acquisition of the game data 310 from the server 10.
[0066] More specifically, the acquisition control unit 233 controls the simultaneous and parallel acquisition of game data 310 based on the acquisition target and acquisition priority set based on metadata 320, which expresses the relationships between assets using a network structure, and has one of its features that when acquisition of game data 310 set with a high acquisition priority is completed, it instructs the logic unit 232 to start executing the game application.
[0067] As shown in FIG. 3 , the acquisition control unit 233 includes an acquisition target determination unit 234 , an acquisition priority determination unit 235 , and an acquisition unit 236 .
[0068] (Acquisition Target Determining Unit 234 ) The acquisition target determining unit 234 determines the game data 310 to be acquired from the server 10 (acquisition target) based on the metadata 320 and the game space information 330 .
[0069] (Acquisition Priority Determination Unit 235 ) The acquisition priority determination unit 235 determines the priority of the game data 310 to be acquired from the server 10 based on the metadata 320 and the game space information 330 .
[0070] An example of determining the acquisition target and the acquisition priority will now be described with reference to Fig. 4. Fig. 4 is a diagram showing an example of the metadata 320.
[0071] In the metadata 320 illustrated in FIG. 4, the relationship between "Map A" and "Map B" is expressed by a network structure.
[0072] "Maps" that are directly connected, such as "Map A" and "Map B," may be adjacent "Maps" or "Maps" that are transition destinations of each other.
[0073] 4, "Map A" is directly connected to "Object A" and "Object B." Similarly, "Map B" is directly connected to "Object C" and "Object D." In this way, an "Object" directly connected to a "Map" may be an "Object" placed in the "Map."
[0074] 4, "Object B" is directly connected to "Texture A (Ver. 1.00)" and "Texture A (Ver. 1.02)." In this way, a "Texture" directly connected to an "Object" may be a "Texture" used to draw the "Object."
[0075] The acquisition target determination unit 234 may select game data 310 relating to all assets that are dependent on the "Map," which sets the viewpoint at the start of execution of the game application based on metadata 320 such as that illustrated in FIG. 4, as the acquisition target.
[0076] Furthermore, the acquisition priority determination unit 235 may set a high acquisition priority for game data 310 required to start execution of a game application based on metadata 320 such as that illustrated in FIG.
[0077] For example, if "Map A," "Object A," and "Object B" are required to start executing a game application, the acquisition priority determination unit 235 may set a high acquisition priority for the game data 310 related to "Map A," "Object A," "Object B," and "Texture A."
[0078] In addition, if multiple versions of the same asset exist, such as "Texture A (Ver. 1.00)" and "Texture A (Ver. 1.02)," the acquisition target determination unit 234 may select the game data 310 relating to the newer version of the asset as the acquisition target.
[0079] Furthermore, for example, the acquisition priority determination unit 235 may set the acquisition priority of the game data 310 based on the relationship between the viewpoint (e.g., the point serving as the reference for rendering, such as the position of the avatar) and the asset at the time when execution of the game application starts.
[0080] For example, if the viewpoint at the start of execution of a game application is set on "Map A," the acquisition priority determination unit 235 sets the acquisition priority of at least the game data 310 relating to "Map A" to be high.
[0081] Furthermore, for example, the acquisition priority determination unit 235 may set a higher acquisition priority for an asset that is closer to the viewpoint.
[0082] For example, if the distance between the viewpoint set in "Map A" and "Object A" is within a threshold, and the distance between the viewpoint and "Object B" exceeds the threshold, the acquisition priority determination unit 235 may set the acquisition priority of the game data 310 relating to "Map A" and "Object B" to be high.
[0083] The threshold value may be set based on, for example, the likelihood that rendering of assets will be required within a predetermined time after execution of a game application begins.
[0084] For example, even if "Object B" is located on "Map A," where the viewpoint is set when the execution of the game application starts, the viewpoint and "Object B" are sufficiently far apart that it is estimated that there is a low possibility that "Object B" will need to be rendered within a predetermined time after the execution of the game application starts. In this case, the threshold may be set so that the distance between the viewpoint and "Object B" exceeds the threshold.
[0085] By determining the acquisition priority as described above, the time required to start execution of a game application can be reduced by prioritizing the acquisition of the necessary and sufficient game data 310 required to start execution of the game application.
[0086] 4, "Object D" is directly connected to "Object D1 (Low Quality)" and "Object D2 (High Quality)." Each of "Object D1 (Low Quality)" and "Object D2 (High Quality)" may be one of the variations of "Object D." How to determine the object to be acquired when there are multiple variations like this will be described in the third embodiment.
[0087] (Acquisition Unit 236 ) The acquisition unit 236 controls acquisition of the game data 310 from the server 10 based on the acquisition target determined by the acquisition target determination unit 234 and the acquisition priority set by the acquisition priority determination unit 235 .
[0088] The acquisition unit 236 controls the simultaneous parallel acquisition of multiple pieces of game data 310 and may dynamically change the priority order of the game data 310 to be downloaded based on the acquisition priorities set by the acquisition priority determination unit 235.
[0089] Furthermore, when the acquisition unit 236 has completed acquisition of the game data 310 that has been set to a high acquisition priority, it instructs the logic unit 232 to start executing the game application.
[0090] The acquisition unit 236 is implemented based on the same protocol as the distribution unit 111 .
[0091] The acquisition unit 236 also controls the acquisition of the metadata 320 from the server 10 .
[0092] The acquisition unit 236 stores the acquired game data 310 and metadata 320 in the storage unit 240 .
[0093] (Storage Unit 240) The storage unit 240 stores various types of information used in the information processing system 1.
[0094] The storage unit 240 stores, for example, the game data 310 and the metadata 320 acquired from the server 10 under the control of the acquisition control unit 233 .
[0095] The above has described an example of the functional configuration of the client 20A according to the first embodiment. Note that the functional configuration described above using Fig. 3 is merely an example, and the functional configuration of the client 20A according to the first embodiment is not limited to this example.
[0096] For example, the client 20A may further include a sound output unit that outputs various sounds including voice.
[0097] The functional configuration of the client 20A according to the first embodiment can be flexibly modified according to specifications, operations, and the like.
[0098] <<1.3. Operational Flow>> Next, an example of the operational flow of the information processing system 1 according to the first embodiment will be described.
[0099] FIG. 5 is a sequence diagram showing an example of the flow of operations of the information processing system 1 according to the first embodiment.
[0100] In the example shown in FIG. 5, first, the acquisition control unit 233 of the client 20A requests the metadata 320 from the server 10A (S101).
[0101] The distribution unit 111 of the server 10A distributes (transmits) the metadata 320 to the client 20A based on the request received in step S101 (S102).
[0102] The acquisition control unit 233 of the client 20A determines the acquisition target and acquisition priority based on the metadata 320 received in step S102 (S103).
[0103] Next, the acquisition control unit 233 of the client 20A requests the game data 310 from the server 10A based on the acquisition target and acquisition priority determined in step S103 (S104).
[0104] The distribution unit 111 of the server 10A distributes (transmits) the game data 310 to the client 20A based on the request received in step S104.
[0105] In the example shown in Figure 5, the distribution unit 111 transmits game data 310 with a high acquisition priority (acquisition priority: high) in step S105, and transmits game data 310 with a low acquisition priority (acquisition priority: low) in steps S106A and S106B.
[0106] The acquisition control unit 233 of the client 20A downloads, with priority, the game data 310 set to a high acquisition priority (acquisition priority: high) from among the game data 310 transmitted from the server 10A (S105).
[0107] Furthermore, when the download of the game data 310 with a high acquisition priority (acquisition priority: high) is completed (S107), the acquisition control unit 233 instructs the logic unit 232 to start executing the game application using the game data 310 (S108).
[0108] Thereafter, the acquisition control unit 233 downloads the game data 310 for which the acquisition priority is set low (acquisition priority: low) (S106A and S106B).
[0109] An example of the flow of operations of the information processing system 1 according to the first embodiment has been described above.
[0110] Next, with reference to FIG. 6, a data format used for transmitting and receiving the game data 310 and the metadata 320 between the server 10 and the client 20 will be described.
[0111] The game data 310 and the metadata 320 are transmitted and received, for example, over an Internet Protocol (IP) network.
[0112] FIG. 6 shows an example of a data format when the game data 310 and the metadata 320 are transmitted and received via HTTP / 3.
[0113] As shown in FIG. 6, game data 310 and metadata 320 may be stored separately or together in the payload.
[0114] The acquisition priority may also be set in, for example, the Priority field of the HTTP / 3 header, the Type Of Service (TOS) field of the IP header, or the like.
[0115] In the case of the Priority field of the HTTP / 3 header, the acquisition priority can be specified in seven stages from -1 to 6.
[0116] For example, in step S104 of Figure 5, the acquisition control unit 233 of the client 20 may specify the acquisition priority in the Priority field and send an HTTP / 3 request stream in which the identifier of the game data 310 to be acquired is stored in the payload.
[0117] In this case, the distribution unit 111 of the server 10 preferentially transmits the game data 310 with a high acquisition priority specified in the Priority field. The distribution unit 111 may transmit game data 310 with the same acquisition priority at approximately the same frequency using a round robin method.
[0118] The acquisition priority can be dynamically changed using a PRIORITY_UPDATE frame or the like.
[0119] The acquisition control unit 233 can dynamically change the acquisition priority by notifying the server 10 of a PRIORITY_UPDATE frame. Similarly, the distribution unit 111 can dynamically change the game data 310 to be preferentially transmitted, based on the acquisition priority notified in the PRIORITY_UPDATE frame.
[0120] The first embodiment of the present disclosure has been described above.
[0121] According to the information processing system 1 according to the first embodiment of the present disclosure, it is possible to determine the acquisition target and the acquisition priority on the client side.
[0122] Furthermore, according to the information processing system 1 according to the first embodiment of the present disclosure, it is possible to dynamically change the acquisition priority in accordance with the progress of the game application, etc.
[0123] This also makes it possible to obtain assets more efficiently and shorten the time required to start an application.
[0124] <2. Second embodiment> <<2.1. Functional configuration example of server 10B>> Next, a second embodiment of the present disclosure will be described. Note that, hereinafter, differences from the first embodiment will be mainly described, and detailed description of configurations, functions, effects, etc. common to the first embodiment will be omitted.
[0125] In the second embodiment of the present disclosure, an application in which an application space is shared by multiple people, such as a massively multiplayer online role-playing game (MMOROG), is assumed.
[0126] In applications like the ones mentioned above, it is common for the game engine to be distributed between the server and the client. In this case, signals (synchronization signals) are sent and received between the server and the client to synchronize spatial information, but delays in the sending and receiving of synchronization signals can degrade the user experience.
[0127] Furthermore, if no control is performed, communication for transmitting and receiving the synchronization signal is likely to conflict with communication for transmitting and receiving the game data 310 .
[0128] The technical concept of the second embodiment of the present disclosure was conceived with the above points in mind, and aims to avoid a degradation of the user experience by prioritizing the transmission and reception of synchronization signals over the transmission and reception of game data 310.
[0129] First, a description will be given of an example of the functional configuration of the server 10B according to the second embodiment. Fig. 7 is a block diagram showing an example of the functional configuration of the server 10B according to the second embodiment of the present disclosure.
[0130] The server 10B according to the second embodiment differs from the server 10A according to the first embodiment mainly in that the control unit 110 further includes a logic unit 112.
[0131] The logic unit 112 synchronizes the game space information 330 with the logic unit 232 (see FIG. 8) of one or more clients 20B, and updates the game space information 330.
[0132] When the logic unit 112 updates the game space information 330, it notifies the distribution unit 111 to that effect.
[0133] The logic unit 112 of the server 10B is an example of a second logic unit.
[0134] When the distribution unit 111 receives a notification from the logic unit 112 that the game space information 330 has been updated, it controls the transmission of a synchronization signal used to synchronize the game space information 330 held by the logic unit 112 with the game space information 330 held by the logic unit 232 of the client 20B.
[0135] The distribution unit 111 also controls the acquisition of a synchronization signal from the client 20B.
[0136] One of the features of the distribution unit 111 is that it sets the acquisition priority of the synchronization signal to the highest, which makes it possible to avoid degradation of the user experience due to delays in sending and receiving the synchronization signal.
[0137] The storage unit 120 may have substantially the same configuration as that in the first embodiment, and therefore a detailed description thereof will be omitted.
[0138] <<2.2. Functional Configuration Example of Client 20B>> Next, a description will be given of a functional configuration example of the client 20B according to the second embodiment. Fig. 8 is a block diagram showing a functional configuration example of the client 20B according to the second embodiment of the present disclosure.
[0139] As shown in FIG. 8, the functional configuration of the client 20B according to the second embodiment may be equivalent to the functional configuration of the client 20B according to the first embodiment, but differs from the first embodiment in the following respects.
[0140] When the logic unit 232 of the client 20B updates the game space information 330 based on the operation information, the logic unit 232 notifies the acquisition control unit 233 to that effect.
[0141] Furthermore, the logic unit 232 of the client 20B updates the game space information 330 based on the synchronization signal acquired via the acquisition unit 236 .
[0142] The logic unit 232 of the client 20B is an example of a first logic unit.
[0143] When the acquisition control unit 233 receives a notification from the logic unit 232 that the game space information 330 has been updated, it controls the transmission of a synchronization signal used to synchronize the game space information 330 held by the logic unit 112 of the server 10B with the game space information 330 held by the logic unit 232 of the client 20B.
[0144] The acquisition control unit 233 also controls the acquisition of a synchronization signal from the server 10B.
[0145] One of the features of the acquisition priority determination unit 235 of the acquisition control unit 233 is that it sets the acquisition priority of the synchronization signal to the highest, which makes it possible to avoid degradation of the user experience due to delays in sending and receiving the synchronization signal.
[0146] <<2.3. Operational Flow>> Next, an example of the operational flow of the information processing system 1 according to the second embodiment will be described.
[0147] FIG. 9 is a sequence diagram showing an example of the flow of operations of the information processing system 1 according to the second embodiment.
[0148] Note that the request for metadata from client 20B, the transmission of metadata from server 10B, and the determination of the acquisition mode and acquisition priority based on the metadata 320 by the acquisition control unit 233 of client 20B may be the same processes as steps S101 to S103 shown in FIG. 5, and therefore will not be described in the example shown in FIG. 9.
[0149] In the example shown in FIG. 9, following the above process, the acquisition control unit 233 of the client 20B requests the game data 310 from the server 10B based on the determined acquisition target and acquisition priority (S204).
[0150] In addition, when the acquisition control unit 233 of the client 20B receives a notification from the logic unit 232 that the game space information 330 has been updated, it sends a synchronization signal with the acquisition priority set to the highest priority (acquisition priority: highest priority) to the server 10B (S205).
[0151] When a synchronization signal with the highest acquisition priority (acquisition priority: highest priority) is transmitted from the client 20B, the distribution unit 111 of the server 10B acquires the synchronization signal with the highest priority.
[0152] Furthermore, the logic unit 112 of the server 10B updates the game space information 330 based on the synchronization signal acquired via the distribution unit 111 (S206).
[0153] When the logic unit 112 of the server 10B updates the game space information 330 in step S206, the logic unit 112 notifies the distribution unit 111 of this.
[0154] When the distribution unit 111 receives a notification from the logic unit 112 that the game space information 330 has been updated, it sends a synchronization signal with the acquisition priority set to the highest priority (acquisition priority: highest priority) to the client 20B (S207).
[0155] Furthermore, the distribution unit 111 distributes (transmits) the game data 310 to the client 20B based on the request received in step S204.
[0156] In the example shown in Figure 9, the distribution unit 111 transmits game data 310 with a high acquisition priority (acquisition priority: high) in step S208, and transmits game data 310 with a low acquisition priority (acquisition priority: low) in step S209.
[0157] The acquisition control unit 233 of the client 20B receives, with the highest priority, the synchronization signal with the highest acquisition priority (acquisition priority: highest priority) from among the game data 310 transmitted from the server 10B (S207).
[0158] The logic unit 232 of the client 20B updates the game space information 330 based on the synchronization signal received in step S207 (S210).
[0159] In addition, after receiving the synchronization signal with the highest priority, the acquisition control unit 233 of client 20B downloads, with priority, the game data 310 sent from server 10B that has been set with a high acquisition priority (acquisition priority: high) (S208).
[0160] Furthermore, when the download of game data 310 with a high acquisition priority (acquisition priority: high) is completed (S211), the acquisition control unit 233 instructs the logic unit 232 to start executing a game application using the game data 310 (S212).
[0161] Thereafter, the acquisition control unit 233 downloads the game data 310 for which the acquisition priority is set low (acquisition priority: low) (S209).
[0162] The above describes an example of the flow of operations of the information processing system 1 according to the second embodiment. According to the flow of operations described above, it is possible to avoid degradation of the user experience due to delays in transmission and reception of synchronization signals.
[0163] 9 is merely an example, and the update of the game space information 330 and the transmission and reception of the synchronization signal may occur multiple times. When transmission and reception of the synchronization signal becomes necessary, the server 10B and the client 20B perform the transmission and reception of the synchronization signal as the highest priority.
[0164] 3. Third Embodiment 3.1. Functional Configuration Example of Server 10C Next, a third embodiment of the present disclosure will be described. Note that, hereinafter, differences from the first embodiment will be mainly described, and detailed description of configurations, functions, effects, etc. common to the first embodiment will be omitted.
[0165] In the first embodiment, a case has been described in which execution of a game application starts as soon as downloading of game data 310 set to a high priority is completed.
[0166] However, if the communication speed between the server 10 and the client 20 is slow, there may be cases where the download of game data 310 set to a low priority cannot keep up with the progress of the game application.
[0167] An example of such a case is when certain game data 310 is needed, such as when transitioning to the next map or when an object that was out of view comes into view, but the download of that game data 310 has not been completed.
[0168] In cases like the above, waiting times such as loading may occur, which may degrade the user experience.
[0169] The technical concept of the third embodiment of the present disclosure was conceived with the above points in mind, and aims to avoid a degradation of the user experience by determining the acquisition target and acquisition priority based on the communication speed.
[0170] More specifically, the information processing system 1 according to the third embodiment of the present disclosure may dynamically change the game data 310 that must be completed downloaded before the game application starts to be executed, depending on the communication speed between the server 10C and the client 20C.
[0171] FIG. 10 is a block diagram illustrating an example of a functional configuration of a server 10C according to the third embodiment of the present disclosure.
[0172] The server 10C according to the third embodiment differs from the server 10A according to the first embodiment mainly in that the control unit 110 further includes a communication speed measurement unit 113.
[0173] The communication speed measurement unit 113 works in cooperation with the communication speed measurement unit 237 (see FIG. 11) of the client 20C to measure the communication speed between the server 10C and the client 20C.
[0174] <<3.2. Functional Configuration Example of Client 20C>> Next, a description will be given of a functional configuration example of the client 20C according to the third embodiment. Fig. 11 is a block diagram showing a functional configuration example of the client 20C according to the third embodiment of the present disclosure.
[0175] The client 20C according to the third embodiment differs from the client 20A according to the first embodiment mainly in that the control unit 230 further includes a communication speed measurement unit 237.
[0176] The communication speed measurement unit 237 cooperates with the communication speed measurement unit 113 (see FIG. 11) of the server 10C to measure the communication speed between the server 10C and the client 20C.
[0177] Measurement of the communication speed by the communication speed measurement unit 113 and the communication speed measurement unit 237 may be realized, for example, by one of the communication speed measurement units 113 and 237 sending measurement traffic based on a request from the other, and the other unit calculating the communication speed based on the measurement traffic received by the other unit.
[0178] However, the method of measuring the communication speed by the communication speed measuring unit 113 and the communication speed measuring unit 237 is not limited to the above.
[0179] The communication speed measurement unit 113 and the communication speed measurement unit 237 may be implemented using various measurement tools that are widely used in the communications industry.
[0180] Furthermore, one of the features of the acquisition control unit 233 of the client 20C according to the third embodiment is that it determines the acquisition target and acquisition priority based on the measured communication speed.
[0181] For example, if the measured communication speed is below a threshold, the acquisition target determination unit 234 of the client 20C may set a higher acquisition priority for more game data 310.
[0182] That is, when the measured communication speed is below the threshold, the acquisition target determination unit 234 of the client 20C may designate more game data 310 as essential for starting execution of the game application.
[0183] Here, referring again to FIG. 4, an example of setting acquisition priorities according to the third embodiment will be described.
[0184] It is assumed here that the viewpoint at the start of execution of the game application is set to "Map A."
[0185] If the measured communication speed is equal to or greater than a threshold, i.e., if the communication speed is sufficiently fast, for example, the acquisition priority determination unit 235 of client 20C may set the acquisition priority of "Map A," "Object A," "Object B," and "Texture A (Ver. 1.02)" high, and set the acquisition priority of other assets low, in order to start executing the game application sooner.
[0186] If the communication speed is sufficiently fast, by limiting the assets for which a high acquisition priority is set to the "Map" on which the viewpoint is located and the "Object" placed on that "Map," it is possible to shorten the time required for the game application to start executing and avoid a degradation of the user experience.
[0187] On the other hand, if the measured communication speed is below the threshold, i.e., if the communication speed is slow, for example, the acquisition priority determination unit 235 of client 20C may set the acquisition priority of "Map A" and "Map B" and all "Objects" placed on these to high.
[0188] When the communication speed is slow, by setting the assets with a high acquisition priority to more "Maps" and "Objects" placed on those "Maps," it is possible to avoid the case described above where the download of game data 310 with a low priority cannot keep up with the progress of the game application.
[0189] In addition, when the measured communication speed is below a threshold and there are multiple assets that are mutually substitutable, the acquisition priority determination unit 235 of client 20C may set a higher acquisition priority for the asset with the smaller data size among the multiple assets.
[0190] Each of "Object D1 (Low Quality)" and "Object D2 (High Quality)" shown in FIG. 4 is a variation of "Object D" and is an example of a plurality of mutually substitutable assets.
[0191] Also, "Object D1 (Low Quality)" is a low-quality asset, and "Object D2 (High Quality)" is a high-quality asset. In other words, "Object D1 (Low Quality)" is an asset with a smaller data size than "Object D2 (High Quality)."
[0192] In this case, the acquisition priority determination unit 235 of the client 20C may set the acquisition priority of "Object D1 (Low Quality)" high and that of "Object D2 (High Quality)" low.
[0193] When communication speeds are slow, by setting a higher acquisition priority for assets with smaller data sizes in this way, it is possible to shorten the time required for the game application to start running and avoid a degradation of the user experience.
[0194] <<3.3. Operational Flow>> Next, an example of the operational flow of the information processing system 1 according to the third embodiment will be described.
[0195] FIG. 12 is a sequence diagram showing an example of the flow of operations of the information processing system 1 according to the third embodiment.
[0196] In the example shown in FIG. 12, first, the acquisition control unit 233 of the client 20C requests the metadata 320 from the server 10C (S301).
[0197] The distribution unit 111 of the server 10C distributes (transmits) the metadata 320 to the client 20C based on the request received in step S301 (S302).
[0198] Next, the communication speed measurement unit 237 of the client 20C requests the server 10C to measure the communication speed (S303).
[0199] The communication speed measurement unit 113 of the server 10C transmits measurement traffic to the client 20C based on the request received in step S303 (S304).
[0200] The communication speed measurement unit 237 of the client 20C calculates the communication speed between the server 10C and the client 20C based on the measurement traffic received in step S304 (S305).
[0201] The communication speed measurement unit 237 of the client 20C determines the acquisition target and acquisition priority based on the communication speed calculated in step S305 and the metadata 320 received in step S302 (S306).
[0202] The flow of operations from step S306 onwards may be the same as in the first embodiment, and therefore a description thereof will be omitted.
[0203] The above describes an example of the operation flow of the information processing system 1 according to the third embodiment. According to the operation flow described above, it is possible to avoid degradation of the user experience due to communication speed.
[0204] Note that the determination of the acquisition target and acquisition priority based on the communication speed according to the third embodiment and the highest priority acquisition of the synchronization signal according to the second embodiment may be implemented in combination.
[0205] 4. Modifications Next, modifications of the present disclosure will be described.
[0206] In the above embodiments, the case where the acquisition control unit 233 included in the client 20 determines the acquisition target and the acquisition priority has been mainly described.
[0207] On the other hand, the determination of the acquisition target and the acquisition priority may be executed by the server 10 .
[0208] In the third embodiment, the acquisition target and acquisition priority are determined based on the communication speed.
[0209] On the other hand, the information processing system 1 can also determine the acquisition target and acquisition priority based on information other than the communication speed.
[0210] For example, the information processing system 1 may determine the acquisition target and acquisition priority based on the computing resources (computing capacity, memory amount) of the client 20 .
[0211] In cases where the computing resources of the client 20 do not satisfy a predetermined condition, the information processing system 1 may target more assets for acquisition and set higher acquisition priorities for more assets.
[0212] According to the above control, it is possible to avoid degradation of the user experience due to a lack of computing resources.
[0213] Furthermore, for example, the information processing system 1 may determine the acquisition target and acquisition priority based on the device characteristics of the client 20, the location information of the client 20, and the like.
[0214] As described above, the client 20 may be any of a variety of devices, such as a stationary or portable game console, a PC, a smartphone, or an HMD.
[0215] For example, if the client 20 is a smartphone or a portable game console and the client 20 is on the move, it is expected that the user will not play the game application for a long time.
[0216] In the above case, the information processing system 1 may target fewer assets as acquisition targets and may set the acquisition target priority of the fewer assets to a lower value.
[0217] According to the above control, it is possible to reduce the time required to start execution of the game application and avoid degradation of the user experience.
[0218] Furthermore, in each of the above embodiments, a game application has been mainly described as an example, but the application to which the information processing system 1 is applied is not limited to such an example.
[0219] The information processing system 1 is widely applicable to various applications that perform asset rendering.
[0220] 5. Hardware Configuration Example Next, a hardware configuration example common to the server 10 and the client 20 according to an embodiment of the present disclosure will be described.
[0221] 13 is a block diagram showing an example of a hardware configuration of an information processing device 90 according to an embodiment of the present disclosure. The information processing device 90 may be a device having a hardware configuration equivalent to that of each of the above-described devices.
[0222] 12 , the information processing device 90 includes, for example, a processor 871, a ROM 872, a RAM 873, a host bus 874, a bridge 875, an external bus 876, an interface 877, an input device 878, an output device 879, a storage 880, a drive 881, a connection port 882, and a communication device 883. Note that the hardware configuration shown here is an example, and some of the components may be omitted. Furthermore, the information processing device 90 may include further components other than those shown here.
[0223] (Processor 871) The processor 871 functions, for example, as an arithmetic processing device or control device, and controls the overall operation of each component or part of it based on various programs recorded in the ROM 872, RAM 873, storage 880, or removable storage medium 901.
[0224] (ROM 872, RAM 873) The ROM 872 is a means for storing programs to be read into the processor 871, data to be used for calculations, etc. The RAM 873 temporarily or permanently stores, for example, the programs to be read into the processor 871 and various parameters that change as appropriate when the programs are executed.
[0225] (Host bus 874, bridge 875, external bus 876, interface 877) The processor 871, ROM 872, and RAM 873 are connected to one another via, for example, a host bus 874 that is capable of high-speed data transmission. On the other hand, the host bus 874 is connected to, for example, an external bus 876 that has a relatively low data transmission speed via a bridge 875. Furthermore, the external bus 876 is connected to various components via an interface 877.
[0226] (Input Device 878) For example, a mouse, keyboard, touch panel, button, switch, lever, etc. are used as the input device 878. Furthermore, a remote controller (hereinafter referred to as a remote control) capable of transmitting control signals using infrared rays or other radio waves may also be used as the input device 878. The input device 878 also includes an audio input device such as a microphone.
[0227] (Output Device 879) The output device 879 is a device capable of visually or audibly notifying the user of acquired information, such as a display device such as a Cathode Ray Tube (CRT), a Liquid Crystal Display (LCD), or an organic EL display, an audio output device such as a speaker or a headphone, a printer, a mobile phone, a facsimile, etc. The output device 879 according to the present disclosure also includes various vibration devices capable of outputting tactile stimulation.
[0228] (Storage 880) The storage 880 is a device for storing various types of data. For example, a magnetic storage device such as a hard disk drive (HDD), a semiconductor storage device, an optical storage device, or a magneto-optical storage device is used as the storage 880.
[0229] (Drive 881) The drive 881 is a device that reads information recorded on a removable storage medium 901 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory, or writes information to the removable storage medium 901.
[0230] (Removable storage medium 901) The removable storage medium 901 is, for example, a DVD medium, a Blu-ray (registered trademark) medium, an HD DVD medium, various semiconductor storage media, etc. Of course, the removable storage medium 901 may also be, for example, an IC card equipped with a contactless IC chip, an electronic device, etc.
[0231] (Connection Port 882) The connection port 882 is a port for connecting an external device 902, such as a Universal Serial Bus (USB) port, an IEEE 1394 port, a Small Computer System Interface (SCSI), an RS-232C port, or an optical audio terminal.
[0232] (Externally Connected Device 902) The externally connected device 902 is, for example, a printer, a portable music player, a digital camera, a digital video camera, or an IC recorder.
[0233] (Communication device 883) The communication device 883 is a communication device for connecting to a network, such as a communication card for wired or wireless LAN, Bluetooth (registered trademark), or Wireless USB (WUSB), a router for optical communication, a router for Asymmetric Digital Subscriber Line (ADSL), or a modem for various types of communication.
[0234] 6. Summary As described above, an information processing system according to an embodiment of the present disclosure includes an acquisition control unit that controls acquisition of assets used to execute an application, and the acquisition control unit controls simultaneous and parallel acquisition of assets based on acquisition targets and acquisition priorities that are set based on metadata that expresses relationships between assets using a network structure, and is characterized in that it instructs the start of execution of the application when acquisition of an asset set with a high acquisition priority has been completed.
[0235] According to the above configuration, it is possible to obtain assets more efficiently and further reduce the time required to start an application.
[0236] It should be noted that a system according to an embodiment of the present disclosure may be realized by a single device or by multiple devices.
[0237] Although the preferred embodiments of the present disclosure have been described in detail above with reference to the accompanying drawings, the technical scope of the present disclosure is not limited to such examples. It is clear that a person skilled in the art of the present disclosure can conceive of various modified or altered examples within the scope of the technical idea described in the claims, and it is understood that these also naturally fall within the technical scope of the present disclosure.
[0238] Furthermore, the steps of the processes described in this disclosure do not necessarily have to be processed in chronological order according to the order shown in the flowcharts or sequence diagrams. For example, the steps of the processes of each device may be processed in an order different from the order shown, or may be processed in parallel.
[0239] Furthermore, the series of processes performed by each device described in this disclosure may be realized by a program stored in a non-transitory computer-readable storage medium. Each program is, for example, loaded into RAM when executed by a computer and executed by a processor such as a CPU. The storage medium may be, for example, a magnetic disk, an optical disk, a magneto-optical disk, or a flash memory. The program may also be distributed, for example, via a network, without using a storage medium.
[0240] Furthermore, the effects described herein are merely descriptive or exemplary and are not limiting. In other words, the technology according to the present disclosure may achieve other effects that are apparent to those skilled in the art from the description of this specification, in addition to or in place of the above-described effects.
[0241] The following configurations also fall within the technical scope of the present disclosure. (1) An information processing system including an acquisition control unit that controls acquisition of assets used to execute an application, wherein the acquisition control unit controls simultaneous and parallel acquisition of the assets based on acquisition targets and acquisition priorities set based on metadata that expresses the relationships between the assets using a network structure, and instructs the application to start execution when acquisition of the assets with a high acquisition priority has been completed. (2) The information processing system described in (1), wherein the assets include at least one of data related to maps that constitute spatial information used in rendering the application, or data related to objects placed on the maps. (3) The information processing system described in (2), wherein the metadata expresses the relationships between the maps, or the relationships between the maps and the objects placed on the maps, using a network structure. (4) The information processing system described in any one of (1) to (3), wherein the metadata includes at least one of a storage location, a drawing position, a size, a version, and a variation of each of the assets. (5) The information processing system according to any one of (3) or (4), wherein the acquisition control unit sets the acquisition priority of the asset required to start execution of the application high based on the metadata. (6) The information processing system according to (5), wherein the acquisition control unit sets the acquisition priority of the asset based on a relationship between a viewpoint and the asset at the time of starting execution of the application. (7) The information processing system according to (6), wherein the acquisition control unit sets the acquisition priority of the asset higher for an asset that is closer to the viewpoint. (8) The information processing system according to any one of (2) to (7), further comprising: a logic unit that updates the spatial information based on operation information related to the application. (9) The information processing system according to (8), wherein the acquisition control unit controls simultaneous and parallel downloading of the asset from a server by a client.(10) The information processing system according to (9), wherein the logic unit includes a first logic unit provided in the client and a second logic unit provided in the server. (11) The information processing system according to (10), wherein the acquisition control unit sets the highest priority for transmission and reception of signals used to synchronize the spatial information between the first logic unit and the second logic unit. (12) The information processing system according to any one of (9) to (11), wherein the acquisition control unit sets the acquisition priority of the assets based on the communication speed between the client and the server. (13) The information processing system according to (12), wherein the acquisition control unit sets the acquisition priority of more of the assets higher when the communication speed is below a threshold. (14) The information processing system according to (12), wherein, when the communication speed is below a threshold and there are multiple mutually substitutable assets, the acquisition control unit sets the acquisition priority of an asset with a smaller data size higher among the multiple assets. (15) The information processing system according to any one of (12) to (14), further comprising a communication speed measurement unit that measures the communication speed. (16) The information processing system according to any one of (9) to (15), wherein the acquisition priority is set in a header of a format used for communication between the client and the server. (17) The information processing system according to any one of (9) to (16), wherein the acquisition control unit determines the acquisition priority based on computing resources of the client. (18) The information processing system according to any one of (1) to (17), wherein the acquisition control unit determines the acquisition priority based on at least one of device characteristics of the client and location information of the client.(19) An information processing method, including: a processor controlling acquisition of assets used in executing an application, wherein controlling the acquisition of the assets further includes controlling simultaneous and parallel acquisition of the assets based on acquisition targets and acquisition priorities set based on metadata that expresses the relationships between the assets by a network structure, and instructing the application to start execution when acquisition of the asset with the high acquisition priority has been completed. (20) A program that causes a computer to function as an information processing device, including: an acquisition control unit that controls acquisition of assets used in executing an application, wherein the acquisition control unit controls simultaneous and parallel acquisition of the assets based on acquisition targets and acquisition priorities set based on metadata that expresses the relationships between the assets by a network structure, and instructs the application to start execution when acquisition of the asset with the high acquisition priority has been completed.
[0242] REFERENCE SIGNS LIST 1 Information processing system 10 Server 110 Control unit 111 Distribution unit 112 Logic unit 113 Communication speed measurement unit 120 Storage unit 20 Client 210 Display unit 220 Input unit 230 Control unit 231 Rendering unit 232 Logic unit 233 Acquisition control unit 234 Acquisition target determination unit 235 Acquisition priority determination unit 236 Acquisition unit 237 Communication speed measurement unit 240 Storage unit 310 Game data 320 Metadata 330 Game space information
Claims
1. An information processing system comprising: an acquisition control unit that controls the acquisition of assets used to execute an application; wherein the acquisition control unit controls the simultaneous and parallel acquisition of the assets based on acquisition targets and acquisition priorities that are set based on metadata that expresses the relationships between the assets using a network structure; and when acquisition of the assets that have been set with a high acquisition priority has been completed, instructs the application to start execution.
2. The information processing system according to claim 1, wherein the assets include at least one of data relating to a map constituting spatial information used in rendering the application, or data relating to objects to be placed on the map.
3. The information processing system according to claim 2, wherein the metadata expresses the relationships between the maps or the relationships between the maps and the objects placed on the maps using a network structure.
4. The information processing system according to claim 1, wherein the metadata includes at least one of the storage location, rendering position, size, version, and variation of each of the assets.
5. The information processing system according to claim 3, wherein the acquisition control unit sets the acquisition priority of the asset required to start execution of the application high based on the metadata.
6. The information processing system according to claim 5, wherein the acquisition control unit sets the acquisition priority of the asset based on the relationship between the viewpoint and the asset at the time of starting execution of the application.
7. The information processing system according to claim 6, wherein the acquisition control unit sets the acquisition priority higher for an asset that is closer to the viewpoint.
8. The information processing system according to claim 2, further comprising: a logic unit that updates the spatial information based on operation information related to the application.
9. The information processing system according to claim 8, wherein the acquisition control unit controls simultaneous and parallel downloading of the assets from the server by the client.
10. The information processing system according to claim 9, wherein the logic unit includes a first logic unit provided in the client and a second logic unit provided in the server.
11. The information processing system according to claim 10, wherein the acquisition control unit sets the highest priority for transmission and reception of signals used to synchronize the spatial information between the first logic unit and the second logic unit.
12. The information processing system according to claim 9, wherein the acquisition control unit sets the acquisition priority of the asset based on the communication speed between the client and the server.
13. The information processing system according to claim 12, wherein the acquisition control unit sets the acquisition priority of more assets to be higher when the communication speed is below a threshold.
14. The information processing system of claim 12, wherein when the communication speed is below a threshold and there are multiple mutually substitutable assets, the acquisition control unit sets the acquisition priority of the asset with the smaller data size among the multiple assets to be higher.
15. The information processing system according to claim 12, further comprising a communication speed measurement unit that measures the communication speed.
16. The information processing system according to claim 9, wherein the acquisition priority is set in a header of a format used for communication between the client and the server.
17. The information processing system according to claim 9, wherein the acquisition control unit determines the acquisition priority based on the computing resources of the client.
18. The information processing system according to claim 9, wherein the acquisition control unit determines the acquisition priority based on at least one of device characteristics of the client and location information of the client.
19. An information processing method, comprising: a processor controlling the acquisition of assets used to execute an application; wherein controlling the acquisition of the assets controls simultaneous and parallel acquisition of the assets based on acquisition targets and acquisition priorities set based on metadata that expresses the relationships between the assets using a network structure; and, when acquisition of the assets set with a high acquisition priority has been completed, instructs the start of execution of the application.
20. A program that causes a computer to function as an information processing device, comprising: an acquisition control unit that controls the acquisition of assets used to execute an application; the acquisition control unit controls the simultaneous and parallel acquisition of the assets based on the acquisition target and acquisition priority set based on metadata that expresses the relationships between the assets using a network structure; and when acquisition of the asset set with a high acquisition priority has been completed, instructs the application to start execution.
Citation Information
Patent Citations
Universal computing asset registry
US20210136120A1
Method for creating view-based representations from multimedia collections
US20220004573A1