CN111917852A - Multi-person network synchronization system based on Unity and development method - Google Patents

Multi-person network synchronization system based on Unity and development method Download PDF

Info

Publication number
CN111917852A
CN111917852A CN202010720055.5A CN202010720055A CN111917852A CN 111917852 A CN111917852 A CN 111917852A CN 202010720055 A CN202010720055 A CN 202010720055A CN 111917852 A CN111917852 A CN 111917852A
Authority
CN
China
Prior art keywords
data
server
unity
client
network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010720055.5A
Other languages
Chinese (zh)
Inventor
施文华
刘飞
郑昊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Perli Information Technology Co ltd
Original Assignee
Shanghai Perli Information Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Perli Information Technology Co ltd filed Critical Shanghai Perli Information Technology Co ltd
Priority to CN202010720055.5A priority Critical patent/CN111917852A/en
Publication of CN111917852A publication Critical patent/CN111917852A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The invention discloses a Unity-based multi-person Network synchronization system and a development step thereof, which consists of a thread pool, a data serialization module, a data deserialization module, a binary data transmission module and a multi-module of a Network Object, and comprises the following specific steps: creating a Unity project, adding a server and a client, newly building a C # script, compiling a synchronization behavior component, adding a networkObject component, setting an ID (identity) number, and finally adding the synchronization behavior component, wherein the invention provides a lightweight network synchronization system which can be quickly built for Unity developers; too much learning cost and a server building process are not needed, so that a developer is enabled to concentrate on functional logic development without worrying about network transmission, sticky packet loss, network searching and other bottom contents; and also provides efficient data serialization and deserialization methods and interfaces for developers, which can be used for file storage and data parsing.

Description

