AR (Augmented Reality) game creation tool construction method and device and medium
By designing a graphical AR game creation tool, the problems of poor complexity and compatibility of existing tools are solved, and a simple and easy-to-use AR game development experience is achieved, improving user creative efficiency and experience.
Patent Information
- Application Number
- CN202411871856.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-18
- Publication Date
- 2025-04-08
AI Technical Summary
The existing AR game creation tool has a complex interface, requires Unity and C# programming knowledge, and has poor compatibility, which limits the ability of non-technical personnel to create AR games.
An AR game creation tool was designed, including UI module, game editing module, interaction module and storage module. It adopts graphical design, reduces code writing, and supports gesture recognition and voice control.
It reduces the difficulty of AR game development, improves creative efficiency, provides a good user interaction experience, and inspires users' creative inspiration.
Smart Images

Figure CN119770979A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of AR technology, and more specifically, to a method, device and medium for constructing an AR game creation tool. Background Art
[0002] In recent years, augmented reality (AR) technology has developed rapidly, and AR games have also emerged. As a new form of entertainment that combines virtuality and reality, AR games have attracted a lot of attention from users. The most successful large-scale AR game is the AR mobile game "Pokémon GO" launched in 2016. Although AR games have not yet achieved a significant position in the game industry, it is believed that with the popularization of Apple's recently launched VisionPro hardware device, AR games will become a very important part of the game industry.
[0003] Looking at the development history of the AR industry, there are several important nodes worth discussing. The release of the ARToolKitAR open source framework in 1999 marked the embryonic stage of the concept of AR technology. Subsequently, Google's first AR glasses, Google Glass, were launched in 2012, which became popular for a while, but due to the lack of deep technical support, the craze quickly faded, which was a bubble period for AR technology. The popularity of the AR mobile game "Pokémon GO" in 2016 marked the re-enlightenment of AR technology. This was the first time that AR technology was applied to a large mobile game and achieved excellent results. From the launch of the Hololens2AR device by Microsoft in 2019 to the release of VisionPro in 2023, this period belongs to the recovery and growth period of AR technology.
[0004] Speaking of games, a highly interactive media form, most of the existing AR game creation tools on the market basically rely on Unity and corresponding packages, such as Unity+ARFoundation, Unity+Vuforia. The limitations of these tools are that the interface is relatively complex, requiring relevant knowledge of Unity and C# programming, and poor compatibility. The present invention hopes to develop a tool that allows a person who does not understand the code to easily design his own AR game, so it is a simple and efficient creation tool. An excellent tool can help developers complete complex operations more quickly and conveniently, improve work efficiency, and also enhance the user's experience of using the tool, stimulating creativity and inspiration. The present invention hopes to simplify the part of the AR game creation process involving code as much as possible, so that what you see is what you get, and mainly use graphical design to allow users to concentrate more on design. Summary of the invention
[0005] The present invention is provided to solve the above problems existing in the prior art. Therefore, a method, device and medium for constructing an AR game creation tool are needed to simplify the difficulty of developing AR games.
[0006] According to a first aspect of the present invention, a method for constructing an AR game creation tool is provided, the method comprising: constructing an AR game creation tool, the AR game creation tool comprising a UI module, a game editing module, an interaction module and a storage module; the UI module responds to input control instructions to implement editing and storage of AR games; the game editing module is used to implement control of the editing and play process of the AR game; the interaction module is used to implement interaction with AR objects; the storage module is used to implement saving of the created AR game scene and loading the saved AR game scene into the editing scene or the game scene.
[0007] According to a second aspect of the present invention, there is provided an AR game creation tool, comprising a UI module, a game editing module, an interaction module and a storage module; the UI module responds to input control instructions to implement editing and storage of AR games; the game editing module is used to implement editing of AR games and control the game play process; the interaction module is used to implement interaction with AR objects; the storage module is used to implement saving of created AR game scenes and loading saved AR game scenes into editing scenes or game scenes.
[0008] According to a third aspect of the present invention, there is provided a device for constructing a UI module in an AR game creation tool, the device comprising a processor, the processor being configured to construct an AR game creation tool, the AR game creation tool comprising a UI module, a game editing module, an interaction module and a storage module; the UI module responds to input control instructions to implement editing and storage of AR games; the game editing module is used to implement editing of AR games; the interaction module is used to implement interaction with AR objects; the storage module is used to implement saving of created AR game scenes and loading the saved AR game scenes into editing scenes or game scenes.
[0009] According to a fourth aspect of the present invention, there is provided a readable storage medium storing one or more programs, wherein the one or more programs can be executed by one or more processors to implement the method as described above.
[0010] The present invention has at least the following beneficial effects:
[0011] The present invention designs an AR game creation tool, in which users can be guided intuitively and efficiently to create AR games, thereby reducing the difficulty of operation and improving creation efficiency. At the same time, the tool has good user optimization interaction and introduces advanced interaction technologies such as gesture recognition and voice control, thereby improving user experience. BRIEF DESCRIPTION OF THE DRAWINGS
[0012] Figure 1 A structural diagram of an AR game creation tool according to an embodiment of the present invention is shown.
[0013] Figure 2 A structural diagram of a game editing module in an AR game creation tool according to an embodiment of the present invention is shown.
[0014] Figure 3 A structural diagram of a storage module according to an embodiment of the present invention is shown.
[0015] Figure 4 A schematic diagram of a main menu flow according to an embodiment of the present invention is shown.
[0016] Figure 5 A flowchart of a game object editing UI submodule according to an embodiment of the present invention is shown.
[0017] Figure 6 A timing diagram of the editing process according to an embodiment of the present invention is shown.
[0018] Figure 7 A timing diagram of the play process according to an embodiment of the present invention is shown. DETAILED DESCRIPTION
[0019] In order to enable those skilled in the art to better understand the technical solution of the present invention, the present invention is described in detail below in conjunction with the accompanying drawings and specific embodiments. The embodiments of the present invention are further described in detail below in conjunction with the accompanying drawings and specific embodiments, but are not intended to limit the present invention. If there is no necessity for a causal relationship between the various steps described in the present invention, the order in which they are described as examples in the present invention should not be regarded as a limitation, and those skilled in the art should know that they can be adjusted in order as long as the logic between them is not destroyed, resulting in the inability to implement the entire process.
[0020] With the further development of AR technology, AR games are emerging in the market, but there are few AR games that can replicate the popularity of Pokémon GO. In fact, the AR games on the market are currently in a tepid stage. At the beginning of this year, the Apple Vision pro mixed reality head-mounted electronic device developed by Apple was released, allowing us to see more possibilities about virtual reality and augmented reality. However, as a game product, AR games naturally require the collaboration of planning, programming, art and other aspects to create better games. At present, there is no easy-to-use AR game creation tool on the market that allows users to produce content themselves. If users want to develop an AR game, they need to have knowledge of game engines, programming knowledge, game scripts, art modeling, game planning and other aspects. This limits the enthusiasm of AR game creators and also makes game creators discouraged from AR-themed games.
[0021] In this context, an embodiment of the present invention provides a method for constructing an AR game creation tool, which constructs an AR game creation tool. The original intention of the design is to design and implement a set of tools for creating AR games, hide and encapsulate the underlying framework, so that users with zero foundation and no knowledge of code can also create their own AR games, directly create an AR game by writing a plot script and editing the AR game body, and share the works with each other.
[0022] In the play mode of the AR game creation tool, users can interact with the edited AR game body through voice recognition, gesture recognition, click, etc., and the interaction can trigger the next AR game event, thereby advancing the plot. Users can enter the scenes preset by others to play, or create their own AR games after playing.
[0023] like Figure 1 As shown, the AR game creation tool can be divided into four modules: UI module, game editing module, interaction module, and storage module.
[0024] Users can use the UI module as an entrance to first enter the game editing scene and edit their own AR games through the game editing module. After editing, users can choose to save the game through the storage module, or directly enter the play mode and interact with the edited game body through the interaction module. After the interaction is completed, the user can also return to the game editing module for re-editing. Users can also directly enter the storage module through the UI module to load the edited game scene and make modifications in it. After the modification is completed, they can enter the play mode again to interact with the edited game body through the interaction module. After the interaction is completed, the user can also return to the game editing module for re-editing.
[0025] The UI module implements the process control of users in the process of editing AR games, and allows users to call the functions of other modules through the UI interface. Users edit and store AR games through buttons and sliders in the UI module. The UI module can be subdivided into the main menu UI submodule and the game editing UI submodule.
[0026] 1. Main Menu UI Submodule The main menu UI submodule is the entrance to the entire program. Users can create new AR game projects and edit already created AR game projects by interacting with the main menu UI. The main menu UI submodule also implements the saving of a created AR game project. When the user exits the editing of an AR game project, the main menu UI submodule will call the relevant function to save an AR game project scene. At the same time, users can also switch between editing mode and playing mode in the main menu UI submodule, and realize the entrance to the two playing modes.
[0027] 2. Game Editing UI Submodule The game editing UI submodule implements the UI part for users to edit AR game events. Different AR event types have different editing UIs, but they share the same template. A total of three AR event types are implemented, namely AR object events, AR interaction events, and AR animation events. After the user selects the corresponding event, he will jump to the editing UI of the corresponding event type. In the AR object event UI, players can select and place AR objects through the UI interface; in the AR interaction event UI, players can edit the voice interaction function and gesture interaction function of AR objects through the UI interface, and can also select events specified by interactive events; in the AR animation event UI, players can select AR animations through the UI interface, including special effects such as zooming in, zooming out, and vibration. Players can also select AR objects specified by animation events.
[0028] The game editing module implements the operation of adding, deleting and modifying AR objects. Users can edit the AR game body, AR plot and AR animation in the scene through the game editing module. The game editing module can be subdivided into four submodules: event chain submodule, object placement submodule, plot editing submodule and animation simulation submodule. The relationship between the four modules is as follows: Figure 2 shown.
[0029] 1. Event chain module
[0030] The event chain submodule can be said to be the skeleton of the game. The creation of the entire game revolves around the event chain function through the creator's addition, editing and deletion of events. When the creator enters the edit mode, he can freely choose to add different types of events. When the creator edits the event, the system will call the corresponding submodule interface according to the different events selected by the creator. In the play mode, the event chain will run the events added by the creator in sequence, and will also call the corresponding submodule's play function according to the different event types.
[0031] 2. Object placement submodule
[0032] The main task of the object placement submodule is to handle the corresponding operations in the object event. This embodiment pre-designs some object prefabricated parts for creators to use. Creators can place the selected prefabricated parts in the AR environment in the object event. The object placement submodule is responsible for many functions from plane detection to ray detection to object generation or destruction, as well as object movement, scaling, etc. The object placement submodule uses the API in the XR Interaction Toolkit package to implement some functions.
[0033] 3. Story Editing Submodule
[0034] The plot editing submodule is mainly responsible for supporting the editing of plot events. This includes adding, deleting, and modifying plots. Creators can choose to add a plot box in the object event. The plot box is essentially an object prefab, but in contrast, it needs to support the creator's custom modification of its content. When editing the plot box, the event chain will call the relevant API of the plot submodule. Creators can freely add multiple plot texts and set the time interval for plot jumps. In the play mode, the main task of the plot editing submodule is to automatically play the plot added by the creator according to the settings. At this time, the game plot will be played in sequence according to the set time interval.
[0035] 4. Animation simulation submodule
[0036] The main task of the animation simulation submodule is to handle the playback of object animations in animation events. This embodiment also designs some animation effects to provide to creators, including general animation effects and object default animation effects. General animation effects can be applied to all object prefabs, such as vibration, zooming in and out, etc. The object default animation effect is unique to each object prefab, and needs to be made separately for each object prefab, and the default animation effect of each object prefab is different. When the creator edits the animation event, the API of the animation submodule will be called, and the selected objects and animation effects will be temporarily stored, and then saved to the event chain. In the play mode, the event chain in the animation event will call the API of the animation submodule, and the animation submodule will control the corresponding object to play the selected animation effect according to the saved data.
[0037] The interaction module enables the user to interact with AR objects in the play mode, including click, voice recognition, and gesture recognition interactions, allowing users to interact with AR objects in an immersive AR world. The interaction module can be divided into two submodules: the voice recognition submodule and the gesture recognition submodule. The module is edited using the UI module as the entry point, but the UI is not necessarily used as the medium for interaction.
[0038] 1. Speech recognition submodule
[0039] The voice recognition module sends a service request, sends the recognized voice content to the server, returns the recognition result, and compares it with the preset value after processing. This submodule is divided into three stages: triggering voice interaction events, voice recording, voice matching and returning results. Users act in the scenes they have made themselves, and can observe the preset virtual objects through the device screen, activate the interactive events bound to the virtual objects, enter the voice recording interface, and complete the recording. Text matching is based on TF-IDF (TermFrequency-InverseDocumentFrequency).
[0040] 2. Gesture recognition submodule
[0041] The gesture recognition module sends a service request, sends the recognized image content to the server through the device camera or picture, returns the recognition result, uses the classname in the json field of the result as an identifier to determine the gesture category, stores the information in the gesture queue and matches it with the preset gesture, and returns the current content of the gesture queue to the upper right corner of the screen to facilitate the user to know whether the current gesture information is correct. Queue matching is based on string matching.
[0042] The storage module mainly enables users to save the created AR game scenes and load the saved AR game scenes into the editing scene or the playing scene. Through this module, when creating an AR game in the editing mode, users can save and exit at any time during or after editing, without worrying about the AR objects placed before disappearing when re-entering the tool after exiting. It can also facilitate users to share their own AR games with each other. The sub-module relationship diagram of the storage module is shown in the figure below. Figure 3 shown.
[0043] When storing an AR game scene, the key information that can restore the scene is mainly saved. In the AR game creation tool, when users create a game, they need to create events to form an event chain. Events are divided into several types: object placement, interaction, and animation. The key information saved by the storage module is mainly the information of the event chain and the information in each event. The information of the event chain includes the number of events and the type of each event. The information in each event is mainly the virtual objects corresponding to each event, as well as the interaction type in the interaction event and the animation type in the animation event.
[0044] After clarifying the key information that needs to be saved, you only need to build the corresponding save class, which contains the above key information. When saving the scene, the save class is serialized into a binary string and saved in a file. When loading the saved scene, the binary string is read from the file, deserialized into the save class, and then the virtual objects and event chains in the scene are cleared, and the event chain and virtual objects are restored to the scene using the key information saved in the save class to load the scene.
[0045] The UI module can be subdivided into a main menu UI submodule and a game object editing UI submodule. These submodules will be described in detail in the subsequent parts of this embodiment.
[0046] Main menu UI submodule
[0047] The main menu UI flow chart is as follows Figure 4 As shown. The main function of the main menu UI submodule is to guide users into the corresponding functional modules. When users enter the AR game creation tool, they will first see an image like this. The Mode: Edit above the title indicates that the game is currently in editing mode. If the user does not want to edit and wants to directly load a project edited by others, they can directly click the buttons on the left and right sides of the bottom of the screen to switch between editing mode and play mode. When the user switches to play mode, the user can click the Play button to enter the play directory, where players can freely select the edited archive to play the game.
[0048] If the user wants to directly edit his own AR game, he can switch to the editing mode. In the editing mode, he can click on the new project, or click on the edit project button to enter the main menu editing directory and select the edited project for secondary editing.
[0049] Game object editing UI submodule
[0050] The game object editing UI submodule flow chart is as follows Figure 5 As shown, the responsibility of the game object editing UI submodule is to call the function of the object editing module at the UI level. The core function of the game editing module is to create and maintain an event chain (Eventlink), and the core function of the game editor is to add, delete, check and modify this event chain. It should be added that in the AR game creation tool of this embodiment, events are managed as a basic unit. There are three types of events, which can be game objects, interactions, or animations. Game objects can exist alone as an independent event, while interactive events and animation events must be attached to object events.
[0051] From the above description, it can be known that the UI module focused on by the present invention is composed of the main menu UI submodule and the game object editing UI submodule. In order to further explore the internal implementation details of this submodule, this embodiment will present a more specific description of their implementation and effects below.
[0052] Implementation of the main menu UI submodule
[0053] The main menu is used to provide program entry, mode switching, and project creation and loading functions.
[0054] In the Unity scene, the main menu is relatively simple. The overall framework is a Canvas preset named Menu, and the remaining button game bodies are all child objects of this preset.
[0055] Implementation of the game object editing UI submodule
[0056] The game object editing UI submodule calls the function of the game object editing module through the UI to implement the editing of game objects. In terms of specific implementation, it is mainly divided into three steps, namely event chain visualization, event chain editing process UI, and event editing UI. The process can be understood as follows: if a user wants to edit an AR game object, he must first edit it through the visual event chain. The visual event chain has its own set of processes to control the editing process. When the user goes through this set of processes to edit the corresponding AR game event, he will also enter the event editing UI for editing.
[0057] Step 1: Visualize the chain of events
[0058] The core of the first step is to visualize the event chain in the UI layer. ObjectMenu is a Canvas prefab. A key UI prefab contained in its child objects is the ScrollView prefab. The ScrollRect component contained in this prefab can drag and animate its child objects, which enhances user-friendliness. The game body named Content contained in ScrollView is the key to the visualization of the event chain. The HorizontalLayoutGroup component mounted on it can sort its child objects in a grid form, and conveniently manage the events in the event chain in a unified manner. The script mounted on it realizes the instantiation and management of the event chain, and also realizes the UI part of the event chain code.
[0059] Step 2: Event Chain Editing Process UI
[0060] In this AR game creation tool, there are three types of events, namely game objects, interactive events, and animation events. Their editing processes are roughly the same. This part of the UI mainly implements a transition function, which guides users from editing the event chain to editing the specific event UI. This specific implementation involves three different event buttons that are newly generated after clicking a button in the event chain. In fact, the three different buttons call the same function, which distinguishes different events by passing different parameters. This function is the core function for creating new events in the event chain, but it also includes functions written in this module for the UI part of the event chain editing process.
[0061] Step 3: Event Editing UI
[0062] The event editing UI is a different editing UI implementation for different types of events. Since there are three different AR events, there are three different event editing UIs for them.
[0063] The game editing module is mainly based on Unity and C# scripts. The core of the entire module is the event chain function. The system will enable creators to add, delete and modify different types of events based on the event chain, and let players experience the entire process of the game in the play mode.
[0064] Implementation of event chain
[0065] When a player plays a game, they often need to meet certain conditions in an event before they can trigger the next event. When developing a game through Unity, the creator needs to add a game body to Unity and write corresponding scripts on the corresponding game body to achieve event switching, which brings a certain amount of work to the creator. However, in fact, the progress of the game is often orderly, and the entire game process can be simulated through a data structure such as a linked list. An event can be seen as a node in the linked list, and the switching of events can be seen as jumping from one node to another.
[0066] This chain structure is the event chain. Developers can add, delete and modify different events on the event chain. In the game mode, the system will automatically implement different jump logic according to the different types of events.
[0067] Implementation of EventLink class
[0068] Event chain, as the name implies, is to connect many event units in series in the form of a linked list. The method adopted by the present invention is to add a List of element type EventUnit in the event chain class in the form of combination, and simulate the event chain through the data structure of the linked list.
[0069] The methods of EventLink class include addEvent(), which will add an event of type eventType to the end of the current event chain when called; deleteEvent() will call the delete event method in the eventUnit with the sequence number eventIndex in the linked list and remove the element with the sequence number eventIndex in the linked list; editEvent() will call the edit event method in the eventUnit with the sequence number eventIndex in the linked list; playEvent() will call the play event method with the sequence number eventIndex in the linked list. When used, the responsibilities will be subdivided into specific EventUnits.
[0070] Implementation of EventUnit class
[0071] The event unit (EventUnit) class is used to process the operation of specific events. The class contains the attribute eventType, which is used to distinguish different event types. There are mainly 4 types. EventType = 0 represents that the event is an object event, which supports the creator to add objects. EventType = 1 represents that the event is a plot, which supports the creator to add plots and other operations. EventType = 2 represents that the event is an interactive event, which supports the creator to select related objects and add interactions, etc. EventType = 3 represents that the event is an animation event, which supports the creator to select objects and add animations, etc. In order to facilitate the creator to operate on objects, the present invention adds the attribute objectList in the class to store the game bodies involved in the event. For object events, it is the object placed by the creator under the event. For plot events, it is the plot frame. For interactive events and animation events, this attribute will be used to store the objects that the creator wants to apply interactive operations or animation effects. At the same time, the class contains the attribute animationType. When the event is an animation event, the attribute value represents the type of animation. When the event is not an animation event, the value of this attribute will be set to -1 and has no meaning.
[0072] Game mode implementation
[0073] In the play mode, in order to better control the progress of the game, you need to set some conditions for the event jump. Depending on the event type, the conditions for triggering the jump corresponding to the end event are also different.
[0074] For object events, the current virtual object will appear directly in the scene and enter the next event.
[0075] For plot events, the plot box is essentially also a virtual object. When entering a plot event, the system will automatically play according to the plot designed by the creator. In order to prevent players from missing the plot, players can also replay it by clicking the play button. When players have finished watching all the plots, they can click the continue button to end the current plot event and jump to the next event.
[0076] For interactive events, the present invention reserves an interface for the interactive module, and directly calls the method of the interactive module when calling. After the interaction is triggered, the next event will be entered.
[0077] For animation events, the coroutine function of C# is used. While the main program is running, another logic process is started to coordinate the execution of the current program. When the program encounters the yield keyword, it will be suspended and execution will be paused. When the waiting condition is met, it will continue to execute from the current position. The coroutine can achieve the effect of playing animation without blocking the main thread.
[0078] Implementation of the object placement submodule
[0079] In the object event, the present invention pre-makes some game bodies for creators to use. Creators can select the required objects and place them in the desired positions for players to interact with them in the play mode.
[0080] Implementation of object placement
[0081] In an AR environment, the placement of virtual objects is a relatively complicated process. The present invention uses the plane detection and ray detection functions provided by the ARFoundation package.
[0082] Plane detection can identify the planes in the current real environment, and then place the object on the identified plane. However, due to technical limitations, although not all planes can be extracted, most planes in the environment can be identified. After that, the present invention visualizes the plane to facilitate the creator to more intuitively identify the boundary of the plane.
[0083] After having a plane, objects need to be placed with the help of ray detection. The present invention constructs a ray from the point clicked by the user on the screen using the position of the camera (the user's eyes in AR), performs collision detection with the plane in the scene, and returns the position of the collision if a collision occurs. In this way, the prefabricated virtual object can be placed on the detected plane. In order to facilitate the management of the generated prefabricated clone objects, the present invention designs an object placer ObjectSpawner, on which the script for generating objects is mounted. All generated prefabricated clones will be placed under ObjectSpawner, and a reference to the prefabricated object in the corresponding event will be held in each event unit.
[0084] If the spawn is successful, True will be returned, otherwise false will be returned. If in the edit mode of non-object events, stopSpawn will be set to true, which will prohibit the spawning of objects. When spawning, the objectIndex of the currently selected prefab will be obtained, and the corresponding prefab will be cloned through the Instantiate method, and its parent will be set to ObjectSpawner, and finally the position of the object will be set to the position obtained by ray detection.
[0085] In order to trigger the spawning operation of the object placer, the present invention designs an ARInteractorSpawnTrigger script to associate the creator's operation with the generated object. If it is detected, the plane touched by the ray and the focus of the ray and the plane will be obtained, and then the relevant method will be called to generate the object with these as parameters.
[0086] Implementation of animation simulation submodule
[0087] The present invention designs two different animation effects, namely, a general animation effect and an object default animation effect, and the animation simulation submodule provides control and management of the animation. The animation function is an important part of the system. Without animation, only static objects and plots will make the game very rigid. The addition of animation can greatly increase the fun of the game. The traditional animation production method on Unity is to add animation to a certain game body through Animator or Animation components. Although this can present a good effect, the animation design process is relatively complicated. If many unique and different animations are made for each game body, a lot of time and energy need to be invested, which will seem to be not worth the loss. Therefore, we have made some simple general animation effects and designed corresponding specific animation effects for each prefabricated object.
[0088] Animation Manager
[0089] Since the animation effect is only related to the specific object prefab that needs to play the animation and the specific animation, it has nothing to do with the event. Therefore, in order to facilitate the management of animation, the present invention designs an animation manager class (AnimationManager), which uses the singleton pattern. The singleton pattern ensures that a class has only one instance, and it instantiates itself and provides this instance to the entire system. This class is called a singleton class, which provides a global access method. Since there is only one object in the system memory, system resources can be saved. For some objects that need to be frequently created and destroyed, the singleton pattern can undoubtedly improve the performance of the system.
[0090] In the editing state of an animation event, whether selecting an object or an animation, the AnimationManager class will only temporarily store the value. Only when the creator clicks Save will the cached value be passed to the event unit and saved in the event unit. If the creator clicks Cancel, the cached value will be cleared. This can greatly save resources and improve efficiency. In the play mode, the animation manager will also be responsible for playing the animation. When playing an animation event, the event unit will call the playAnimation() method and use the saved object reference and animation index as parameters. This method will make the given object play the corresponding animation effect.
[0091] The realization of specific animations needs to be made separately according to different models. For a relatively simple model like a treasure chest, it is only necessary to rotate some bones. However, when it comes to the action effects of the character model, it is a very complicated process. The animation effects of the character model often need to be made by professional animators. Therefore, the present invention uses the animation generation function provided by the mixamo website. It only needs to provide a character model and manually set the joints to make animations according to the model. Although the details may be a bit stiff, the overall implementation effect is good and can save a lot of time and manpower. Through the coordinated use of Animator components and Animator Controller, the present invention realizes simple default animation effects. It provides creators with richer animation functions and improves the fun of the game for players.
[0092] For example, on a terminal that can recognize voice and gestures, users can input commands through voice and gestures. The commands can be recognized by the terminal, and the task model and the set joint parts can be determined based on the recognized commands, so that animations can be created. This kind of voice interaction and gesture interaction can increase the fun of the game.
[0093] An embodiment of the present invention further provides a readable storage medium, which stores one or more programs. The one or more programs can be executed by one or more processors to implement the method described in any of the above embodiments.
[0094] In addition, although exemplary embodiments have been described in the present invention, the scope includes any and all embodiments based on the present invention with equivalent elements, modifications, omissions, combinations (e.g., various embodiments intersecting schemes), adaptations or changes. The elements in the claims will be interpreted broadly based on the language adopted in the claims, and are not limited to the examples described in this specification or during the implementation of the present invention, and the examples will be interpreted as non-exclusive. Therefore, this specification and examples are intended to be considered as examples only, and the true scope and spirit are indicated by the following claims and the full scope of their equivalents.
[0095] The above description is intended to be illustrative rather than restrictive. For example, the above examples (or one or more of them) can be used in combination with each other. For example, those of ordinary skill in the art can use other embodiments when reading the above description. In addition, in the above-mentioned specific embodiments, various features can be grouped together to simplify the present invention. This should not be interpreted as a feature of an invention that is not claimed for protection being necessary for any claim. On the contrary, the subject matter of the present invention may be less than all the features of the embodiments of a specific invention. Thus, the following claims are incorporated into the specific embodiments as examples or embodiments, wherein each claim is independently used as a separate embodiment, and it is considered that these embodiments can be combined with each other in various combinations or arrangements. The scope of the present invention should be determined with reference to the full scope of the equivalent forms of the attached claims and these claims.
Claims
1. A method for constructing an AR game creation tool, characterized in that: The method comprises: Constructing an AR game creation tool, wherein the AR game creation tool includes a UI module, a game editing module, an interaction module, and a storage module; The UI module responds to the input control command to implement editing and storage of the AR game; The game editing module is used to implement the control of the editing and playing process logic of the AR game; The interaction module is used to implement interaction with the AR object; The storage module is used to save the created AR game scene and load the saved AR game scene into the editing scene or the game scene.
2. The method according to claim 1, characterized in that: The UI module includes: The main menu UI submodule is used to guide users into the corresponding functional modules; The game object editing UI submodule is used to call the function of the object editing module at the UI level to create and maintain an event chain. The event chain includes at least two events, each event as a basic unit, and the events have three types, namely game object events, interactive events, and animation events. The interactive event or the animation event occurs dependent on the game object event.
3. The method according to claim 1, characterized in that The game editing module includes: The event chain submodule, when in edit mode, allows you to freely choose to add different types of events through the event chain submodule, and calls the interfaces of corresponding submodules according to the selected events. When in play mode, the event chain submodule runs the added events in sequence, and calls the play functions and jump logic of the corresponding submodules according to the event types; The object placement submodule is used to realize the functions from plane detection to ray detection to object generation or destruction as well as object movement and scaling; The plot editing submodule is used to implement functional support for plot events, including adding, deleting and modifying plots; The animation simulation submodule is used to process the playback of object animations in animation events.
4. The method according to claim 1, characterized in that The interaction module includes: The speech recognition module sends a service request, sends the recognized speech content to the server, returns the recognition result, and compares it with the preset value after processing; The gesture recognition module sends a service request, sends the recognized image content to the server through the device camera or picture, returns the recognition result, uses the classname in the json field of the result as an identifier to determine the gesture category, stores the information in the gesture queue and matches it with the preset gesture, and returns the current content of the gesture queue to the upper right corner of the screen so that the user can know whether the current gesture information is correct.
5. The method according to claim 3, characterized in that: The event chain editing mode includes: In event chain editing mode, users can add events to the event chain, including object events, interaction events, and animation events. The object event includes: When adding an object in an object event, the object placement submodule is called; The interaction event includes: In the interaction event, you can add interactions to the added objects, including gesture interaction and voice interaction; The animation event includes: In the animation event, you can add animation effects to the added objects.
6. The method according to claim 3, characterized in that: The event chain play mode includes: In the event chain play mode, the system will advance the game process according to the order of events on the event chain. Different events implement corresponding jump logic, including object events, interaction events and animation events. The object event jump logic includes: After entering an object event, the corresponding object will appear and jump to the next event; The interactive event jump logic includes: After entering an interactive event, the user must interact with the corresponding object in the interactive event and then jump to the next event. The animation event jump logic includes: After entering the animation event, the system will make the corresponding object play the corresponding animation. After the animation is completed, it will jump to the next event.
7. An AR game creation tool, characterized in that: Including UI module, game editing module, interaction module and storage module; The UI module responds to the input control command to implement editing and storage of the AR game; The game editing module is used to edit the AR game and control the game playing process; The interaction module is used to implement interaction with the AR object; The storage module is used to save the created AR game scene and load the saved AR game scene into the editing scene or the game scene.
8. An AR game creation tool construction device, characterized in that: The apparatus comprises a processor configured to: Constructing an AR game creation tool, wherein the AR game creation tool includes a UI module, a game editing module, an interaction module, and a storage module; The UI module responds to the input control command to implement editing and storage of the AR game; The game editing module is used to edit the AR game; The interaction module is used to implement interaction with the AR object; The storage module is used to save the created AR game scene and load the saved AR game scene into the editing scene or the game scene.
9. A non-transitory computer-readable storage medium storing instructions, which, when executed by a processor, executes the method according to any one of claims 1 to 7.