Method and apparatus for generating UGC in game program, and device and storage medium
By setting and editing the motion points of virtual objects in the UGC editor of the game program, the problem of complex and difficult movements of virtual objects is solved by users designing virtual objects, and the effect of simplifying user-defined creative process and improving operation efficiency is achieved.
Patent Information
- Application Number
- PCT/CN2024/104461
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-09-12
- Filing Date
- 2024-07-09
- Publication Date
- 2025-03-20
AI Technical Summary
In the field of gaming, when users design complex movements of virtual objects in virtual environments, the prior art is difficult to simplify the process of user custom creation, increasing the difficulty of user design.
A UGC generation method in a game program is provided. By displaying virtual objects in the editor interface of the UGC editor and in response to the user's motion point editing operation, the motion points of the virtual objects are set, and the motion of the virtual objects in the virtual environment is controlled based on these motion points.
This method enables users to intuitively set and edit the motion points of virtual objects, simplifying the process of user custom creation, reducing the difficulty of users designing the motion of virtual objects, and improving operation efficiency.
Smart Images

Figure CN2024104461_20032025_PF_FP_ABST
Abstract
Description
UGC generation method, device, equipment and storage medium in game program
[0001] This application claims priority to the Chinese patent application filed on September 12, 2023, with application number 202311183367.7 and invention name “UGC generation method, device, equipment and storage medium in game program”, the entire contents of which are incorporated by reference into this application. Technical Field
[0002] The present application relates to the field of games, and in particular to a method, apparatus, device and storage medium for generating UGC in a game program. Background Art
[0003] User-generated content (UGC) refers to user-generated content shared online. In the gaming industry, designers encourage user participation in the design of game content, including level maps, gameplay, and ecosystems, by providing in-game UGC editing capabilities. When designing level maps, users often animate objects to increase difficulty and interest.
[0004] Summary of the Invention
[0005] This application provides a method, device, equipment, and storage medium for generating UGC in a game program. The technical solution is as follows:
[0006] According to one aspect of the present application, a method for generating UGC in a game program is provided, the method being executed by a computer device running the game program, the game program having a UGC editor, the UGC editor being used to customize moving objects in a virtual environment, the method comprising: displaying a virtual object located in a virtual environment in an editor interface of the UGC editor; setting a motion point for the virtual object in the virtual environment in response to a motion point editing operation for the virtual object, the motion point indicating a motion parameter of the virtual object on a motion path in the virtual environment; and controlling the movement of the virtual object in the virtual environment based on the motion point.
[0007] According to another aspect of the present application, a UGC generation device in a game program is provided, which is configured in a computer device, which runs the game program, and the game program has a UGC editor, which is used to customize moving objects in a virtual environment. The device includes: a first display module, which is used to display virtual objects located in the virtual environment in an editor interface of the UGC editor; a setting module, which is used to set motion points for the virtual objects in the virtual environment in response to a motion point editing operation for the virtual objects, and the motion points indicate motion parameters of the virtual objects on the motion path of the virtual environment; and a control module, which is used to control the movement of the virtual objects in the virtual environment based on the motion points.
[0008] According to another aspect of the present application, a computer device is provided, comprising a processor and a memory, wherein a computer program is stored in the memory, and the computer program is loaded and executed by the processor to implement the UGC generation method in the above-mentioned game program.
[0009] According to another aspect of the present application, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the UGC generation method in the above-mentioned game program is implemented.
[0010] According to another aspect of the present application, a computer program product is provided, which includes a computer program stored in a computer-readable storage medium; the computer program is read and executed from the computer-readable storage medium by a processor of a computer device, so that the computer device executes the UGC generation method in the above-mentioned game program.
[0011] The above technical solution allows users to set the movement of virtual objects in the virtual environment by setting movement points within the virtual environment. Users simply need to set the movement parameters of the movement points, and the computer device will generate the movement process of the virtual object from the first movement point to the last movement point. In other words, users can intuitively set and edit the movement points of the virtual object in the virtual environment, allowing users to design complex movements of the virtual object in the virtual environment by focusing only on the design of the movement points. This makes the movement process of the virtual object easier to customize and adjust, simplifies the user's custom creation process, reduces the difficulty of designing the movement of the virtual object in the virtual environment, and helps improve operational efficiency. BRIEF DESCRIPTION OF THE DRAWINGS
[0012] FIG1 shows a schematic diagram of a computer system provided by an exemplary embodiment of the present application;
[0013] FIG2 shows a schematic diagram of a computer system provided by an exemplary embodiment of the present application;
[0014] FIG3 shows a flow chart of a method for generating UGC in a game program provided by an exemplary embodiment of the present application;
[0015] FIG4 shows a flow chart of a method for generating UGC in a game program provided by an exemplary embodiment of the present application;
[0016] FIG5 shows a flowchart of a method for generating UGC in a game program provided by an exemplary embodiment of the present application;
[0017] FIG6 shows a flowchart of a method for generating UGC in a game program provided by an exemplary embodiment of the present application;
[0018] FIG7 is a schematic diagram showing a method for generating UGC in a game program provided by an exemplary embodiment of the present application;
[0019] FIG8 shows a flowchart of a method for generating UGC in a game program provided by an exemplary embodiment of the present application;
[0020] FIG9 is a schematic diagram showing a method for generating UGC in a game program provided by an exemplary embodiment of the present application;
[0021] FIG10 is a schematic diagram showing a method for generating UGC in a game program provided by an exemplary embodiment of the present application;
[0022] FIG11 is a schematic diagram showing a method for generating UGC in a game program provided by an exemplary embodiment of the present application;
[0023] FIG12 is a flowchart showing a method for generating UGC in a game program provided by an exemplary embodiment of the present application;
[0024] FIG13 is a flowchart showing a method for generating UGC in a game program provided by an exemplary embodiment of the present application;
[0025] FIG14 shows a schematic diagram before and after a path smoothing operation provided by an exemplary embodiment of the present application;
[0026] FIG15 is a flowchart showing a method for generating UGC in a game program provided by an exemplary embodiment of the present application;
[0027] FIG16 is a schematic diagram showing a method for generating UGC in a game program according to an exemplary embodiment of the present application;
[0028] FIG17 is a schematic diagram showing a method for generating UGC in a game program according to an exemplary embodiment of the present application;
[0029] FIG18 is a schematic diagram showing a method for generating UGC in a game program provided by an exemplary embodiment of the present application;
[0030] FIG19 is a schematic diagram showing a method for generating UGC in a game program provided by an exemplary embodiment of the present application;
[0031] FIG20 is a schematic diagram showing a method for generating UGC in a game program provided by an exemplary embodiment of the present application;
[0032] FIG21 is a schematic diagram showing a method for generating UGC in a game program provided by an exemplary embodiment of the present application;
[0033] FIG22 is a flowchart showing a method for generating UGC in a game program provided by an exemplary embodiment of the present application;
[0034] FIG23 shows a flowchart of a method for generating UGC in a game program provided by an exemplary embodiment of the present application;
[0035] FIG24 shows a structural block diagram of a UGC generating device in a game program provided by an exemplary embodiment of the present application;
[0036] FIG25 shows a structural block diagram of a computer device provided by an exemplary embodiment of the present application. DETAILED DESCRIPTION
[0037] In order to make the objectives, technical solutions and advantages of this application clearer, the implementation methods of this application will be further described in detail below with reference to the accompanying drawings.
[0038] It should be noted that before collecting the user's relevant data (such as the various video files in the terminal and the video clips corresponding to each video file) and during the process of collecting the user's relevant data, this application can display a prompt interface, pop-up window or output voice prompt information. The prompt interface, pop-up window or voice prompt information is used to remind the user that its relevant data is currently being collected, so that this application only starts to execute the relevant steps of obtaining the user's relevant data after obtaining the user's confirmation operation on the prompt interface or pop-up window. Otherwise (that is, when the user's confirmation operation on the prompt interface or pop-up window is not obtained), the relevant steps of obtaining the user's relevant data are terminated, that is, the user's relevant data is not obtained. In other words, all user data collected by this application are collected with the user's consent and authorization, and the collection, use and processing of relevant user data need to comply with the relevant laws, regulations and standards of the relevant countries and regions.
[0039] First, let’s introduce the relevant terms involved in this application:
[0040] User-generated content (UGC) refers to user-generated content shared online. In the gaming industry, designers encourage user participation in the design of game content, including level maps, gameplay, and ecosystems, by providing in-game UGC editing capabilities. This user-driven design enhances user engagement and enriches game content, further satisfying personalized needs.
[0041] A virtual environment is the virtual environment displayed (or provided) when the client is running on a terminal. This virtual environment can be a simulation of the real world, a semi-simulated and semi-imaginary environment, or a purely imaginary environment. This application does not limit this to any of the following: a two-dimensional virtual environment, a 2.5-dimensional virtual environment, or a three-dimensional virtual environment. The following embodiments illustrate a three-dimensional virtual environment.
[0042] Related technologies use a method of superimposing motion on a single object to design its motion. When users want to control an object to complete complex, multi-segment or multi-dimensional motion, they need to break it down into multiple, simpler motions. For example, to achieve a spiral motion from low to high, it needs to be broken down into circular motion and linear motion from low to high, and the speed and duration of the motion need to be constantly adjusted to achieve the desired effect.
[0043] The above solution is difficult for ordinary users and is not conducive to their further participation in the design of game content. How to design an object movement design method that makes it easier for users to operate is an urgent problem that needs to be solved. Based on this, this application provides a method for generating UGC in a game program. The detailed process is shown in the following exemplary embodiments.
[0044] Figures 1 and 2 are schematic diagrams of a computer system according to an exemplary embodiment of the present application. The computer system may include a terminal 110 and a server 120. The terminal 110 may be a laptop computer, a desktop computer, a mobile phone, a tablet computer, an e-book reader, or an electronic game console.
[0045] Terminal 110 includes memory and a processor; the memory may include one or more computer-readable storage media. The computer-readable storage media may include at least one of random access memory (RAM), read-only memory (ROM), and flash memory. An operating system and a game program are installed in the memory, and the game program is designed with an editor interface 140.
[0046] The game program may be any of level-breaking games, casual competitive games, MMOG (Massive Multiplayer Online Game) games, board games, MOBA (Multiplayer Online Battle Arena) games, SLG (Simulation Game) games, virtual reality applications, three-dimensional map programs, FPS (First-Person Shooting Game) games, multiplayer gunfight survival games, casual games, party games, and sandbox games.
[0047] An operating system (OS) is the underlying software that provides secure access to computer hardware for gaming programs. An OS can be either Android or iOS. It supports the downloading, installation, and running of gaming programs.
[0048] Optionally, the terminal 110 further includes a touch screen; the touch screen may be a capacitive screen or a resistive screen. The touch screen is used to enable interaction between the terminal and the user 130. In this embodiment of the present application, the terminal obtains, via the touch screen, interactive operations triggered by the user 130 on the editor interface 140 of the UGC editor in the game program.
[0049] Editor interface 140 allows user 130 to edit, save, and publish virtual environments. When editing virtual environments, user 130 can use virtual objects to build different virtual environments. The UGC editor allows user 130 to create moving objects to enrich the virtual environment, improving user usability and fun.
[0050] Terminal 110 is used by user 130. User 130 uses terminal 110 to operate editor interface 140. User 130 can save the virtual environment being edited or completed to terminal 110. Optionally, terminal 110 is used to upload the virtual environment information saved by user 130 to server 120; alternatively, terminal 110 is used to provide virtual environment and virtual object data to the game program; alternatively, terminal 110 is used to save movement point information.
[0051] In some embodiments, the computer system further includes a server 120, as shown in FIG2 . Server 120 can be any of a plurality of servers, a virtual cloud storage, or a cloud computing center. Optionally, server 120 is configured to store virtual environment information uploaded by terminal 110; alternatively, server 120 is configured to store movement point information uploaded by terminal 110; alternatively, server 120 is configured to provide virtual environment and virtual object data to the game program.
[0052] In some embodiments, the terminal 110 and the server 120 are connected via a wired or wireless network.
[0053] FIG3 shows a schematic diagram of a method for generating UGC in a game program provided by an exemplary embodiment of the present application, wherein the method is executed by a terminal, which may be a terminal as shown in FIG1 and FIG2. The method includes:
[0054] Step 210: Displaying the virtual object in the virtual environment in the editor interface of the UGC editor;
[0055] The terminal runs a game program, which has a UGC editor for customizing moving objects in a virtual environment. Users can create, edit, and customize content in the game program through the UGC editor.
[0056] The UGC editor provides an editor interface. The game program provides a virtual environment including virtual objects. The editor interface can display the virtual environment and the virtual objects in the virtual environment.
[0057] In some embodiments, a virtual environment screen is displayed in the editor interface of the UGC editor. The virtual environment screen is obtained by shooting the virtual environment with a camera model. The user can control the camera model through interactive operations on the touch screen to change the display effect of the virtual environment screen, such as changing the display angle of the virtual environment screen by adjusting the shooting angle of the camera model.
[0058] In some embodiments, the virtual object is a virtual object that supports motion.
[0059] In some embodiments, the virtual object is provided by the UGC editor; or, the virtual object is obtained by combining the virtual objects provided by the UGC editor by the user; or, the virtual object is generated by the UGC editor after the user imports an image into the UGC editor; or, the virtual object is a virtual object created by the user of the UGC editor and saved in a public library.
[0060] Step 220: In response to the motion point editing operation for the virtual object, setting a motion point for the virtual object in the virtual environment, where the motion point indicates a motion parameter of the virtual object on the motion path of the virtual environment;
[0061] The motion point editing operation refers to an operation for requesting to edit a motion point. For example, if the editor interface displays a motion point editing control, the motion point editing operation refers to a triggering operation on the motion point editing control.
[0062] Among them, a motion point refers to a spatial point on a motion path in a virtual environment, that is, a position on the motion path, and a virtual object can move along the motion path composed of multiple motion points. However, it should be noted that in the embodiment of the present application, the motion point not only indicates a spatial point, but also indicates the motion parameters at the spatial point. In other words, the motion point not only indicates a position, but also indicates the motion parameters at the position. It can be understood that the motion point carries motion parameters, and the motion parameters indicate the mode of motion, such as moving direction, moving speed, rotation angle, and scaling ratio.
[0063] Among them, the movement point set in the embodiment of the present application can be one or more, for example, at least two movement points are set.
[0064] In some embodiments, a motion point is referred to as a waypoint. However, unlike a traditional waypoint which merely represents a coordinate, a motion point is used to indicate motion parameters of a spatial point on a motion path of a virtual object in a virtual environment.
[0065] In some embodiments, the moving point in the virtual environment is displayed as a simple graphic; or, the moving point in the virtual environment is displayed as a virtual object replica; or, the moving point in the virtual environment is displayed as a virtual object replica shrunk to a first threshold; or, the moving point in the virtual environment is displayed as a combination of a simple graphic and a virtual object replica shrunk to a first threshold, where the first threshold is a positive number less than 1.
[0066] Illustratively, the moving point in the virtual environment is displayed as a black sphere; or, the moving point in the virtual environment is displayed as a copy of a virtual object, which is obtained by proportionally copying the virtual object; or, the moving point in the virtual environment is displayed as a copy of the virtual object that is 0.5 times smaller; or, the moving point in the virtual environment is displayed as a copy of the virtual object that is 0.5 times smaller and is surrounded by a black hollow sphere.
[0067] In some embodiments, in response to a motion point editing operation on a virtual object, auxiliary information is displayed in an editor interface of a UGC editor.
[0068] The auxiliary information includes at least one of a starting point identifier, a motion line, a selected motion point, or an unselected motion point. The starting point identifier is the identifier of the first motion point; the motion line is a dashed line connecting adjacent motion points; a selected motion point is a selected motion point, and an unselected motion point is an unselected motion point. The selected motion point is highlighted compared to the unselected motion point, for example, with a highlighted border; the unselected motion point is displayed as semi-transparent.
[0069] In some embodiments, the motion point is a position point on the motion path of the virtual object in the virtual environment. The motion point indicates the motion parameters of the virtual object when it moves to the position point. The motion parameters include at least one of coordinate parameters, rotation parameters or scaling parameters.
[0070] Step 230: Based on the motion point, control the virtual object to move in the virtual environment.
[0071] Controlling the movement of a virtual object in the virtual environment so that the virtual object passes through a movement point during its movement. For example, if there are multiple movement points, a movement path formed by sequentially connecting the multiple movement points is determined, and the virtual object is controlled to move along the movement path in the virtual environment.
[0072] In some embodiments, the movement of a virtual object in a virtual environment is controlled based on the movement parameters of at least two movement points.
[0073] In some embodiments, the motion parameters include coordinate parameters, which are used to describe the position of the virtual object in the virtual environment. For example, the coordinate parameters can be three-dimensional coordinates or two-dimensional coordinates. Based on the coordinate parameters of at least two motion points, the virtual object is controlled to move along the shortest path between adjacent motion points; or, based on the coordinate parameters of at least two motion points, in response to a path smoothing operation, the virtual object is controlled to move along a smooth curve between adjacent motion points; or, based on the coordinate parameters of at least two motion points, in response to a motion path setting operation, the virtual object is controlled to move along a motion path. The motion path includes the at least two motion points, and the motion path is the motion path provided by the UGC editor, or the motion path is the motion path obtained by the user adjusting the motion path provided by the UGC editor.
[0074] In some embodiments, the motion parameters include rotation parameters, which are used to describe the rotational posture of the virtual object in the virtual environment. For example, the rotation parameters include angles and directions. Based on the rotation parameters of at least two motion points, the rotation parameters of the virtual object are controlled to gradually change from the rotation parameters of the i-th motion point to the rotation parameters of the i+1-th motion point when the virtual object moves between adjacent motion points; or, based on the rotation parameters of at least two motion points, in response to an automatic rotation operation for the i-th motion point, the rotation parameters of the virtual object at the i-th motion point are controlled to change to the rotation parameters when it is directed toward the i+1-th motion point; or, based on the rotation parameters of at least two motion points, the rotation parameters of the virtual object at the i-th motion point are controlled to change to the rotation parameters of the i+1-th motion point; or, based on the rotation parameters of at least two motion points, in response to a rotation curve setting operation, the virtual object is controlled to rotate according to the rotation curve. Wherein, the rotation curve is a rotation curve provided by the UGC editor, or the rotation curve is a rotation curve obtained by the user adjusting the rotation curve provided by the UGC editor, and i is a positive integer.
[0075] In some embodiments, the motion parameters include scaling parameters, which are used to describe the size change of the virtual object in the virtual environment and reflect the effect of enlarging or shrinking the virtual object in various directions. For example, the scaling parameters include a scaling ratio, etc. Based on the scaling parameters of at least two motion points, the scaling parameters of the virtual object are controlled to gradually change from the scaling parameters of the i-th motion point to the scaling parameters of the i+1-th motion point when the virtual object moves between adjacent motion points; or, based on the scaling parameters of at least two motion points, when the virtual object moves to the i-th motion point, the scaling parameters of the virtual object are controlled to change to the scaling parameters of the i-th motion point; or, based on the scaling parameters of at least two motion points, in response to the setting operation of the scaling curve, the virtual object is controlled to scale according to the scaling curve. The scaling curve is a scaling curve provided by the UGC editor, or the scaling curve is a scaling curve obtained by the user adjusting the scaling curve provided by the UGC editor.
[0076] In summary, the method provided by the embodiments of the present application allows users to control the movement of virtual objects in a virtual environment based on the movement points by editing the movement points. By editing the movement points, the complex movement of the virtual object in the virtual environment is broken down into simple movements between multiple movement points, allowing users without relevant experience to quickly learn how to control the movement of virtual objects in the virtual environment.
[0077] The editing operation for the motion point includes at least one of an adding operation and an editing operation. In an optional embodiment based on FIG3 , as shown in FIG4 , step 220 can be replaced by steps 221 and 222 .
[0078] Step 221: In response to the operation of adding a motion point for the virtual object, add at least two motion points for the virtual object in the virtual environment;
[0079] In some embodiments, the adding motion point operation includes at least two of a adding motion point operation and a copying motion point operation.
[0080] In some embodiments, a virtual object may have n motion points, where n is a positive integer.
[0081] Step 222: In response to an editing operation on the i-th moving point among the at least two moving points, setting a motion parameter of the virtual object at the i-th moving point.
[0082] The motion parameter includes at least one of a coordinate parameter, a rotation parameter or a scaling parameter of the virtual object at the i-th motion point, where i is a positive integer.
[0083] In some embodiments, the editing operation on the motion point includes at least one of a moving operation, a rotating operation, or a scaling operation.
[0084] In some embodiments, the editing operation on the motion point may change the motion parameters of the motion point. That is, the editing operation on the motion point refers to the editing operation on the motion parameters of the motion point.
[0085] Exemplarily, the movement operation on the moving point is used to set the coordinate parameters of the moving point; or, the rotation operation on the moving point is used to set the rotation parameters of the moving point; or, the scaling operation on the moving point is used to set the scaling parameters of the moving point.
[0086] In some embodiments, the motion parameters of a moving point indicate the motion state of a virtual object when it moves to the moving point, and the motion state includes at least one of three-dimensional coordinates, a rotational attitude, or a scaling ratio. The motion parameters indicate the three-dimensional coordinates of the virtual object; the rotation parameters indicate the rotational attitude of the virtual object; and the scaling parameters indicate the scaling ratio of the virtual object.
[0087] In some embodiments, the expression form of the motion parameters is at least one of a coordinate form, a numerical form, a string form, and a set form. It should be noted that, for the convenience of representation, the embodiment of the present application abstracts the expression form of the motion parameters into a coordinate form, for example, the coordinate parameters are (14, 8, 54), the rotation parameters are (0, 25, 81), and the scaling parameters are (1, 5, 0.5). Among them, the coordinate origins of the virtual objects are all (0, 0, 0). The coordinate parameters (14, 8, 54) of the moving point indicate that when the virtual object is at the moving point, it has moved 14 units in the positive x-axis direction relative to the coordinate origin, 8 units in the positive y-axis direction relative to the coordinate origin, and 54 units in the positive z-axis direction relative to the coordinate origin. The rotation parameters (0, 25, -81) of the moving point indicate that when the virtual object is at the moving point, it has deflected 25 degrees in the positive y-axis direction relative to the coordinate origin, and deflected 81 degrees in the negative z-axis direction relative to the coordinate origin. The scaling parameter (1, -5, 0.5) of the moving point indicates that when the virtual object is at the moving point, the size of the virtual object in the positive x-axis direction relative to the coordinate origin is 1 times the preset value, that is, the preset value multiplied by 1, the size in the negative y-axis direction relative to the coordinate origin is 5 times the preset value, and the size in the positive z-axis direction relative to the coordinate origin is 0.5 times the preset value. Among them, the preset value of the scaling parameter in the x-axis is the length of the virtual object, the preset value in the y-axis is the width of the virtual object, and the preset value in the z-axis is the height of the virtual object.
[0088] In some embodiments, step 221 can be implemented as an independent embodiment; step 222 can be implemented as an independent embodiment. Step 221 and step 222 can be exchanged in order or performed simultaneously.
[0089] To sum up, the method provided in the embodiment of the present application splits the editing operation of motion points into adding motion points and editing motion points. By adding motion points, the movement of virtual objects in the virtual environment is split into movements on multiple motion points, and then the motion parameters of the motion points are edited to indicate how the virtual object moves on each motion point, thereby realizing complex movements by combining the movements between multiple motion points.
[0090] In an optional embodiment based on FIG. 4 , as shown in FIG. 5 , the method further includes step 240 .
[0091] Step 240: In response to the operation of setting the motion mode of the virtual object to the motion point motion mode, a first motion point is generated according to the coordinate parameters, rotation parameters and scaling parameters of the virtual object in the virtual environment.
[0092] The coordinate parameter represents the three-dimensional coordinate of the virtual object in the virtual environment, the rotation parameter represents the rotational posture of the virtual object in the virtual environment, and the scaling parameter represents the scaling ratio of the virtual object in the virtual environment.
[0093] In some embodiments, the coordinate parameters, rotation parameters, and scaling parameters of the virtual object in the virtual environment are preset by the UGC editor; or, the coordinate parameters, rotation parameters, and scaling parameters of the virtual object in the virtual environment are obtained after adjustment by the user.
[0094] In some embodiments, the first movement point has a starting point marker, which is illustratively a flag, a highlighted simple shape, or an icon.
[0095] To sum up, the method provided in the embodiment of the present application automatically generates the first motion point, i.e., the starting point, according to the current state of the virtual object when the user sets the motion mode of the virtual object to the motion point motion mode, without the user having to search for controls to create it, thereby improving the user's editing efficiency and the friendliness of the game program.
[0096] In an optional embodiment based on FIG. 4 , as shown in FIG. 6 , step 221 may be implemented alternatively as at least one of step 2211 or step 2212 .
[0097] Step 2211: When the virtual object already has n motion points, in response to a new motion point operation for the virtual object, an n+1th motion point is added to the virtual object in the virtual environment, and the n+1th motion point is the next motion point of the nth motion point; wherein n is a positive integer.
[0098] The (n+1)th moving point being the next moving point of the (n)th moving point means that after the virtual object moves to the (n)th moving point, the next moving point to which the virtual object needs to move is the (n+1)th moving point.
[0099] In some embodiments, the motion parameters of the n+1th motion point in the virtual environment are the same as those of the nth motion point; or, the rotation parameters and scaling parameters of the n+1th motion point in the virtual environment are the same as those of the nth motion point, and the coordinate parameters of the n+1th motion point are the sum of the coordinate parameters of the nth motion point and the offset coordinate parameters; or, the motion parameters of the n+1th motion point in the virtual environment are the preset motion parameters of the virtual object; or, the rotation parameters and scaling parameters of the n+1th motion point in the virtual environment are the preset rotation parameters and preset scaling parameters of the virtual object, and the coordinate parameters of the n+1th motion point are the sum of the coordinate parameters of the nth motion point and the offset coordinate parameters.
[0100] In some embodiments, the offset coordinate parameter is a coordinate parameter offset toward the positive half-axis of the x-axis; or, the offset coordinate parameter is a coordinate parameter offset toward the negative half-axis of the x-axis; or, the offset coordinate parameter is a coordinate parameter offset toward the positive half-axis of the y-axis; or, the offset coordinate parameter is a coordinate parameter offset toward the negative half-axis of the y-axis; or, the offset coordinate parameter is a coordinate parameter offset toward the positive half-axis of the z-axis; or, the offset coordinate parameter is a coordinate parameter offset toward the negative half-axis of the z-axis; or, the offset coordinate parameter is a coordinate parameter offset toward the positive half-axis of the x-axis and the positive half-axis of the y-axis; or, the offset coordinate parameter is a coordinate parameter offset toward the positive half-axis of the x-axis and the positive half-axis of the z-axis; or, the offset coordinate parameter is a coordinate parameter offset toward the positive half-axis of the y-axis and the positive half-axis of the z-axis; or, the offset coordinate parameter is a coordinate parameter offset toward the positive half-axis of the x-axis, the positive half-axis of the y-axis, and the positive half-axis of the z-axis. It should be noted that the embodiment of the present application only lists the offset directions of some offset coordinate parameters, and the embodiment of the present application no longer lists the offset directions of the remaining offset coordinate parameters one by one, but the protection scope of the present application is not limited to this.
[0101] In some embodiments, the offset value of the offset coordinate parameter is a preset value; or, the offset value of the offset coordinate parameter is a value set by the user.
[0102] Exemplarily, the offset direction of the offset coordinate parameter is toward the positive half axis of the y-axis, the offset value of the offset coordinate parameter is a preset value of 20, and the offset coordinate parameter is (0, 20, 0); or, the offset direction of the offset coordinate parameter is toward the positive half axis of the x-axis and the positive half axis of the y-axis, the offset value of the offset coordinate parameter in the x-axis direction is a preset value of 20, the offset value in the y-axis direction is a preset value of 10, and the offset coordinate parameter is (20, 10, 0); or, the offset direction of the offset coordinate parameter is toward the negative half axis of the x-axis and the positive half axis of the y-axis, the offset value of the offset coordinate parameter in the x-axis direction is a user-set value of 50, the offset value in the y-axis direction is a user-set value of 30, and the offset coordinate parameter is (-50, 30, 0).
[0103] For example, the rotation parameters of the nth moving point are (0, 20, 0), the scaling parameters are (1, 2, 2), and the coordinate parameters are (10, 20, 0); the preset rotation parameters of the virtual object are (0, 0, 0), the preset scaling parameters are (0, 0, 0), and the preset coordinate parameters are (0, 0, 0); and the offset coordinate parameters are (0, 20, 0). Then, the rotation parameters of the n+1th moving point are the rotation parameters of the nth moving point (0, 20, 0), the scaling parameters of the n+1th moving point are the scaling parameters of the nth moving point (1, 2, 2), and the coordinate parameters of the n+1th moving point are the coordinate parameters of the nth moving point (10, 20, 0); or, the rotation parameters of the n+1th moving point are the rotation parameters of the nth moving point (0, 20, 0), the scaling parameters of the n+1th moving point are the scaling parameters of the nth moving point (1, 2, 2), and the coordinate parameters of the n+1th moving point are the coordinate parameters of the nth moving point (10, 20, 0). The coordinate parameters of the n+1th moving point are the sum of the coordinate parameters of the nth moving point (10, 20, 0) and the offset coordinate parameters (0, 20, 0), then the coordinate parameters of the n+1th moving point are (10, 40, 0); or, the rotation parameters of the n+1th moving point are the preset rotation parameters of the virtual object (0, 0, 0), the scaling parameters of the n+1th moving point are the preset scaling parameters of the virtual object (0, 0, 0), and the coordinate parameters of the n+1th moving point are the preset coordinate parameters of the virtual object (0, 0, 0).
[0104] For example, as shown in the schematic diagram (1) in FIG7 , the editor interface includes at least one of a virtual environment screen 910 and a motion point editing area 920. The virtual environment screen 910 displays two motion points of a virtual object, namely, a starting point and waypoint 1. The starting point is displayed as motion point 911 in the virtual environment, and waypoint 1 is displayed as motion point 912 in the virtual environment. The coordinate parameters of motion point 912 are (10, 20, 0). The motion point editing area 920 displays a motion point control 921 for the starting point and a motion point control 922 for waypoint 1. When the user clicks on the new motion point control 923 to add a new motion point, as shown in schematic diagram (2), a motion point control 925 for waypoint 2 is added to the motion point editing area 920, and a new motion point 913 is added to the virtual environment screen 910. The rotation parameters and scaling parameters of motion point 913 are equal to the rotation parameters and scaling parameters of motion point 912, the offset coordinate parameters are (0, 20, 0), and the coordinate parameters of motion point 913 are (10, 40, 0).
[0105] Step 2212: When the virtual object already has n motion points, in response to the copy motion point operation for the i-th motion point of the virtual object, a motion point is inserted between the i-th motion point and the i+1-th motion point among the n motion points to obtain n+1 motion points of the virtual object.
[0106] The inserted motion point is the i+1th motion point among the n+1 motion points, and the i+1th motion point among the n motion points is subsequently the i+2th motion point among the n+1 motion points, where i is a positive integer less than n.
[0107] In some embodiments, in response to a copy motion point operation on an nth motion point of a virtual object, a motion point is inserted after the nth motion point to obtain n+1 motion points of the virtual object.
[0108] In some embodiments, the rotation parameters and scaling parameters of the inserted i+1th motion point are the same as those of the i-th motion point, and the coordinate parameters of the i+1th motion point are the sum of the coordinate parameters of the i-th motion point and the offset coordinate parameters; or, the motion parameters of the i+1th motion point in the virtual environment are the preset motion parameters of the virtual object; or, the rotation parameters and scaling parameters of the i+1th motion point in the virtual environment are the preset rotation parameters and preset scaling parameters of the virtual object, and the coordinate parameters of the i+1th motion point are the sum of the coordinate parameters of the i-th motion point and the offset coordinate parameters.
[0109] Schematically, as shown in the schematic diagram (2) of FIG7 , there are three motion points in the editor interface, namely, the starting point, waypoint 1, and waypoint 2. The starting point is displayed as motion point 911 in the virtual environment screen 910, waypoint 1 is displayed as motion point 912, and waypoint 2 is displayed as motion point 913; the motion point editing area 920 displays a motion point control 921 for the starting point, a motion point control 922 for waypoint 1, and a motion point control 925 for waypoint 2. When the user clicks the motion point control 921 for the starting point and then clicks the copy current motion point control 924, the virtual environment screen displays the newly added motion point 914, and the waypoint editing area 920 adds a motion point control 926 for waypoint 3 between the starting point and waypoint 1. The rotation parameters and scaling parameters of the newly added motion point 914 are the same as those of the copied motion point 911, and the coordinate parameters of the motion point 914 are the sum of the coordinate parameters of the motion point 911 and the offset coordinate parameters. When the user clicks the motion point control 921 at the starting point, the motion point 911 in the virtual environment screen 910 is displayed as selected.
[0110] In some embodiments, step 2211 can be implemented as an independent embodiment; step 2212 can be implemented as an independent embodiment. Step 2211 and step 2212 can be exchanged in order or performed simultaneously.
[0111] To sum up, the method provided in the embodiment of the present application divides the adding of motion points into adding new motion points and copying motion points. The motion parameters of the added motion points are preset values, and the motion parameters of the copied motion points are the motion parameters of the copied motion points. Users can choose the method of adding motion points according to their needs. The operation is simple and can meet the user's needs for adding motion points in a variety of ways.
[0112] In an optional embodiment based on FIG. 4 , as shown in FIG. 8 , step 222 may be implemented alternatively as at least one of steps 310 to 370 .
[0113] Step 310 includes at least one of the following three steps:
[0114] Step 311: Displaying the movement control and the copy of the virtual object at the i-th movement point in the editor interface;
[0115] Step 312: Displaying the rotation control and the copy of the virtual object at the i-th motion point in the editor interface;
[0116] Step 313: Display the zoom control and the copy of the virtual object at the i-th motion point in the editor interface.
[0117] With respect to the mobile control and the virtual object copy of the i-th moving point displayed in step 311 , step 222 may be replaced by steps 320 to 330 .
[0118] Step 320: When the i-th motion point is in the selected state, in response to a trigger operation on the movement control, three coordinate axis movement lines are displayed with the reference point on the virtual object copy as the center;
[0119] In some embodiments, the i-th moving point is in a selected state, and the virtual object copy of the i-th moving point has a highlighted border; or, the i-th moving point is in a selected state, and the virtual object copy of the i-th moving point has a bold border.
[0120] In some embodiments, as shown in FIG9 , a control display area 930 is displayed in the virtual environment screen 910 . In response to a click operation on a mobile control 931 in the control display area 930 , three coordinate axis movement lines 915 are displayed with a reference point on the virtual object copy as the center.
[0121] Step 330: In response to the operation of moving the virtual object copy along any coordinate axis movement line, the coordinate parameters of the virtual object copy in the virtual environment are changed, and the changed coordinate parameters are determined as the coordinate parameters of the virtual object at the i-th movement point.
[0122] Among them, the coordinate parameters of the virtual object copy in the virtual environment represent the three-dimensional coordinates of the virtual object copy in the virtual environment. When the virtual object copy moves along any coordinate axis movement line, the three-dimensional coordinates of the virtual object copy in the virtual environment change, and then the coordinate parameters of the virtual object copy in the virtual environment change.
[0123] In some embodiments, the coordinate parameters of the virtual object copy in the virtual environment are relative to the world coordinate system; or, the coordinate parameters of the virtual object copy in the virtual environment are relative to the first moving point; or, the coordinate parameters of the virtual object copy in the virtual environment are relative to the i-1th moving point.
[0124] For example, the coordinate parameters of the virtual object copy in the virtual environment are relative to the world coordinate system, the origin of the world coordinate system is (0, 0, 0), and the coordinate parameters of the virtual object copy of the i-th moving point are (10, 0, 20), indicating that the virtual object copy is at the coordinates (10, 0, 20) in the world coordinate system; or, the coordinate parameters of the virtual object copy in the virtual environment are relative to the first moving point, the position of the first moving point is the origin (0, 0, 0), and the coordinate parameters of the virtual object copy of the i-th moving point are ( 10, 0, 20), indicating that the virtual object copy is at a position with coordinates (10, 0, 20) in a coordinate system with the position of the first moving point as the origin; or, the coordinate parameters of the virtual object copy in the virtual environment are relative to the i-1th moving point, the position of the i-1th moving point is the origin (0, 0, 0), and the coordinate parameters of the virtual object copy of the i-th moving point are (10, 0, 20), indicating that the virtual object copy is at a position with coordinates (10, 0, 20) in a coordinate system with the position of the i-1th moving point as the origin.
[0125] With respect to the rotation control and the virtual object copy of the i-th motion point displayed in step 312 , step 222 may be implemented alternatively as steps 340 to 350 .
[0126] Step 340: When the i-th motion point is in the selected state, in response to a trigger operation on the rotation control, three coordinate axis rotation lines are displayed with the reference point on the virtual object copy as the center;
[0127] In some embodiments, the i-th moving point is in a selected state, and the virtual object copy of the i-th moving point has a highlighted border; or, the i-th moving point is in a selected state, and the virtual object copy of the i-th moving point has a bold border.
[0128] In some embodiments, as shown in FIG10 , a control display area 930 is displayed in the virtual environment screen 910 . In response to a click operation on a rotation control 932 in the control display area 930 , three coordinate axis rotation lines 916 are displayed with a reference point on the virtual object copy as the center.
[0129] Step 350: In response to the operation of rotating the virtual object copy along any coordinate axis rotation line, the rotation parameters of the virtual object copy in the virtual environment are changed, and the changed rotation parameters are determined as the rotation parameters of the virtual object at the i-th movement point.
[0130] Among them, the rotation parameters of the virtual object copy in the virtual environment represent the rotation posture of the virtual object copy in the virtual environment. When the virtual object copy rotates along any coordinate axis moving line, the rotation posture of the virtual object copy in the virtual environment changes, and then the rotation parameters of the virtual object copy in the virtual environment change.
[0131] In some embodiments, the rotation parameters of the virtual object copy in the virtual environment are relative to the world coordinate system; or, the rotation parameters of the virtual object copy in the virtual environment are relative to the first movement point; or, the rotation parameters of the virtual object copy in the virtual environment are relative to the i-1th movement point.
[0132] Exemplarily, the rotation parameters of the virtual object copy in the virtual environment are relative to the world coordinate system, the origin of the world coordinate system is (0°, 0°, 0°), and the rotation parameters of the virtual object copy of the i-th moving point are (10°, 0°, 20°), indicating that the virtual object copy is deflected by 10 degrees relative to the plane corresponding to the x-axis in the world coordinate system, 0 degrees relative to the plane corresponding to the y-axis, and 20 degrees relative to the plane corresponding to the z-axis; or, the rotation parameters of the virtual object copy in the virtual environment are relative to the first moving point, the rotation parameters of the first moving point are the origin (0°, 0°, 0°), and the rotation parameters of the virtual object copy of the i-th moving point are (10°, 0°, 20°), indicating that the virtual object copy In the coordinate system with the rotation parameters of the first moving point as the origin, the virtual object copy is deflected by 10 degrees relative to the plane corresponding to the x-axis, deflected by 0 degrees relative to the plane corresponding to the y-axis, and deflected by 20 degrees relative to the plane corresponding to the z-axis; or, the rotation parameters of the virtual object copy in the virtual environment are relative to the i-1th moving point, the rotation parameters of the i-1th moving point are the origin (0°, 0°, 0°), and the rotation parameters of the virtual object copy of the i-1th moving point are (10°, 0°, 20°), indicating that the virtual object copy is deflected by 10 degrees relative to the plane corresponding to the x-axis, deflected by 0 degrees relative to the plane corresponding to the y-axis, and deflected by 20 degrees relative to the plane corresponding to the z-axis in the coordinate system with the rotation parameters of the i-1th moving point as the origin.
[0133] With respect to the zoom control and the virtual object copy of the i-th moving point displayed in step 313 , step 222 may be implemented alternatively as steps 360 to 370 .
[0134] Step 360: When the i-th motion point is in the selected state, in response to a trigger operation on the zoom control, three coordinate axis zoom lines are displayed with the reference point on the virtual object copy as the center;
[0135] In some embodiments, the i-th moving point is in a selected state, and the virtual object copy of the i-th moving point has a highlighted border; or, the i-th moving point is in a selected state, and the virtual object copy of the i-th moving point has a bold border.
[0136] In some embodiments, as shown in FIG11 , a control display area 930 is displayed in the virtual environment screen 910 . In response to a click operation on a zoom control 933 in the control display area 930 , three coordinate axis zoom lines 917 are displayed centered on a reference point on the virtual object copy.
[0137] Step 370: In response to a dragging operation along any coordinate axis scaling line, the scaling parameter of the virtual object copy in the coordinate axis dimension of the coordinate axis scaling line is changed, and the changed scaling parameter is determined as the scaling parameter of the virtual object at the i-th moving point.
[0138] Among them, the scaling parameter of the virtual object copy in the virtual environment represents the scaling ratio of the virtual object copy in the virtual environment. After performing the operation of dragging along the scaling line of any coordinate axis, the scaling ratio of the virtual object copy in the virtual environment changes, and then the scaling parameter of the virtual object copy in the virtual environment changes.
[0139] In some embodiments, the scaling parameters of the virtual object copy in the coordinate axis dimension of the coordinate axis scaling line are relative to the first moving point; or, the scaling parameters of the virtual object copy in the coordinate axis dimension of the coordinate axis scaling line are relative to the i-1th moving point.
[0140] For example, there are three coordinate axis scaling lines: x-axis, y-axis, and z-axis. These three scaling lines correspond to the length, width, and height directions of the virtual object, respectively. The scaling parameters of the coordinate axis dimensions corresponding to the coordinate axis scaling lines of the virtual object copy are relative to the first moving point. The scaling parameters of the first moving point are (1, 1, 1), and the scaling parameters of the virtual object copy of the i-th moving point are (1, 0.8, -2), indicating that the virtual object copy is 1 times the length of the first moving point in the positive semi-axis direction of the x-axis, 0.8 times the width of the first moving point in the positive semi-axis direction of the y-axis, and 2 times the length of the first moving point in the negative semi-axis direction of the z-axis; or, the virtual object The scaling parameters of the coordinate axis dimension corresponding to the coordinate axis scaling line of the copy are relative to the i-1th moving point. The scaling parameters of the i-1th moving point are (1, 1, 1), and the scaling parameters of the virtual object copy of the i-th moving point are (1, 0.8, -2), which means that the virtual object copy is 1 times the length of the i-1th moving point in the positive semi-axis direction of the x-axis, 0.8 times the width of the i-1th moving point in the positive semi-axis direction of the y-axis, and 2 times the length of the i-1th moving point in the negative semi-axis direction of the z-axis.
[0141] In summary, the method provided in the embodiments of the present application divides editing of motion points into movement, rotation, and scaling operations. Specifically, the coordinate parameters of the motion point are adjusted by moving the virtual object copy at the motion point, the rotation parameters of the motion point are adjusted by rotating the virtual object copy at the motion point, and the scaling parameters of the motion point are adjusted by scaling the virtual object copy at the motion point. These editing operations change the motion parameters of the object when it moves to the motion point, making the movement of the virtual object in the virtual scene more diverse.
[0142] In an optional embodiment based on FIG. 4 , as shown in FIG. 12 , the method further includes step 250 .
[0143] Step 250: In response to the duration setting operation, set the movement duration of the virtual object from the i-th movement point to the (i+1)-th movement point.
[0144] In some embodiments, the exercise duration is preset by the UGC editor; or, the exercise duration is set by the user.
[0145] For example, the UGC editor presets the movement time of the virtual object from the i-th movement point to the i+1-th movement point to be 2 seconds; or, the user performs a duration setting operation, and the movement time of the virtual object from the i-th movement point to the i+1-th movement point is 0.8 seconds.
[0146] In some embodiments, in response to an editing operation on the i-th motion point, a motion point control of the i-th motion point is displayed on the editor interface, and a duration input box is displayed on the motion point control of the i-th motion point.
[0147] For example, as shown in the schematic diagram (1) in Figure 7, a motion point editing area 920 is displayed in the editor interface, and a motion point control 921 of the starting point and a motion point control 922 of waypoint 1 are displayed in the motion point editing area 920. A duration input box 927 is displayed on the motion point control 921 of the starting point for inputting the duration of movement from the starting point to waypoint 1.
[0148] In some embodiments, in response to an operation of inputting a duration in the duration input box, the movement duration of the virtual object from the i-th movement point to the (i+1)-th movement point is set to the input duration.
[0149] For example, if the user inputs 0.8 in the duration input box displayed on the motion point control of the i-th motion point, the duration for the virtual object to move from the i-th motion point to the (i+1)-th motion point is set to 0.8 seconds.
[0150] To sum up, the method provided in this application controls the movement speed of a virtual object between two movement points by setting the movement duration, which can enable users to more intuitively feel the duration and speed of the virtual object's movement in the virtual environment, and can change the movement speed of the virtual object by modifying the movement duration.
[0151] In an optional embodiment based on FIG. 4 , as shown in FIG. 13 , the method further includes at least one of steps 410 to 450 .
[0152] Step 410: In response to the motion cycle mode setting operation, setting the motion cycle mode of the virtual object;
[0153] Among them, the motion cycle mode includes at least one of a one-way motion mode, a continuous one-way motion mode or a reciprocating motion mode. The one-way motion mode is a mode of moving from the first motion point to the last motion point in sequence. The continuous one-way motion mode is a continuous motion mode of moving from the first motion point to the last motion point in sequence, and then moving from the first motion point to the last motion point in sequence again; the reciprocating motion mode is a reciprocating motion mode of moving from the first motion point to the last motion point in sequence, and then returning from the last motion point to the previous motion point until returning to the first motion point.
[0154] For example, as shown in FIG9 , a virtual object detail area 940 is displayed in the editor interface, and a motion cycle mode setting control 941 is displayed in the virtual object detail area 940 . After clicking the motion cycle mode setting control 941 , a drop-down bar 942 is displayed, and the drop-down bar is used to display the motion cycle mode.
[0155] Step 420: In response to the automatic rotation operation for the i-th moving point, setting the rotation parameter of the virtual object at the i-th moving point to the rotation parameter when it faces the i+1-th moving point;
[0156] Exemplarily, the rotation parameters of the i-th motion point are (0°, 20°, 20°), and the rotation parameters of the virtual object when facing the i+1-th motion point are (50°, 10°, 0°); in response to the automatic rotation operation for the i-th motion point, the rotation parameters of the virtual object at the i-th motion point are set to be (50°, 10°, 0°) when facing the i+1-th motion point.
[0157] Step 430: In response to the speed smoothing operation for the intermediate motion point, setting the speed change process of the virtual object when switching between the two motion paths before and after the intermediate motion point to a smooth change;
[0158] For example, there are three moving points, the movement duration of the first moving point is 2 seconds, and the movement duration of the second moving point is 8 seconds; the shortest distance between the first moving point and the second moving point is 2 meters, and the shortest distance between the second moving point and the third moving point is 2 meters. When the speed smoothing operation is not performed on the second moving point, the speed of the virtual object when it moves from the first moving point to the second moving point is 1 meter per second. When the virtual object starts to move from the second moving point to the third moving point, the speed will suddenly change to 0.25 meters per second. When the speed smoothing operation is performed on the second moving point, the speed of the virtual object when it moves from the first moving point to the second moving point is 1 meter per second in the first second, the speed when it moves from the first moving point to the second moving point is 0.5 meters per second in the second second, and the speed when the virtual object moves from the second moving point to the third moving point is 0.25 meters per second in the first second.
[0159] Step 440: In response to the path smoothing operation for the intermediate motion point, setting the path change process of the virtual object when switching between the two motion paths before and after the intermediate motion point to a smooth change;
[0160] For example, as shown in FIG14 , there are three moving points, and the positions of the three moving points are shown in schematic diagrams (1) and (2). When the path smoothing operation is not set for the second moving point, as shown in schematic diagram (1), when the virtual object moves from the first moving point to the second moving point and from the second moving point to the third moving point, it will move along the straight line between the two moving points (i.e., the shortest path between the two moving points); when the path smoothing operation is performed on the second moving point, as shown in schematic diagram (2), when the virtual object moves from the first moving point to the second moving point and from the second moving point to the third moving point, it will move along a curve.
[0161] Step 450: Display the speed curve setting control from the i-th moving point to the i+1-th moving point, and in response to the setting operation of the speed curve setting control, set the speed curve of the virtual object in the process of moving from the i-th moving point to the i+1-th moving point; wherein i is a positive integer.
[0162] In some embodiments, the editor interface displays a speed curve setting control from the i-th motion point to the (i+1)-th motion point.
[0163] In some embodiments, the speed curve is a curve formula input by a user; or, the speed curve is a curve obtained by adjusting the speed curve provided by the UGC editor by the user, and the speed curve is represented by the curve formula.
[0164] For example, there are 2 moving points, the movement duration of the first moving point is 2 seconds, and the distance between the first moving point and the second moving point is 2 meters; the speed curve set by the user is y=x+0.5, and the initial velocity of the virtual object when moving from the first moving point to the second moving point is 0.5 m / s, the velocity in the first second of moving from the first moving point to the second moving point is 1.5 m / s, and the velocity in the second second of moving from the first moving point to the second moving point is 2.5 m / s.
[0165] In some embodiments, in response to the setting operation of the motion start signal, a start signal for starting the movement of the virtual object is set.
[0166] In some embodiments, the start signal is that the coordinate parameters of the virtual object reach a preset value; or, the start signal is that the rotation parameters of the virtual object reach a preset value; or, the start signal is that the scaling ratio of the virtual object reaches a preset value; or, the start signal is a fixed time, which is a preset value, or, the fixed time is set by the user.
[0167] For example, the start signal is that the coordinate parameters of the virtual object are within range A, then when the coordinate parameters of the virtual object are within range A, the virtual object starts to move; or, the start signal is that the virtual object appears in the virtual environment screen for a duration of 2 seconds, then when the virtual object appears in the virtual environment screen for a duration of 2 seconds, the virtual object starts to move.
[0168] In some embodiments, in response to the setting operation of the motion stop signal, a stop signal for stopping the movement of the virtual object is set.
[0169] In some embodiments, the stop signal is when the coordinate parameters of the virtual object reach a preset value; or, the stop signal is when the rotation parameters of the virtual object reach a preset value; or, the stop signal is when the scaling ratio of the virtual object reaches a preset value; or, the stop signal is a fixed time, which is a preset value, or, the fixed time is set by the user.
[0170] In some embodiments, step 410, step 420, step 430, step 440 and step 450 are optional. In different embodiments, one or more of these steps may be omitted or replaced. Step 410, step 420, step 430, step 440 and step 450 may be exchanged in order or executed simultaneously.
[0171] Step 410 may be implemented as an independent embodiment; step 420 may be implemented as an independent embodiment; step 430 may be implemented as an independent embodiment; step 440 may be implemented as an independent embodiment; step 450 may be implemented as an independent embodiment; step 410 and step 420 may be implemented as independent embodiments; step 420 and step 430 may be implemented as independent embodiments; step 430 and step 440 may be implemented as independent embodiments; step 410, step 420, step 430 and step 440 may be implemented as independent embodiments; step 410, step 420, step 430 and step 440 may be implemented as independent embodiments; but is not limited thereto.
[0172] To sum up, the method provided in the embodiment of the present application provides users with a variety of setting operations for motion points. Users can set motion points by simply triggering different setting controls. These settings can control the movement of virtual objects in the virtual environment to be more natural and in line with kinematics. These settings can be implemented with simple trigger operations, allowing users to quickly realize complete and logical movement of virtual objects in the virtual environment.
[0173] In an optional embodiment based on FIG. 4 , as shown in FIG. 15 , the method further includes step 260 .
[0174] Step 260 : In response to the motion preview operation for the i-th motion point to the (i+1)-th motion point, display a motion preview animation for the i-th motion point to the (i+1)-th motion point.
[0175] Among them, when the rotation parameters of the i-th moving point and the i+1-th moving point are different, the motion preview animation displays a gradual rotation motion of the shortest rotation path from the rotation parameter of the i-th moving point to the rotation parameter of the i+1-th moving point; when the scaling parameters of the i-th moving point and the i+1-th moving point are different, the motion preview animation displays a gradual scaling motion of the shortest scaling path from the scaling parameter of the i-th moving point to the scaling parameter of the i+1-th moving point.
[0176] In some embodiments, a motion preview control of at least two motion points is displayed on the editor interface, where the at least two motion points include n motion points.
[0177] In some embodiments, in response to a triggering operation of a motion preview control for an i-th motion point, a motion preview animation from the i-th motion point to the n-th motion point is displayed, where n is a positive integer and i is a positive integer less than n.
[0178] In summary, the method provided in the embodiment of the present application supports users in performing exercise preview, making it convenient for users to clearly understand the exercise process, and what they see is what they get, thereby increasing users' enthusiasm for use.
[0179] In order to more clearly understand the various display modes and operation modes of the embodiments of the present application, the following is a detailed description with reference to the schematic diagrams. Among them, the movement point is a waypoint, or a position point, that is, a spatial point on the movement path of the virtual object in the virtual environment.
[0180] Display virtual objects in the virtual environment in the editor interface of the UGC editor
[0181] As shown in Figure 16, the editor interface 510 includes at least one of a virtual environment screen 10 and a control display area 20. The virtual environment screen 10 displays a virtual object 11 in the virtual environment.
[0182] Among them, the virtual environment screen 10 is a picture obtained by capturing the three-dimensional virtual environment through the camera model. The user can control the camera model through interactive operations on the touch screen to change the display effect of the virtual environment screen 10; the control display area 20 is used to display controls for editing virtual objects, including at least one of moving controls, rotating controls, zooming controls, deleting controls, and editing controls.
[0183] When a user selects a virtual object 11 through the editor interface 510, the right side of the editor interface 510 displays the virtual object details area 30. Alternatively, when a user selects the virtual object 11 and clicks an edit control in the control display area 20, the right side of the editor interface 510 displays the virtual object details area 30. The user clicks the motion information viewing control 31 in the virtual object details area 30 to display the motion control area 40.
[0184] The editor interface 510 further includes a virtual object details folding control 12 . Based on a user's click operation on the virtual object details folding control 12 , the virtual object details area 30 can be hidden from the editor interface 510 .
[0185] The virtual object details area 30 is used to display at least one interactive control related to the virtual object. As shown in Figure 16, the virtual object details area 30 includes a virtual object name display area, a virtual object thumbnail display area, and a virtual object control area. The virtual object control area is used to display at least one control related to the virtual object, including at least one of a basic information viewing control, an appearance information viewing control, and a motion information viewing control 31.
[0186] Other display methods of the motion control area 40 include: when the user selects the virtual object 11, the motion control area 40 will be displayed in the right area of the editor interface 510; or, when the user selects the virtual object 11 and clicks on the editing control in the control display area 20, the motion control area 40 will be displayed in the right area of the editor interface 510.
[0187] The virtual object detail area 30 may cover the first area of the virtual environment screen 10 ; or the motion control area 40 may cover part of the first area of the virtual environment screen 10 . The first area is one quarter of the editor interface 510 .
[0188] The motion control area 40 is used to display at least one control related to a motion unit. A motion unit is a component of a virtual object's motion. Users control the virtual object's movement within the virtual environment by adding a motion controller to the virtual object. A motion controller controls the virtual object's motion. A virtual object can have multiple motion controllers, and a motion controller can include multiple motion units. Motion units can be set to different motion modes.
[0189] As shown in Figure 16, a motion unit named Motion Unit 1 is created for virtual object 11, and the motion mode of Motion Unit 1 is the motion point motion mode. When the motion mode of Motion Unit 1 is set to the motion point motion mode, the first motion point is generated based on the coordinate parameters, rotation parameters, and scaling parameters of virtual object 11 in the virtual environment.
[0190] The first movement point generated is the starting point, and the starting point has a starting point identifier. For example, the starting point identifier is a flag; or, the starting point identifier is a highlighted simple shape; or, the starting point identifier is an icon.
[0191] A motion point is used to indicate the motion parameters of a virtual object along its motion path in the virtual environment. These motion parameters include at least one of coordinate parameters, rotation parameters, and scaling parameters. Coordinate parameters represent the three-dimensional coordinates of the virtual object within the virtual environment, rotation parameters represent the rotational posture of the virtual object within the virtual environment, and scaling parameters represent the scaling ratio of the virtual object within the virtual environment. Users can perform the same editing operations on motion points as they do on virtual objects, using the controls in the control display area 20. The motion point motion mode allows users to break down the motion path of a virtual object within the virtual environment into multiple, continuous motion segments, each corresponding to at least two motion points. Motion points are displayed as virtual object copies, with black spheres displayed at the reference points of the virtual object copies.
[0192] Editor interface 510 also includes a state control area 13 and trial play controls 14. State control area 13 includes an undo control and a redo control. The undo control is used to cancel a user's edit operation on a virtual object or motion point; the redo control is used to redo an undo operation on a virtual object or motion point. Trial play controls 14 are used to exit the editor interface and enter a trial play interface. In the trial play interface, a virtual object equipped with a motion device will move. The user can preview the virtual object's movement by pressing the trial play control 14 to enter the trial play interface.
[0193] Add motion points
[0194] There are two ways to add motion points: the first is to add a new motion point; the second is to copy a motion point.
[0195] Method 1: Add a new exercise point
[0196] As shown in FIG16 , the user adds a new motion point by clicking on the motion point addition control 41 in the motion control area 40 ; after the user clicks on the motion point addition control 41 in the motion control area 40 , as shown in FIG17 , the editor interface 520 displays the motion point editing area 50 , and the newly added motion point 15 appears in the virtual environment screen 10 . The newly added motion point is in a selected state and has a highlighted border. The motion point editing area 50 is used to display a list of motion points. The motion point list displays two motion point controls, corresponding to the starting point and waypoint 1, respectively. A duration input box 51 is displayed on the motion point control at the starting point. The duration input box 51 is used to enter the motion time from the current motion point to the next motion point. The motion time displayed in the duration input box 51 defaults to 2 seconds. The user can use the duration input box 51 to set the motion time from the current motion point to the next motion point.
[0197] As shown in FIG17 , a user adds a new sport point by clicking on a new sport point control 52 in the sport point editing area 50. A sport point control 54 for the newly added sport point appears in the sport point list, and the newly added sport point 15 appears in the virtual environment screen 10, selected and highlighted. A duration input box 51 is displayed above the starting sport point control. The default exercise duration displayed in duration input box 51 is 2 seconds. The user can use duration input box 51 to set the exercise duration from the current sport point to the next sport point.
[0198] The rotation and scaling parameters of waypoint 1 are the same as those of the last waypoint in the motion point list. The coordinate parameters of waypoint 1 are the coordinate parameters of the last waypoint in the motion point list shifted left by 1 unit. The last waypoint is the newly added motion point.
[0199] After adding a new movement point, in addition to displaying the newly added movement point, the virtual environment screen 10 also displays a movement line between the movement points, which shows the shortest distance between the two movement points. The movement line is displayed using a dotted line.
[0200] Method 2: Copy motion points
[0201] As shown in Figure 17 , the user clicks on the motion point control 54 for waypoint 1 in the motion point editing area 50 . The motion point control 54 for waypoint 1 is displayed as selected and has a highlighted border. The user then clicks on the motion point copy control 53 . As shown in Figure 18 , the motion point list displays the newly added motion point control, and a newly added motion point 16 appears in the virtual environment screen 10 , selected and having a highlighted border. A duration input box is displayed on the motion point control 54 for motion point 1. The default duration displayed in the duration input box is 2 seconds. The user can use this input box to set the duration for moving from the current motion point to the next motion point.
[0202] In addition to adding and copying motion points, the motion point editing area 50 can also delete any motion point except the starting point, that is, delete any waypoint except the starting point. The motion point deletion control is displayed on the right side of the motion point control.
[0203] Edit movement points
[0204] There are three types of editing operations for motion points: move operation, rotate operation and scale operation.
[0205] 1. Mobile Operation
[0206] As shown in Figure 19, after a user clicks on a motion point 17 in the virtual environment screen 10, the motion point 17 becomes selected and has a highlighted border. While the motion point 17 is selected, if the user clicks on a movement control 21 in the control display area 20, three coordinate axis movement lines—the x-axis movement line, the y-axis movement line, and the z-axis movement line—are displayed, centered on the black sphere of the motion point 17. Clicking on the x-axis movement line allows the user to control the movement point 17 to move along the x-axis movement line and its extension, which changes the coordinate parameters of the motion point 17.
[0207] 2. Rotation operation
[0208] As shown in Figure 20, after a user clicks on a motion point 16 in the virtual environment screen 10, the motion point 16 is selected and has a highlighted border. While the motion point 16 is selected, the user clicks on the rotation control 22 in the control display area 20. Three coordinate axis rotation lines—the x-axis rotation line, the y-axis rotation line, and the z-axis rotation line—are displayed, centered on the black sphere of the motion point 16. Clicking on the y-axis rotation line allows the user to rotate the motion point 16 along the plane of the y-axis rotation line, which changes the rotation parameters of the motion point 16.
[0209] 3. Zoom operation
[0210] As shown in Figure 21, after the user clicks on the motion point 16 in the virtual environment screen 10, the motion point 16 is selected and has a highlighted border. When the motion point 16 is selected, the user clicks the zoom control 23 in the control display area 20. Three coordinate axis zoom lines are displayed with the black sphere of the motion point 16 as the center. These are the x-axis zoom line, the y-axis zoom line, and the z-axis zoom line. These three zoom lines correspond to the length, width, and height of the virtual object, respectively. At the same time, a translucent cuboid is displayed that completely encloses the motion point 16. The length, width, and height of the cuboid are equal to those of the virtual object 11 on the motion point 16. After the user clicks the z-axis zoom line, the motion point 16 can be controlled to zoom along the z-axis zoom line, i.e., in the height direction. This zooming will change the zoom parameters of the motion point 16.
[0211] Motion preview
[0212] As shown in FIG18 , when a user clicks the motion preview control 55 displayed on the motion point control at the starting point of the motion point editing area 50 , a motion animation of the virtual object 11 moving from motion point 17 (i.e., the starting point) to motion point 18 (i.e., waypoint 1) and then to motion point 16 (i.e., waypoint 2) will be displayed in the virtual environment screen 10. During the playback of this motion animation, the motion parameters of the virtual object will gradually change from the motion parameters of the previous motion point to the motion parameters of the next motion point. For example, when the virtual object 11 moves from motion point 17 to motion point 18, the rotation parameters of motion point 17 are (0°, 0°, 0°), and the rotation parameters of motion point 18 are (0°, 0°, 30°). If the motion time is 2 seconds, the rotation parameters of the virtual object 11 at the first second are (0°, 0°, 15°). The motion of the motion point is a uniform linear motion at the closest distance.
[0213] During the motion animation playback process from motion point 18 to motion point 16, the progress bar of the animation playback will be displayed on the motion point control 54 in the motion point editing area 50. At the same time, the motion preview control on the motion point control 54 of the current motion point will become the motion stop control 56.
[0214] FIG22 is a schematic diagram showing a method for generating UGC in a game program provided by an exemplary embodiment of the present application, the method comprising:
[0215] Step 510: displaying the interactive controls and the virtual objects in the virtual environment in the editor interface of the UGC editor;
[0216] In some embodiments, the interactive control includes at least one of the following controls:
[0217] (1) Add motion point control, used to add motion points; (2) Copy motion point control, used to copy motion points; (3) Move control, used to move motion points and change the coordinate parameters of motion points; (4) Rotate control, used to rotate motion points and change the rotation parameters of motion points; (5) Scale control, used to scale motion points and change the scale parameters of motion points; (6) Motion point control, with a duration input box displayed on the motion point control, used to change the motion duration of the motion point; (7) Motion cycle mode control, used to change the motion cycle mode of the virtual object; (8) Automatic rotation control, used to enable the virtual object to automatically rotate at the motion point; (9) Speed smoothing control, used to enable the virtual object to maintain speed smoothness when the speed is switched; (10) Path smoothing control, used to enable the virtual object to maintain path smoothness when the path is switched; (11) Speed curve setting control, used to set the speed curve of the virtual object between two motion points; (12) Motion preview control, used to preview the motion animation of the virtual object.
[0218] In some embodiments, the interactive control is directly loaded and displayed on the editor interface; or, the interactive control is loaded and displayed on the editor interface after the terminal triggers a control display event.
[0219] Exemplarily, after the user clicks on the display control through the touch screen, the terminal sends the acquired click coordinates to the operating system, the operating system sends the click coordinates to the game program, the game program locates the clicked position as the display control based on the click coordinates, the game program triggers a control display event, and displays at least one of the above-mentioned interactive controls in the editor interface based on the display control.
[0220] Step 520: In response to a trigger operation on the interactive control, at least two motion points are set for the virtual object in the virtual environment, each motion point being used to indicate a motion parameter of the virtual object on a motion path in the virtual environment;
[0221] In some embodiments, the motion parameters of the motion point are abstracted into motion point data, and the motion point data includes at least one of: motion parameters, motion duration, or setting parameters.
[0222] In some embodiments, the motion point data is relative to a world coordinate system; or, the motion point data is relative to a relative coordinate system, such as relative to a first motion point or relative to a previous motion point.
[0223] For example, if the motion point data is relative to the world coordinate system, the three coordinate axes of the motion point are in the same direction as the three coordinate axes of the world coordinate system. When the user rotates and scales the motion point, the corresponding three coordinate axes will not change; or, if the motion point data is relative to the relative coordinate system, the three coordinate axes of the motion point will be rotated and scaled accordingly according to the rotation and scaling operations performed by the user.
[0224] In some embodiments, in response to a trigger operation for a new motion point control, if the virtual object already has n motion points, an n+1th motion point is added to the virtual object in the virtual environment, and the n+1th motion point is the next motion point of the nth motion point.
[0225] For example, after the user triggers the newly added motion point control, the game program generates motion unit data, sends it to the terminal through the operating system, and then sends it to the server through the terminal, and the server saves it in the database; or, after the user triggers the newly added motion point control, the game program generates motion point data, sends it to the terminal through the operating system, and the terminal saves it in the memory. The terminal will periodically send the motion point data saved in the memory to the server, and the server saves it in the database.
[0226] In some embodiments, in response to a trigger operation on a copy motion point control, if the virtual object already has n motion points, in response to a copy motion point operation on the i-th motion point of the virtual object, a motion point is inserted between the i-th motion point and the i+1-th motion point among the n motion points, thereby obtaining the n+1 motion point of the virtual object. The inserted motion point is the i+1-th motion point among the n+1 motion points, and the i+1-th motion point among the n motion points is subsequently the i+2-th motion point among the n+1 motion points, where i is a positive integer less than n.
[0227] For example, after the user triggers the copy motion point control, the game program generates motion point data, sends it to the terminal through the operating system, and then sends it to the server through the terminal, and the server saves it in the database; or, after the user triggers the add motion point control, the game program generates motion point data, sends it to the terminal through the operating system, and the terminal saves it in the memory. The terminal will periodically send the motion point data saved in the memory to the server, and the server saves it in the database.
[0228] In some embodiments, when the i-th movement point is selected, in response to a triggering operation on a movement control, three coordinate axis movement lines are displayed centered on a reference point on the virtual object copy. In response to an operation to move the virtual object copy along any of the coordinate axis movement lines, the coordinate parameters of the virtual object copy in the virtual environment are changed, and the changed three-dimensional coordinate parameters are determined as the coordinate parameters of the virtual object at the i-th movement point.
[0229] For example, the user's triggering operation of the mobile control through the touch screen will trigger the coordinate axis drawing event, so that the editor display interface displays three coordinate axis moving lines; the user's operation of moving any of the three coordinate axis moving lines will trigger the coordinate axis event. According to the user's sliding operation on the touch screen, the terminal obtains the coordinates of the pressing point and the lifting point of the sliding operation, and calculates the sliding distance. The game program triggers the coordinate axis event according to the sliding distance obtained from the operating system or the terminal. The coordinate axis event will change the coordinate parameters of the virtual object at the i-th moving point. The game program changes the position (i.e., three-dimensional coordinates) of the virtual object copy in the virtual environment in the editor interface according to the coordinate parameters of the moving point.
[0230] In some embodiments, when the i-th movement point is selected, in response to a triggering operation on a rotation control, three coordinate axis rotation lines are displayed centered on a reference point on the virtual object copy. In response to an operation to rotate the virtual object copy along any of the three coordinate axis rotation lines, the rotation parameters of the virtual object copy in the virtual environment are changed, and the changed rotation parameters are determined as the rotation parameters of the virtual object at the i-th movement point.
[0231] For example, the user's triggering operation of the mobile control through the touch screen will trigger the coordinate axis drawing event, so that the editor display interface displays three coordinate axis rotation lines; the user's operation of rotating any of the three coordinate axis rotation lines will trigger the coordinate axis event. According to the user's sliding operation on the touch screen, the terminal obtains the coordinates of the pressing point and the lifting point of the sliding operation, and calculates the sliding distance. The game program triggers the coordinate axis event according to the sliding distance obtained from the operating system or the terminal. The coordinate axis event will change the rotation parameters of the virtual object at the i-th movement point. The game program changes the rotation posture of the virtual object copy in the virtual environment in the editor interface according to the rotation parameters of the movement point.
[0232] In some embodiments, when the i-th motion point is selected, in response to a triggering operation on a zoom control, three coordinate axis zoom lines are displayed centered on a reference point on the virtual object copy. In response to a dragging operation along any of the three coordinate axis zoom lines, the zoom parameters of the virtual object copy along the coordinate axis dimension of the coordinate axis zoom line are changed, and the changed zoom parameters are determined as the zoom parameters of the virtual object at the i-th motion point.
[0233] For example, the user's triggering operation of the mobile control through the touch screen will trigger the coordinate axis drawing event, so that the editor display interface displays three coordinate axis scaling lines; the user's dragging operation on any of the three coordinate axis scaling lines will trigger the coordinate axis event. According to the user's sliding operation on the touch screen, the terminal obtains the coordinates of the pressing point and the lifting point of the sliding operation, and calculates the sliding distance. The game program triggers the coordinate axis event according to the sliding distance obtained from the operating system or the terminal. The coordinate axis event will change the scaling parameters of the virtual object at the i-th movement point. The game program changes the scaling ratio of the virtual object copy in the virtual environment in the editor interface according to the scaling parameters of the movement point.
[0234] In some embodiments, in response to a trigger operation on a motion point control, in response to an operation of inputting a duration in a duration input box displayed on the motion point control, the input duration is set as the duration for the virtual object to move from the i-th motion point to the i+1-th motion point.
[0235] For example, the preset value of the exercise duration in the exercise point data is 2 seconds. When the user enters the duration in the duration input box and saves it, the game program will update the exercise duration in the exercise point data to the input value and save it in the terminal's memory through the operating system; or, the game program will send the updated exercise point data to the server through the operating system and the terminal, and the server will save it in the database.
[0236] In some embodiments, in response to a trigger operation on a motion cycle mode control, a motion cycle mode of the virtual object is set. The motion cycle mode includes at least one of a one-way motion mode, a continuous one-way motion mode, or a cyclic reciprocating motion mode. The one-way motion mode is a mode of sequentially moving from a first motion point to a last motion point. The continuous one-way motion mode is a mode of sequentially moving from a first motion point to a last motion point and then sequentially moving from the first motion point to the last motion point again. The cyclic reciprocating motion mode is a mode of reciprocating motion from a first motion point to a last motion point and then returning from the last motion point to the previous motion point until returning to the first motion point.
[0237] Exemplarily, the setting parameters in the motion point data include a motion cycle mode, and the preset value is a one-way motion mode. When the user sets the motion cycle mode through the motion cycle mode control and saves it, the game program will update the motion cycle mode in the motion point data to the modified motion cycle mode, and save it in the terminal's memory through the operating system; or, the game program will send the updated motion point data to the server through the operating system and the terminal, and the server will save it in the database.
[0238] In some embodiments, in response to a trigger operation on the automatic rotation control, the rotation parameter of the virtual object at the i-th movement point is set to the rotation parameter when it is facing the i+1-th movement point.
[0239] Exemplarily, the setting parameters in the motion point data include automatic rotation parameters, and the preset value is no, that is, no automatic rotation is performed. When the user sets the automatic rotation parameters through the automatic rotation control and saves them, the game program will update the automatic rotation parameters in the motion point data and save them in the terminal's memory through the operating system; or, the game program will send the updated motion point data to the server through the operating system and the terminal, and the server will save it in the database.
[0240] In some embodiments, in response to a triggering operation on a speed smoothing control, a speed change process of the virtual object when switching between two motion paths before and after an intermediate motion point is set to a smooth change.
[0241] Exemplarily, the setting parameters in the motion point data include a speed smoothing parameter, and the preset value is no, that is, speed smoothing is not performed. When the user sets the speed smoothing parameter through the speed smoothing control and saves it, the game program will update the speed smoothing parameter in the motion point data and save it in the terminal's memory through the operating system; or, the game program will send the updated motion point data to the server through the operating system and the terminal, and the server will save it in the database.
[0242] In some embodiments, in response to a trigger operation on a path smoothing control, a path change process when the virtual object switches between two motion paths before and after an intermediate motion point is set to a smooth change.
[0243] Exemplarily, the setting parameters in the motion point data include a path smoothing parameter, and the preset value is no, that is, path smoothing is not performed. When the user sets the path smoothing parameter through the path smoothing control and saves it, the game program will update the path smoothing parameter in the motion point data and save it in the terminal's memory through the operating system; or, the game program will send the updated motion point data to the server through the operating system and the terminal, and the server will save it in the database.
[0244] In some embodiments, in response to a triggering operation on a speed curve setting control, a speed curve is set for the virtual object during the movement from the i-th moving point to the (i+1)-th moving point.
[0245] Exemplarily, the setting parameters in the motion point data include a speed curve, and the preset value is a straight line between two motion points. When the user sets the speed curve through the speed curve setting control and saves it, the game program will update the speed curve in the motion point data to the input value and save it in the terminal's memory through the operating system; or, the game program will send the updated motion point data to the server through the operating system and the terminal, and the server will save it in the database.
[0246] In some embodiments, in response to a trigger operation on a motion preview control, a motion preview animation is displayed from the i-th motion point to the n-th motion point, where n is a positive integer and i is a positive integer less than n; when the rotation parameters of the i-th motion point and the i+1-th motion point are different, the motion preview animation displays a gradual rotation motion along the shortest rotation path from the rotation parameter of the i-th motion point to the rotation parameter of the i+1-th motion point; when the scaling parameters of the i-th motion point and the i+1-th motion point are different, the motion preview animation displays a gradual scaling motion along the shortest scaling path from the scaling parameter of the i-th motion point to the scaling parameter of the i+1-th motion point.
[0247] Exemplarily, after the user triggers the motion preview control of the i-th motion point, the game program performs motion calculations based on the motion point data from the i-th motion point to the n-th motion point through the processor of the terminal, and controls the virtual object to move in the virtual environment based on the motion point according to the motion calculation results, and displays the motion in the editor interface through the display screen of the terminal; or, after the user triggers the motion preview control of the i-th motion point, a motion preview event is triggered, and the game program sends a motion preview request to the server through the operating system and the terminal, and the server performs motion calculations based on the motion point data from the i-th motion point to the n-th motion point, and controls the virtual object to move in the virtual environment based on the motion point according to the motion calculation results, and edits the motion into a motion preview animation response to the terminal, and the terminal forwards the response to the game program through the operating system, and the game program displays the motion preview animation in the editor interface through the terminal.
[0248] Step 530: Control the virtual object to move in the virtual environment based on at least two movement points.
[0249] In some embodiments, controlling the movement of the virtual object in the virtual environment is performed by the server; or controlling the movement of the virtual object in the virtual environment is performed by the terminal.
[0250] For example, as shown in Figure 23, based on user operations (800) such as adding, editing, and setting movement points through interactive controls, the game program generates 811 movement point data 820 based on the data. This movement point data 820 includes at least one of the movement parameters, movement time, and setting parameters for the movement point. The game program transmits the movement point data to the terminal via the operating system, which then sends it to the server via the network, where it is ultimately stored in a database. While the user is editing a movement point 810, the server calculates auxiliary information 812 based on the stored movement point data and displays this auxiliary information 813 in the editor interface. When the user completes editing the movement point and wishes to view the movement of a virtual object at the movement point 830, the server performs a motion calculation 831 based on the data of adjacent movement points. Based on the calculated motion, the virtual object is controlled 832, and the movement of the virtual object at the movement point is displayed in the editor interface. When the user saves the map 840, the movement point data 820 is serialized and saved 840 to the server or database.
[0251] In some embodiments, the movement of a virtual object is controlled by a motion controller. A virtual object can be configured with k motion controllers, each motion controller having n motion units, and each motion unit can be configured with a different motion mode. The motion modes include at least one of a point motion mode, a full motion mode, a linear motion mode, a rotational motion mode, a zoom motion mode, and a spatial motion mode, where k and n are both positive integers.
[0252] For example, the virtual object a has a mover b, which has three motion units b1, b2, and b3, wherein the motion unit b1 is set to a motion point motion mode, the motion unit b2 is set to a scaling motion mode, and the motion unit b3 is set to a spatial motion mode.
[0253] The following is an embodiment of the device of the present application, which can be used to execute the embodiment of the method of the present application. For details not disclosed in the embodiment of the device of the present application, please refer to the embodiment of the method of the present application. Please refer to Figure 24, which shows a structural block diagram of the UGC generation device in the game program provided by an exemplary embodiment of the present application. The device has the function of implementing the example of the UGC generation method in the above-mentioned game program, and the function can be implemented by hardware or by hardware executing the corresponding software. As shown in Figure 24, the device 600 may include: a first display module 610, a setting module 620 and a control module 630.
[0254] The first display module 610 is used to display the virtual object located in the virtual environment in the editor interface of the UGC editor; the setting module 620 is used to set the motion point for the virtual object in the virtual environment in response to the motion point editing operation for the virtual object, and the motion point indicates the motion parameter of the virtual object on the motion path of the virtual environment; the control module 630 is used to control the movement of the virtual object in the virtual environment based on the motion point.
[0255] In some embodiments, the setting module 620 includes: an adding submodule and an editing submodule. The adding submodule is configured to, in response to an operation of adding a motion point for the virtual object, add at least two motion points for the virtual object in the virtual environment; and the editing submodule is configured to, in response to an editing operation on the i-th motion point of the at least two motion points, set motion parameters of the virtual object at the i-th motion point; wherein the motion parameters include at least one of a coordinate parameter, a rotation parameter, or a scaling parameter of the virtual object at the i-th motion point, where i is a positive integer.
[0256] In some embodiments, the adding submodule includes a motion point creation unit. The motion point creation unit is configured to, in response to a new motion point creation operation on the virtual object, add an n+1th motion point to the virtual object in the virtual environment, if the virtual object already has n motion points, where the n+1th motion point is the next motion point of the nth motion point.
[0257] In some embodiments, the adding submodule includes a motion point copying unit. The motion point copying unit is configured to, when the virtual object already has n motion points, in response to a motion point copying operation on the i-th motion point of the virtual object, insert a motion point between the i-th motion point and the i+1-th motion point among the n motion points to obtain n+1 motion points of the virtual object; wherein the inserted motion point is the i+1-th motion point among the n+1 motion points, and the i+1-th motion point among the n motion points is subsequently extended to the i+2-th motion point among the n+1 motion points, wherein n is a positive integer and i is a positive integer less than n.
[0258] In some embodiments, the editing submodule includes: a first display unit, a first setting unit, a second display unit, and a first changing unit. The first display unit is used to display a movement control and a virtual object copy located at the i-th movement point in the editor interface; the second display unit is used to display three coordinate axis movement lines centered on a reference point on the virtual object copy in response to a trigger operation on the movement control when the i-th movement point is selected; the first changing unit is used to change the coordinate parameters of the virtual object copy in the virtual environment in response to an operation of moving the virtual object copy along any coordinate axis movement line, and determine the changed coordinate parameters as the coordinate parameters of the virtual object at the i-th movement point.
[0259] In some embodiments, the editing submodule includes: a third display unit, a fourth display unit, and a second changing unit. The third display unit is configured to display a rotation control and a virtual object copy located at the i-th motion point in the editor interface; the fourth display unit is configured to display three coordinate axis rotation lines centered on a reference point on the virtual object copy in response to a trigger operation on the rotation control when the i-th motion point is selected; and the second changing unit is configured to change the rotation parameters of the virtual object copy in the virtual environment in response to an operation of rotating the virtual object copy along any coordinate axis rotation line, and determine the changed rotation parameters as the rotation parameters of the virtual object at the i-th motion point.
[0260] In some embodiments, the editing submodule includes: a fifth display unit, a sixth display unit, and a third changing unit. The fifth display unit is configured to display a zoom control and a virtual object copy located at the i-th motion point in the editor interface; the sixth display unit is configured to display three coordinate axis zoom lines centered on a reference point on the virtual object copy in response to a trigger operation on the zoom control when the i-th motion point is selected; and the third changing unit is configured to change the zoom parameters of the virtual object copy in the coordinate axis dimensions of the coordinate axis zoom lines in response to a drag operation along any coordinate axis zoom line, and determine the changed zoom parameters as the zoom parameters of the virtual object at the i-th motion point.
[0261] In some embodiments, the setting module 620 further includes a duration setting submodule configured to set a duration for the virtual object to move from the i-th moving point to the i+1-th moving point in response to a duration setting operation.
[0262] In some embodiments, the duration setting submodule includes: a seventh display unit and a first setting unit. The seventh display unit is configured to display a motion point control for the i-th motion point on the editor interface, wherein a duration input box is displayed on the motion point control for the i-th motion point; and the first setting unit is configured to set the motion duration of the virtual object from the i-th motion point to the (i+1)-th motion point to the inputted duration in response to a duration input in the duration input box.
[0263] In some embodiments, the setting module 620 further includes a mode setting submodule. The mode setting submodule is configured to set a motion cycle mode of the virtual object in response to a motion cycle mode setting operation; wherein the motion cycle mode includes at least one of a one-way motion mode, a continuous one-way motion mode, or a cyclic reciprocating motion mode. The one-way motion mode is a mode of sequentially moving from a first motion point to a last motion point, the continuous one-way motion mode is a mode of sequentially moving from the first motion point to the last motion point, and then sequentially moving from the first motion point to the last motion point again; the cyclic reciprocating motion mode is a mode of reciprocating motion of sequentially moving from the first motion point to the last motion point, and then returning from the last motion point to the previous motion point until returning to the first motion point.
[0264] In some embodiments, the setting module 620 further includes an automatic rotation submodule configured to set the rotation parameters of the virtual object at the i-th moving point to the rotation parameters when the virtual object is directed toward the (i+1)-th moving point in response to the automatic rotation operation for the i-th moving point.
[0265] In some embodiments, the setting module 620 further includes a speed smoothing submodule configured to, in response to the speed smoothing operation on the intermediate motion point, set the speed change process of the virtual object when switching between the two motion paths before and after the intermediate motion point to be a smooth change.
[0266] In some embodiments, the setting module 620 further includes a path smoothing submodule configured to, in response to a path smoothing operation on an intermediate motion point, set a path change process of the virtual object when switching between two motion paths before and after the intermediate motion point to be a smooth change.
[0267] In some embodiments, the setting module 620 further includes a display submodule and a speed curve submodule. The display submodule is configured to display a speed curve setting control for the virtual object from the i-th moving point to the i+1-th moving point; and the speed curve submodule is configured to set a speed curve for the virtual object during its movement from the i-th moving point to the i+1-th moving point in response to a setting operation on the speed curve setting control.
[0268] In some embodiments, the setting module 620 further includes a motion preview submodule. The motion preview submodule is configured to display a motion preview animation from the i-th motion point to the n-th motion point in response to a motion preview operation for the i-th motion point to the i+1-th motion point; wherein, when the rotation parameters of the i-th motion point and the i+1-th motion point are different, the motion preview animation includes a gradual rotation motion of the shortest rotation path from the rotation parameter of the i-th motion point to the rotation parameter of the i+1-th motion point; and when the scaling parameters of the i-th motion point and the i+1-th motion point are different, the motion preview animation includes a gradual scaling motion of the shortest scaling path from the scaling parameter of the i-th motion point to the scaling parameter of the i+1-th motion point, where i is a positive integer.
[0269] In some embodiments, the motion preview submodule includes an eighth display unit and a ninth display unit. The eighth display unit is configured to display a motion preview control for at least two motion points on the editor interface, where the at least two motion points include n motion points; and the ninth display unit is configured to display a motion preview animation from the i-th motion point to the n-th motion point in response to a triggering operation on the motion preview control for the i-th motion point.
[0270] In some embodiments, the apparatus 600 further includes a second display module. The second display module is configured to display auxiliary information in the editor interface in response to an editing operation on a motion point of the virtual object; wherein the auxiliary information includes at least one of a starting point identifier, a motion line, a selected motion point, or an unselected motion point.
[0271] It should be noted that the above embodiments provide devices that implement their functions using only the division of the above functional modules as an example. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above. In addition, the devices and method embodiments provided in the above embodiments are based on the same concept. The specific implementation process is detailed in the method embodiment and will not be repeated here.
[0272] FIG25 shows a structural block diagram of a computer device provided by an exemplary embodiment of the present application.
[0273] The computer device 700 may be a portable mobile terminal, also referred to as a mobile terminal in this embodiment. Examples include a smartphone, tablet computer, MP3 player (Moving Picture Experts Group Audio Layer III), and MP4 player (Moving Picture Experts Group Audio Layer IV). Typically, the computer device 700 includes a processor 701 and a memory 702.
[0274] Processor 701 may include one or more processing cores, such as a quad-core processor or an octa-core processor. Processor 701 may be implemented using at least one of the following hardware forms: a DSP (Digital Signal Processing), an FPGA (Field Programmable Gate Array), or a PLA (Programmable Logic Array). Processor 701 may also include a main processor and a coprocessor. The main processor is a processor for processing data in the awake state, also known as a CPU (Central Processing Unit); the coprocessor is a low-power processor for processing data in the standby state.
[0275] The memory 702 may include one or more computer-readable storage media, which may be tangible and non-transitory. The memory 702 may also include high-speed random access memory and non-volatile memory, such as one or more disk storage devices and flash memory storage devices. In some embodiments, the non-transitory computer-readable storage medium in the memory 702 is used to store at least one instruction, which is used to be executed by the processor 701 to implement the UGC generation method in the game program provided in the embodiments of the present application.
[0276] In some embodiments, the computer device 700 may further optionally include a peripheral device interface 703 and at least one peripheral device. Specifically, the peripheral device includes at least one of a radio frequency circuit 704 , a touch screen display 705 , and a camera 706 .
[0277] The peripheral device interface 703 can be used to connect at least one I / O (Input / Output)-related peripheral device to the processor 701 and the memory 702. In some embodiments, the processor 701, the memory 702, and the peripheral device interface 703 are integrated on the same chip or circuit board; in some other embodiments, any one or two of the processor 701, the memory 702, and the peripheral device interface 703 can be implemented on separate chips or circuit boards, which is not limited in this embodiment.
[0278] RF circuit 704 is used to receive and transmit RF (Radio Frequency) signals, also known as electromagnetic signals. RF circuit 704 communicates with communication networks and other communication devices using electromagnetic signals. RF circuit 704 converts electrical signals into electromagnetic signals for transmission, and also converts received electromagnetic signals into electrical signals.
[0279] The touch screen display 705 is used to display a UI (User Interface). The UI may include graphics, text, icons, videos, and any combination thereof. The touch screen display 705 also has the ability to collect touch signals on or above the surface of the touch screen display 705. The touch signals can be input as control signals to the processor 701 for processing. The touch screen display 705 is used to provide virtual buttons and / or a virtual keyboard, also known as soft buttons and / or a soft keyboard.
[0280] The camera assembly 706 is used to capture images or videos. Optionally, the camera assembly 706 includes a front camera and a rear camera. Typically, the front camera is used to realize video calls or selfies, and the rear camera is used to realize photo or video shooting.
[0281] Those skilled in the art will understand that the structure shown in FIG. 25 does not constitute a limitation on the computer device 700 , and may include more or fewer components than shown in the figure, or combine certain components, or adopt a different component arrangement.
[0282] In an exemplary embodiment, the present application provides a chip, which includes a programmable logic circuit and / or program instructions. When the chip runs on a computer device, it is used to implement the UGC generation method in the game program provided by the above method embodiment.
[0283] The present application provides a computer-readable storage medium storing a computer program, which is loaded and executed by a processor to implement the UGC generation method in the game program provided by the above method embodiment.
[0284] The present application provides a computer program product or computer program, which includes computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the processor of the computer device to load and execute the computer instructions to implement the UGC generation method in the game program provided in the above method embodiment.
[0285] Those skilled in the art will understand that all or part of the steps to implement the above embodiments may be accomplished by hardware, or may be accomplished by a program to instruct the relevant hardware, and the program may be stored in a computer-readable storage medium, which may be a read-only memory, a disk, or an optical disk, etc.
[0286] The above description is merely an optional embodiment of the present application and is not intended to limit the present application. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present application shall be included in the scope of protection of the present application.
Claims
1. A method for generating UGC in a game program, the method being executed by a computer device, the computer device running the game program, the game program having a UGC editor, the UGC editor being used to customize moving objects in a virtual environment, the method comprising: Displaying a virtual object in a virtual environment in an editor interface of the UGC editor; In response to a motion point editing operation for the virtual object, setting a motion point for the virtual object in the virtual environment, the motion point indicating a motion parameter of the virtual object on a motion path of the virtual environment; Based on the movement point, the virtual object is controlled to move in the virtual environment.
2. The method according to claim 1, wherein: In response to the motion point editing operation for the virtual object, setting the motion point for the virtual object in the virtual environment comprises: In response to an operation of adding a motion point to the virtual object, adding at least two motion points to the virtual object in the virtual environment; In response to an editing operation on the i-th moving point among the at least two moving points, the motion parameters of the virtual object at the i-th moving point are set; wherein the motion parameters include at least one of the coordinate parameters, rotation parameters or scaling parameters of the virtual object at the i-th moving point, and i is a positive integer.
3. The method according to claim 1 or 2, wherein: The method further comprises: Displaying the movement control and the copy of the virtual object located at the i-th movement point in the editor interface; The step of setting the motion parameter of the virtual object at the i-th motion point in response to the editing operation on the i-th motion point among the at least two motion points comprises: When the i-th moving point is in a selected state, in response to a trigger operation on the moving control, three coordinate axis moving lines are displayed with a reference point on the virtual object copy as the center; In response to the operation of moving the virtual object copy along any coordinate axis movement line, the coordinate parameters of the virtual object copy in the virtual environment are changed, and the changed coordinate parameters are determined as the coordinate parameters of the virtual object at the i-th movement point; wherein i is a positive integer.
4. The method according to any one of claims 1 to 3, wherein: The method further comprises: Displaying a rotation control and a copy of the virtual object at the i-th motion point in the editor interface; The step of setting the motion parameter of the virtual object at the i-th motion point in response to the editing operation on the i-th motion point among the at least two motion points comprises: When the i-th motion point is in a selected state, in response to a trigger operation on the rotation control, three coordinate axis rotation lines are displayed with the reference point on the virtual object copy as the center; In response to the operation of rotating the virtual object copy along any coordinate axis rotation line, the rotation parameters of the virtual object copy in the virtual environment are changed, and the changed rotation parameters are determined as the rotation parameters of the virtual object at the i-th motion point; wherein i is a positive integer.
5. The method according to any one of claims 1 to 4, wherein: The method further comprises: Displaying a zoom control and a copy of the virtual object at the i-th motion point in the editor interface; The step of setting the motion parameter of the virtual object at the i-th motion point in response to the editing operation on the i-th motion point among the at least two motion points comprises: When the i-th motion point is in a selected state, in response to a trigger operation on the zoom control, three coordinate axis zoom lines are displayed with the reference point on the virtual object copy as the center; In response to a dragging operation along any coordinate axis scaling line, the scaling parameter of the virtual object copy in the coordinate axis dimension of the coordinate axis scaling line is changed, and the changed scaling parameter is determined as the scaling parameter of the virtual object at the i-th motion point; wherein i is a positive integer.
6. The method according to any one of claims 1 to 5, wherein: In response to the operation of adding a motion point to the virtual object, adding at least two motion points to the virtual object in the virtual environment comprises: When the virtual object already has n motion points, in response to a new motion point operation for the virtual object, an n+1th motion point is added to the virtual object in the virtual environment, and the n+1th motion point is the next motion point of the nth motion point; wherein n is a positive integer.
7. The method according to any one of claims 1 to 6, wherein: In response to the operation of adding a motion point to the virtual object, adding at least two motion points to the virtual object in the virtual environment comprises: In the case that the virtual object already has n motion points, in response to a copy motion point operation for the i-th motion point of the virtual object, a motion point is inserted between the i-th motion point and the i+1-th motion point among the n motion points to obtain n+1 motion points of the virtual object; wherein the inserted motion point is the i+1-th motion point among the n+1 motion points, and the i+1-th motion point among the n motion points is subsequently extended to the i+2-th motion point among the n+1 motion points, wherein n is a positive integer and i is a positive integer less than n.
8. The method according to any one of claims 1 to 7, wherein: The method further comprises: In response to the operation of setting the motion mode of the virtual object to the motion point motion mode, a first motion point is generated according to the coordinate parameters, rotation parameters and scaling parameters of the virtual object in the virtual environment.
9. The method according to any one of claims 1 to 8, wherein: The at least two moving points include: an i-th moving point and an i+1-th moving point; the method further includes: In response to the duration setting operation, the movement duration of the virtual object from the i-th movement point to the i+1-th movement point is set; wherein i is a positive integer.
10. The method according to any one of claims 1 to 9, wherein: The method further comprises: Displaying a motion point control of the i-th motion point on the editor interface, wherein a duration input box is displayed on the motion point control; The step of setting the movement duration of the virtual object from the i-th movement point to the i+1-th movement point in response to the duration setting operation includes: In response to the operation of inputting a duration in the duration input box, the movement duration of the virtual object from the i-th moving point to the i+1-th moving point is set to the input duration; wherein i is a positive integer.
11. The method according to any one of claims 1 to 10, wherein: The method further comprises: In response to a motion cycle mode setting operation, setting a motion cycle mode of the virtual object; Among them, the motion cycle mode includes at least one of a one-way motion mode, a continuous one-way motion mode or a cyclic reciprocating motion mode. The one-way motion mode is a mode of moving from the first motion point to the last motion point in sequence; the continuous one-way motion mode is a continuous motion mode of moving from the first motion point to the last motion point in sequence, and then moving from the first motion point to the last motion point in sequence again; the cyclic reciprocating motion mode is a reciprocating motion mode of moving from the first motion point to the last motion point in sequence, and then returning from the last motion point to the previous motion point until returning to the first motion point.
12. The method according to any one of claims 1 to 11, wherein: The at least two moving points include: an i-th moving point and an i+1-th moving point; the method further includes: In response to the automatic rotation operation for the i-th moving point, the rotation parameter of the virtual object at the i-th moving point is set to the rotation parameter when facing the i+1-th moving point; wherein i is a positive integer.
13. The method according to any one of claims 1 to 12, wherein: The at least two moving points include: an intermediate moving point other than the first moving point and the last moving point; the method further includes: In response to the speed smoothing operation for the intermediate motion point, the speed change process of the virtual object when switching between the two motion paths before and after the intermediate motion point is set to be a smooth change.
14. The method according to any one of claims 1 to 13, wherein: The at least two moving points include: an intermediate moving point other than the first moving point and the last moving point; the method further includes: In response to the path smoothing operation for the intermediate motion point, the path change process of the virtual object when switching between the two motion paths before and after the intermediate motion point is set to be a smooth change.
15. The method according to any one of claims 1 to 14, wherein: The at least two moving points include: an i-th moving point and an i+1-th moving point; the method further includes: Display a speed curve setting control from the i-th moving point to the i+1-th moving point; In response to a setting operation on the speed curve setting control, a speed curve of the virtual object in a process of moving from the i-th moving point to the i+1-th moving point is set; wherein i is a positive integer.
16. The method according to any one of claims 1 to 15, wherein: The at least two moving points include: an i-th moving point and an i+1-th moving point; the method further includes: In response to a motion preview operation from the i-th motion point to the i+1-th motion point, a motion preview animation from the i-th motion point to the i+1-th motion point is displayed; wherein, when the rotation parameters of the i-th motion point and the i+1-th motion point are different, the motion preview animation includes a gradual rotation motion of the shortest rotation path from the rotation parameter of the i-th motion point to the rotation parameter of the i+1-th motion point; when the scaling parameters of the i-th motion point and the i+1-th motion point are different, the motion preview animation includes a gradual scaling motion of the shortest scaling path from the scaling parameter of the i-th motion point to the scaling parameter of the i+1-th motion point, and i is a positive integer.
17. The method according to any one of claims 1 to 16, wherein: The method further comprises: Displaying a motion preview control of the at least two motion points on the editor interface, wherein the at least two motion points include n motion points; The step of displaying a preview animation of a movement from the i-th moving point to the i+1-th moving point in response to a preview operation of the movement from the i-th moving point to the i+1-th moving point comprises: In response to a trigger operation of a motion preview control for the i-th motion point, a motion preview animation from the i-th motion point to the n-th motion point is displayed; wherein n is a positive integer, and i is a positive integer less than n.
18. The method according to any one of claims 1 to 17, wherein: The method further comprises: In response to the motion point editing operation for the virtual object, auxiliary information is displayed in the editor interface; wherein the auxiliary information includes: at least one of a starting point identifier, a motion line, a selected motion point, or a non-selected motion point.
19. A UGC generation device in a game program, configured in a computer device, the computer device running the game program, the game program having a UGC editor, the UGC editor being used to customize moving objects in a virtual environment, the device comprising: A first display module, configured to display virtual objects in a virtual environment in an editor interface of the UGC editor; A setting module, configured to set a motion point for the virtual object in the virtual environment in response to a motion point editing operation for the virtual object, wherein the motion point indicates a motion parameter of the virtual object on a motion path of the virtual environment; The control module is used to control the movement of the virtual object in the virtual environment based on the movement point.
20. A computer device, comprising a processor and a memory, wherein a computer program is stored in the memory, and the computer program is loaded and executed by the processor to implement the UGC generation method in the game program according to any one of claims 1 to 18.
21. A computer-readable storage medium having a computer program stored thereon, wherein when the computer program is executed by a processor, the UGC generation method in the game program according to any one of claims 1 to 18 is implemented.
22. A computer program product, comprising a computer program, wherein the computer program is stored in a computer-readable storage medium; the computer program is read and executed from the computer-readable storage medium by a processor of a computer device, so that the computer device executes the UGC generation method in the game program as described in any one of claims 1 to 18.
Citation Information
Patent Citations
3D (three-dimensional) game world editor
CN102663245A
Method and device for realizing fixed point flight of target
CN103186381A
Method and device for controlling three-dimensional model in game editor and storage medium
CN113926190A
Virtual character control method and device, storage medium and electronic device
CN116531758A
UGC generation method and device in game program, equipment and storage medium
CN117205571A