Multi-person network synchronization system based on Unity and development method
Technical Field
The invention relates to the technical field of computer software development, in particular to a Unity-based multi-person network synchronization system and a development step thereof.
Background
As social software, VR, has enjoyed network gaming, more and more developers are realizing that programs with multi-player network synchronization functionality are more competitive. Unity, as a main development platform for VR and network games, does not have the capability of friendly multi-player network development.
In the Unity 2017 edition, an official has introduced a multi-user network synchronization related module, but the module stops updating and is marked as discarding due to various reasons of the module and the outside, and the multi-user network synchronization function of the official is in a blank state all the time. In addition, the Unity platform has a plug-in Photon with network synchronization, which can also realize multi-person synchronization, but the whole Photon system is too large, the learning cost of developers is high, and the server is troublesome to build.
Disclosure of Invention
The invention aims to provide a Unity-based multi-person network synchronization system and a development step thereof, so as to solve the problems in the background technology.
In order to achieve the purpose, the invention provides the following technical scheme: a development step of a Unity-based multi-person network synchronization system comprises the following specific steps:
firstly, a Unity program unity.exe is started, a Unity project is created, and a scene is created to serve as an initialization entrance scene;
secondly, if the Server is used as the Server, adding a Server component; if the Client side exists, a Client component is added. Both the Server component and the Client component need to set the same Application Identity and Port, the former is used to identify the same program, and the latter is used to specify the Port of data transmission. Because the setting of the server side is simple, because almost all functions are packaged, only the client side is described later;
and step three, building a C # script and writing a synchronous behavior component. The most important point in this process is the process serialization and deserialization, which will be described in more detail within the program modules.
Fourth, add NetworkObject component and set ID number. The ID number is a unique identifier for this object, and any message sent and arriving requires an ID number to be directed, which can be assigned automatically by the system or manually as required by the developer.
And fifthly, adding a synchronization behavior component. The development work in the editor is now complete.
A multi-person Network synchronization system based on Unity comprises a thread pool, a data serialization and deserialization module, a binary data transmission module and a Network Object module. Wherein the content of the first and second substances,
1. and (4) thread pool. Because each tcp/udp connection needs to have a separate thread for maintenance, and frequent creation and destruction of threads can generate more memory garbage and performance overhead, the invention makes a thread pool of network connection at the bottom layer, resets and collects data in the threads into the thread pool after connection failure, and takes out the threads from the thread pool and initializes the threads for use when new connection needs to be created, thereby effectively avoiding unnecessary thread garbage and performance overhead. Similarly, data exchange among threads is conflicted due to the use of multiple threads, and in order to avoid the main thread card frame, received network messages are collected by a thread-safe queue, and the messages in the queue are processed in the main thread.
2. Data serialization and deserialization. The structure and storage of the different data are different, for example, data of vector2 (two-dimensional vector) type is stored with two float types, and data of vector3 (three-dimensional vector) type is stored with 4 float types. However, tcp/udp network transmission can only use binary data, so that binary conversion processing is required to be performed on data to be transmitted in advance, and this process is called serialization. The serialization is to convert the data into binary byte arrays arranged according to a sequence queue, and the deserialization is to take out the data from the queue and restore the data according to the same sequence. The invention provides a complete tool for data serialization and deserialization, wherein the class names are buffer writer write and buffer reader read, and corresponding interfaces ILexNetSerializable and deserializable objects ILexNetDeserializable are provided for a complex structure. In addition, from a performance aspect, since both bufferwrite and BufferReader are operations on a block of memory, memory garbage and performance problems result when both are heavily created and destroyed. Both bufferwrite and BufferReader have an implementation of an object pool. Taking the aforementioned vector3 as an example, the steps for serializing the vector3 object are: taking out a buffer Write from the object pool, then splitting vector3 into a basic data structure, wherein the result is 3 float data xyz, and then writing the xyz into the memory block by using the Write method in the buffer Write in sequence; the steps to deserialize the vector3 object are: and taking out a buffer reader from the object pool, transferring the buffer reader into the memory block, reading the memory block from the buffer reader by using a ReadFloat according to the sequence of xyz, creating a structure of vector3, and assigning values to xyz respectively.
3. And (4) transmitting binary data. When the data is serialized, the data needs to be transmitted through tcp/udp, but the network transmission process is not straight and smooth, and sometimes the smoothness sometimes blocks to cause data loss, so that a middleware special for processing network transmission is required: all data needing to be transmitted can be collected in a queue in advance, and a piece of data is taken out from the queue for transmission after the last piece of data is received, so that the phenomenon that a transmission thread is blocked and falsely killed can be avoided, and the data can be automatically transmitted according to the network condition and cannot be lost.
4. The transmission data needs to be sent and received, and the NetworkObject provides the sent data and also processes the received data, so to speak, the NetworkObject serves as a key ring for logic processing in the network system. Before each data transmission, NetworkObject adds some custom protocol contents: the network object also can select a reliable data channel from tcp or an unreliable data channel from udp to transmit according to requirements. When a new message is received, the NetworkObject can analyze the data content, judge whether the message is correct, then find out the corresponding network object and execute the corresponding method.
Further, the multi-person network synchronization system comprises the following operation flow steps:
firstly, the starting program is selected to be started as a server or a client.
Secondly, after the server is started, the server monitors the connection of all network cards; after starting up as a client, the client will find the server through udp broadcast. Two data channels, tcp and udp, are established when a new client connection request is received. tcp is used as a reliable data transmission channel for important command transmission of switches and buttons; udp serves as an unreliable data transmission channel for displaying animation, transitioning the transmission of these unimportant commands.
Thirdly, after receiving the message, the server analyzes the message content, and determines the processing mode of the message according to the message behavior defined by the client: a is sent to all clients B, C except the client B is sent to a specific client D for data storage, and the server processes the message according to the processing modes.
Furthermore, the multi-person network synchronization system supports two system structures, namely an independent server A + a plurality of clients, and an embedded server B + a plurality of clients. The mode A is suitable for being used under the conditions that the number of clients is large and the performance requirement of the server is high; because the server operates independently, the hardware performance of the server can be configured according to specific use occasions, and the state of the client does not influence the server. The mode B is suitable for the condition that the number of clients is small and the clients need to be conveniently dismounted and mounted, and any client can be used as a server, so that an independent server can be saved, and the client can be quickly built, used and dismounted under any condition.
Compared with the prior art, the invention has the beneficial effects that: a lightweight and rapidly-built network synchronization system is provided for Unity developers; too much learning cost and a server building process are not needed, so that a developer is enabled to concentrate on functional logic development without worrying about network transmission, sticky packet loss, network searching and other bottom contents; and also provides efficient data serialization and deserialization methods and interfaces for developers, which can be used for file storage and data parsing.
Drawings
FIG. 1 is a schematic flow chart of the development steps of the present invention;
FIG. 2 is a schematic block diagram of the system of the present invention;
FIG. 3 is a schematic flow chart illustrating the operation of the present invention;
FIG. 4 is a schematic structural diagram of a multi-user network synchronization system A according to the present invention;
fig. 5 is a schematic structural diagram of a multi-user network synchronization system B according to the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
As shown in fig. 4 and 5, the present invention supports two system architectures: a is independent server + a plurality of customer ends, B embeds server + a plurality of customer ends. The mode A is suitable for being used under the conditions that the number of clients is large and the performance requirement of the server is high; because the server operates independently, the hardware performance of the server can be configured according to specific use occasions, and the state of the client does not influence the server. The mode B is suitable for the condition that the number of clients is small and the clients need to be conveniently dismounted and mounted, and any client can be used as a server, so that an independent server can be saved, and the client can be quickly built, used and dismounted under any condition. However, in any system structure, the implementation inside the software is similar, and as shown in fig. 1, the working steps of the software developed in the editor will be described in detail below, taking the creation of a basic network synchronization as an example:
1. exe and create a Unity project, and then create a scene as an initialization entry scene.
2. If the Server is used as the Server, adding a Server component; if the Client side exists, a Client component is added. Both the Server component and the Client component need to set the same Application Identity and Port, the former is used to identify the same program, and the latter is used to specify the Port of data transmission. Since the server side setup is simple, we only describe the client side later since the present invention has packaged almost all functions.
3. And newly building a C # script and writing a synchronous behavior component. The most important point in this process is the process serialization and deserialization, which will be described in more detail within the program modules.
4. Add NetworkObject component and set ID number. The ID number is a unique identifier for this object, and any message sent and arriving requires an ID number to be directed, which can be assigned automatically by the system or manually as required by the developer.
5. And finally adding a synchronous behavior component.
The development work in the editor is now complete. However, the whole process can be completed by the working steps in the runtime, and the runtime process is described below with reference to fig. 3:
1. after the starting program is started, the server or the client is selected to be started.
2. After the server is started, the server monitors the connection of all network cards; after starting up as a client, the client will find the server through udp broadcast. Two data channels, tcp and udp, are established when a new client connection request is received. tcp is used as a reliable data transmission channel for important command transmission of switches and buttons; udp serves as an unreliable data transmission channel for displaying animation, transitioning the transmission of these unimportant commands.
3. When the server receives the message, the server analyzes the message content, and determines the processing mode of the message according to the message behavior defined by the client: a is sent to all clients B, C except the client B is sent to a specific client D for data storage, and the server processes the message according to the processing modes.
The invention mainly comprises a thread pool, a data serialization and deserialization module, a binary data transmission module and a Network Object module, and is explained according to the content shown in figure 2 as follows:
1. and (4) thread pool. Because each tcp/udp connection needs to have a separate thread for maintenance, and frequent creation and destruction of threads can generate more memory garbage and performance overhead, the invention makes a thread pool of network connection at the bottom layer, resets and collects data in the threads into the thread pool after connection failure, and takes out the threads from the thread pool and initializes the threads for use when new connection needs to be created, thereby effectively avoiding unnecessary thread garbage and performance overhead. Similarly, data exchange among threads is conflicted due to the use of multiple threads, and in order to avoid the main thread card frame, received network messages are collected by a thread-safe queue, and the messages in the queue are processed in the main thread.
2. Data serialization and deserialization. The structure and storage of the different data are different, for example, data of vector2 (two-dimensional vector) type is stored with two float types, and data of vector3 (three-dimensional vector) type is stored with 4 float types. However, tcp/udp network transmission can only use binary data, so that binary conversion processing is required to be performed on data to be transmitted in advance, and this process is called serialization. The serialization is to convert the data into binary byte arrays arranged according to a sequence queue, and the deserialization is to take out the data from the queue and restore the data according to the same sequence. The invention provides complete tools for data serialization and deserialization, class names are buffer writer and buffer reader, and corresponding interfaces ILexNetSerializable and ILexNetDeserializable are also provided for complex structures. In addition, from a performance aspect, since both bufferwrite and BufferReader are operations on a block of memory, memory garbage and performance problems result when both are heavily created and destroyed. Both bufferwrite and BufferReader have an implementation of an object pool. Taking the aforementioned vector3 as an example, the steps for serializing the vector3 object are: taking out a buffer Write from the object pool, then splitting vector3 into a basic data structure, wherein the result is 3 float data xyz, and then writing the xyz into the memory block by using the Write method in the buffer Write in sequence; the steps to deserialize the vector3 object are: and taking out a buffer reader from the object pool, transferring the buffer reader into the memory block, reading the memory block from the buffer reader by using a ReadFloat according to the sequence of xyz, creating a structure of vector3, and assigning values to xyz respectively.
3. And (4) transmitting binary data. When the data is serialized, the data needs to be transmitted through tcp/udp, but the network transmission process is not straight and smooth, and sometimes the smoothness sometimes blocks to cause data loss, so that a middleware special for processing network transmission is required: all data needing to be transmitted can be collected in a queue in advance, and a piece of data is taken out from the queue for transmission after the last piece of data is received, so that the phenomenon that a transmission thread is blocked and falsely killed can be avoided, and the data can be automatically transmitted according to the network condition and cannot be lost.
4. The transmission data needs to be sent and received, and the NetworkObject provides the sent data and also processes the received data, so to speak, the NetworkObject serves as a key ring for logic processing in the network system. Before each data transmission, NetworkObject adds some custom protocol contents: the network object also can select a reliable data channel from tcp or an unreliable data channel from udp to transmit according to requirements. When a new message is received, the NetworkObject can analyze the data content, judge whether the message is correct, then find out the corresponding network object and execute the corresponding method.
Although embodiments of the present invention have been shown and described, it will be appreciated by those skilled in the art that changes, modifications, substitutions and alterations can be made in these embodiments without departing from the principles and spirit of the invention, the scope of which is defined in the appended claims and their equivalents.

Claims (4)

1. A multi-person network synchronization system development method based on Unity comprises the following specific steps:
firstly, a Unity program unity.exe is started, a Unity project is created, and a scene is created to serve as an initialization entrance scene;
secondly, the Unity project is used as a Server, and a Server component is added; the Unity project is used as a Client, a Client component is added, the same Application Identity and Port are required to be set for both the Server component and the Client component, the former is used for identifying the same program, and the latter is used for specifying a Port for data transmission;
step three, newly building a C # script and compiling a synchronous behavior component;
fourthly, adding a NetworkObject component and setting an ID number, wherein the ID number is a unique identifier of the object, the sending and the arrival of any message need the ID number for guidance, and the ID number can be automatically or manually allocated by a system according to the needs of developers;
and fifthly, finally adding a synchronous behavior component, and finishing the development work in the editor.
2. A multi-person Network synchronization system based on Unity is characterized in that the multi-person Network synchronization system consists of a thread pool, a plurality of modules of data serialization, data deserialization, binary data transmission and Network Object, wherein,
the thread pool resets the data in the thread and collects the data into the thread pool after the connection fails;
the data serialization converts data into binary byte arrays, the binary byte arrays are arranged according to a sequence queue, and the data deserialization takes out the data from the queue and restores the data according to the same sequence;
the binary data transmission is a middleware specially processing network transmission, all data to be transmitted are collected into a queue in advance by the binary data transmission, and a piece of data is taken out from the queue for transmission after the last piece of data is received;
the Network Object provides the transmitted data and also processes the received data, and before transmitting the data each time, the Network Object adds some self-defined protocol contents: the network object NetworkObject can select a reliable data channel from a tcp or an unreliable data channel from a udp to transmit according to requirements, and when a new message is received, the network object NetworkObject can analyze data content, judge whether the message is correct, find a corresponding network object and execute a corresponding method.
3. The Unity-based multi-person network synchronization system as claimed in claim 2, wherein said multi-person network synchronization system is run by the following steps:
firstly, selecting to start a program as a server or a client after starting the program;
secondly, after the server is started, the server monitors the connection of all network cards; after the client is started, the client finds a server through udp broadcasting, two data channels, namely tcp and udp, are established after a new client connection request is received, and the tcp is used as a reliable data transmission channel and is used for important command transmission of a switch and a button; udp is used as an unreliable data transmission channel for displaying animation and transiting the unimportant command transmission;
thirdly, after receiving the message, the server analyzes the message content, and determines the processing mode of the message according to the message behavior defined by the client: a is sent to all clients B, C except the client B is sent to a specific client D for data storage, and the server processes the message according to the processing modes.
4. The Unity-based multi-person network synchronization system as recited in claim 2, wherein said multi-person network synchronization system supports two system architectures,
a first mode a, an independent server + multiple clients; the mode A is suitable for being used under the conditions that the number of clients is large and the performance requirement of the server is high;
in a second mode B, an embedded server + a plurality of clients; the B mode is suitable for the condition that the number of clients is small and the clients need to be conveniently disassembled and assembled.
CN202010720055.5A 2020-07-23 2020-07-23 Multi-person network synchronization system based on Unity and development method Pending CN111917852A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010720055.5A CN111917852A (en) 2020-07-23 2020-07-23 Multi-person network synchronization system based on Unity and development method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010720055.5A CN111917852A (en) 2020-07-23 2020-07-23 Multi-person network synchronization system based on Unity and development method

Publications (1)

Publication Number Publication Date
CN111917852A true CN111917852A (en) 2020-11-10

Family

ID=73280750

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010720055.5A Pending CN111917852A (en) 2020-07-23 2020-07-23 Multi-person network synchronization system based on Unity and development method

Country Status (1)

Country Link
CN (1) CN111917852A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112473128A (en) * 2020-11-24 2021-03-12 杭州电魂网络科技股份有限公司 Method, device, electronic equipment and storage medium for isolating game logic
CN113596111A (en) * 2021-07-08 2021-11-02 南京智联达科技有限公司 Distributed node-node communication method

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN201491032U (en) * 2009-08-21 2010-05-26 西安迅腾科技有限责任公司 Large-scale multithread communication server
CN101799751A (en) * 2009-12-02 2010-08-11 山东浪潮齐鲁软件产业股份有限公司 Method for building monitoring agent software of host machine
CN102546437A (en) * 2012-02-20 2012-07-04 南京邮电大学 Internet of things platform-oriented socket implementation method
WO2013126507A1 (en) * 2012-02-21 2013-08-29 Brass Monkey, Inc. Mobile embedded servers systems and methods related thereto
US20140337734A1 (en) * 2013-05-09 2014-11-13 Linda Bradford Content management system for a 3d virtual world
CN105006017A (en) * 2015-07-01 2015-10-28 国家电网公司 Simulation method for generating three-dimensional scene based on Unity dynamic technology
CN107454177A (en) * 2017-08-15 2017-12-08 合肥丹朋科技有限公司 The dynamic realizing method of network service
CN107679281A (en) * 2017-09-05 2018-02-09 国家电网公司 Intelligent station three-dimensional scenic analogue system and implementation method based on Unity dynamic generations
US20180308287A1 (en) * 2015-10-16 2018-10-25 Bent Image Lab, Llc Augmented reality platform
WO2018223800A1 (en) * 2017-06-08 2018-12-13 腾讯科技(深圳)有限公司 Data processing method and device, storage medium, and electronic device
US20190342386A1 (en) * 2017-05-18 2019-11-07 Tencent Technology (Shenzhen) Company Limited Method, apparatus, and system for playing scene animation
US20190362312A1 (en) * 2017-02-20 2019-11-28 Vspatial, Inc. System and method for creating a collaborative virtual session
CN110659030A (en) * 2019-09-23 2020-01-07 深圳市众学科技有限公司 Unity project compiling method, system, computer device and storage medium
CN110673911A (en) * 2019-09-17 2020-01-10 张维加 Cross-equipment editing system for digital files

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN201491032U (en) * 2009-08-21 2010-05-26 西安迅腾科技有限责任公司 Large-scale multithread communication server
CN101799751A (en) * 2009-12-02 2010-08-11 山东浪潮齐鲁软件产业股份有限公司 Method for building monitoring agent software of host machine
CN102546437A (en) * 2012-02-20 2012-07-04 南京邮电大学 Internet of things platform-oriented socket implementation method
WO2013126507A1 (en) * 2012-02-21 2013-08-29 Brass Monkey, Inc. Mobile embedded servers systems and methods related thereto
US20140337734A1 (en) * 2013-05-09 2014-11-13 Linda Bradford Content management system for a 3d virtual world
CN105006017A (en) * 2015-07-01 2015-10-28 国家电网公司 Simulation method for generating three-dimensional scene based on Unity dynamic technology
US20180308287A1 (en) * 2015-10-16 2018-10-25 Bent Image Lab, Llc Augmented reality platform
US20190362312A1 (en) * 2017-02-20 2019-11-28 Vspatial, Inc. System and method for creating a collaborative virtual session
US20190342386A1 (en) * 2017-05-18 2019-11-07 Tencent Technology (Shenzhen) Company Limited Method, apparatus, and system for playing scene animation
WO2018223800A1 (en) * 2017-06-08 2018-12-13 腾讯科技(深圳)有限公司 Data processing method and device, storage medium, and electronic device
CN107454177A (en) * 2017-08-15 2017-12-08 合肥丹朋科技有限公司 The dynamic realizing method of network service
CN107679281A (en) * 2017-09-05 2018-02-09 国家电网公司 Intelligent station three-dimensional scenic analogue system and implementation method based on Unity dynamic generations
CN110673911A (en) * 2019-09-17 2020-01-10 张维加 Cross-equipment editing system for digital files
CN110659030A (en) * 2019-09-23 2020-01-07 深圳市众学科技有限公司 Unity project compiling method, system, computer device and storage medium

Non-Patent Citations (7)

* Cited by examiner, † Cited by third party
Title
刘贤梅等: "Unity引擎下多人在线网络游戏的设计与开发", 《计算机系统应用》 *
干建松: "基于unity局域网同步与多角色玩家的设计与实现", 《盐城工学院学报(自然科学版)》 *
烂笔头-27: "手把手教你实现Unity网络同步", 《HTTPS://WWW.GAMERES.COM/828970.HTML》 *
甄希金等: "基于VR技术的多人协同船舶消防系统开发及应用", 《船舶工程》 *
谢宏兰: "基于Unity3D射击游戏的设计与实现", 《现代信息科技》 *
郭骁等: "基于Unity3D的聊天室应用程序开发", 《电脑知识与技术》 *
阚阔等: "基于分布式虚拟现实的连铸多人协作系统", 《物联网技术》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112473128A (en) * 2020-11-24 2021-03-12 杭州电魂网络科技股份有限公司 Method, device, electronic equipment and storage medium for isolating game logic
CN112473128B (en) * 2020-11-24 2023-12-26 杭州电魂网络科技股份有限公司 Method, apparatus, electronic device and storage medium for isolating game logic
CN113596111A (en) * 2021-07-08 2021-11-02 南京智联达科技有限公司 Distributed node-node communication method
CN113596111B (en) * 2021-07-08 2024-02-09 南京智联达科技有限公司 Distributed-based inter-node communication method

Similar Documents

Publication Publication Date Title
US10355911B2 (en) System and method for processing information via networked computers including request handlers, process handlers, and task handlers
CN111917852A (en) Multi-person network synchronization system based on Unity and development method
US20090210482A1 (en) Framework for Rendering Plug-ins in Remote Access Services
EP2807555B1 (en) Para-virtualized asymmetric gpu processors
CN103164244A (en) Firmware system long-distance updating methods based on unified extensible firmware interface
CN112395736B (en) Parallel simulation job scheduling method of distributed interactive simulation system
CN109766201A (en) Task distribution method, server, client and system
CN112527647B (en) NS-3-based Raft consensus algorithm test system
CN109101342A (en) Distributed job control method for coordinating, device, computer equipment and storage medium
CN112764877A (en) Method and system for communication between hardware acceleration equipment and process in docker
CN102455951A (en) Fault tolerance method and system of virtual machines
CN109542832B (en) Communication system and method between heterogeneous multi-core CPUs (central processing units) without lock mechanism
CN113472557A (en) Virtual network element processing method and device and electronic equipment
CN112446948A (en) Virtual reality courseware processing method and device, electronic equipment and storage medium
CN109669788A (en) The MPI implementation method of multi core chip towards direct memory access interconnection communication
CN112748907B (en) C/S mode general measurement and control software architecture based on hardware resources and design method
CN110935168B (en) Distributed ID generation method, device and equipment for global uniform architecture
CN114625449A (en) Control method and device for screen recording in iOS environment
US10824482B1 (en) Remote operations application programming interface
CN111949475A (en) Method and system for achieving distributed task scheduling based on zookeeper shell
KR20220079156A (en) Virtual machine connection management server, operating method thereof, and program using the same
CN110445874A (en) A kind of conversation processing method, device, equipment and storage medium
CN112463212B (en) Environment building method and device supporting cross-system platform
CN114051047B (en) Session message backup method and device, network equipment and storage medium
CN1744042A (en) Method for realizing automatic change of computer start sequence

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination