Method, device, electronic device, and computer program for controlling virtual objects
The method and device optimize virtual object skill target selection by displaying lock identifiers and adjusting release directions, improving immersive perception and resource efficiency in virtual scene interactions.
Patent Information
- Application Number
- JP2023528177
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2021-01-22
- Filing Date
- 2022-01-17
- Publication Date
- 2025-10-28
- Estimated Expiration
- 2042-01-17
AI Technical Summary
Existing virtual scene interaction technologies inefficiently select action targets for virtual object skills, affecting immersive perception and wasting graphics processing resources.
A method and device that display skill release lock identifiers on matching virtual objects and adjust release directions to improve target selection efficiency.
Enhances the performance of immersive perception and resource utilization of graphics processing hardware by optimizing virtual object skill target selection.
Smart Images

Figure 0007761644000001 
Figure 0007761644000002 
Figure 0007761644000003
Abstract
Description
[Technical Field]
[0001] (CROSS-REFERENCE TO RELATED APPLICATIONS) This application is based on a Chinese patent application bearing application number 202110090490.9, filed with the China Patent Office on January 22, 2021, and claims priority to that Chinese patent application, the entire contents of which are incorporated herein by reference.
[0002] The present application relates to a computer human-computer interaction (HCI) technology, and in particular to a method, device, electronic device, computer-readable storage medium, and computer program product for controlling a virtual object. [Background technology]
[0003] The virtual scene human-computer interaction technology based on graphics processing hardware can realize diversified interactions between virtual objects controlled by users or artificial intelligence according to actual application requirements, and can realize a wide range of practical value, such as simulating realistic battle processes between virtual objects in virtual scenes such as games.
[0004] There are various types of skills for virtual objects, and different types of skills can achieve different combat effects. However, in related art, when a controlled virtual object releases a skill (also called "activating a skill"), only the target closest to the controlled virtual object or the target selected by clicking on the screen can be used as the action target when the skill is released. This reduces the efficiency of selecting the action target for the skill, thereby affecting the performance of the simulation of immersive perception of the virtual scene and wasting graphics processing hardware resources. Summary of the Invention [Means for solving the problem]
[0005] Embodiments of the present application provide a method, device, electronic device, computer-readable storage medium, and computer program product for controlling a virtual object, which can improve the performance of the simulation of immersive perception of a virtual scene and the resource utilization rate of graphics processing hardware by improving the efficiency of selecting the action target of a skill.
[0006] The technical solution of the embodiments of the present application is realized as follows:
[0007] An embodiment of the present application provides a method for controlling a virtual object, the method comprising: In response to a selection operation for a skill of a first virtual object waiting for release, displaying a skill release lock identifier corresponding to the second virtual object at a position of a second virtual object that matches the type of the skill; In response to a direction setting operation for the skill, if there is a deviation between a set release direction and a direction of the second virtual object relative to the first virtual object, determining a third virtual object based on the release direction; and displaying a skill release lock identifier corresponding to the third virtual object at the position of the third virtual object and canceling the display of the skill release lock identifier corresponding to the second virtual object.
[0008] An embodiment of the present application provides a control device for a virtual object, the device comprising: a selection module configured to, in response to a selection operation on a skill of a first virtual object waiting to be released, display a skill release lock identifier corresponding to the second virtual object at a position of a second virtual object that matches the type of the skill; and a direction setting module configured to, in response to a direction setting operation for the skill, determine a third virtual object based on the release direction when there is a discrepancy between a set release direction and a direction of the second virtual object relative to the first virtual object, display a skill release lock identifier corresponding to the third virtual object at the position of the third virtual object, and cancel the display of the skill release lock identifier corresponding to the second virtual object.
[0009] An embodiment of the present application provides an electronic device for controlling a virtual object, the electronic device comprising: a memory for storing executable instructions; and a processor that, when executing executable instructions stored in the memory, implements a method for controlling a virtual object according to an embodiment of the present application.
[0010] An embodiment of the present application provides a computer-readable storage medium having stored thereon executable instructions that, when executed by a processor, implement a method for controlling a virtual object according to an embodiment of the present application.
[0011] An embodiment of the present application provides a computer program product including a computer program or instructions that causes a computer to perform the above-described method for controlling a virtual object.
[0012] The embodiments of the present application have the following beneficial effects:
[0013] By automatically determining a virtual object that matches the type of skill as the virtual object that the skill acts on, it is possible to reduce user operations and improve the efficiency of selecting virtual objects, and also to support the user in manually adjusting the release direction to switch the virtual object that the skill acts on, thereby improving the hit rate of the skill, thereby improving the performance of the simulation of immersive perception of the virtual scene and the resource utilization rate of the graphics processing hardware. [Brief explanation of the drawings]
[0014] [Figure 1A] 1 is a schematic diagram of an application mode of a control method for a virtual object according to an embodiment of the present application; [Figure 1B] 1 is a schematic diagram of an application mode of a control method for a virtual object according to an embodiment of the present application; [Figure 2] 5 is an exemplary structural diagram of an electronic device 500 according to an embodiment of the present application. [Figure 3] 1 is an exemplary flowchart of a method for controlling a virtual object according to an embodiment of the present application. [Figure 4] 1 is an exemplary flowchart of a method for controlling a virtual object according to an embodiment of the present application. [Figure 5] 1 is an exemplary flowchart of a method for controlling a virtual object according to an embodiment of the present application. [Figure 6A] 1 is a schematic diagram of an application scenario of a virtual object control method according to an embodiment of the present application; [Figure 6B] 1 is a schematic diagram of an application scenario of a virtual object control method according to an embodiment of the present application; [Figure 7A] 1 is a schematic diagram of the principle of a method for controlling a virtual object according to an embodiment of the present application; [Figure 7B] 1 is a schematic diagram of the principle of a method for controlling a virtual object according to an embodiment of the present application; [Figure 7C] 1 is a schematic diagram of the principle of a method for controlling a virtual object according to an embodiment of the present application; [Figure 8A] 1 is an exemplary flowchart of a method for controlling a virtual object according to an embodiment of the present application. [Figure 8B] 1 is an exemplary flowchart of a method for controlling a virtual object according to an embodiment of the present application. [Figure 9A] 1 is a schematic diagram of an application scenario of a virtual object control method according to an embodiment of the present application; [Figure 9B] 1 is a schematic diagram of an application scenario of a virtual object control method according to an embodiment of the present application; [Figure 9C] 1 is a schematic diagram of an application scenario of a virtual object control method according to an embodiment of the present application; [Figure 9D] 1 is a schematic diagram of an application scenario of a virtual object control method according to an embodiment of the present application; [Figure 9E] 1 is a schematic diagram of an application scenario of a virtual object control method according to an embodiment of the present application; DETAILED DESCRIPTION OF THE INVENTION
[0015] In order to make the objectives, technical solutions and advantages of the present application clearer, the present application will be described in more detail hereinafter with reference to the drawings, and the described embodiments should not be regarded as limitations on the present application, and all other embodiments obtained by those skilled in the art without creative efforts shall be included in the protection scope of the present application.
[0016] In the following description, the term "some embodiments" refers to a subset of all possible embodiments, and it will be understood that the term "some embodiments" may include the same or different subsets of all possible embodiments, which may be combined with each other if not inconsistent.
[0017] In the following description, the terms "first / second" and "second" are merely used to distinguish between similar objects and do not represent a particular order to the objects; it is understood that "first / second" can be interchangeable with a particular order or priority where possible, such that the embodiments of the present application described herein can be performed in an order other than that shown and described.
[0018] Unless otherwise specified, all technical and scientific terms used herein have the same meaning as commonly understood by those skilled in the art. The terms used herein are for the purpose of describing the examples of the present application only and are not intended to be limiting of the present application.
[0019] Before describing the embodiments of the present application in more detail, the nouns and terms related to the embodiments of the present application will be explained, and the nouns and terms related to the embodiments of the present application can be applied to the following interpretations.
[0020] 1) Regarding the phrase "in response to," this phrase is intended to express a dependent condition or state of an operation to be executed. When the dependent condition or state is satisfied, the one or more operations to be executed may be in real time or may have a set delay, and unless otherwise specified, there is no restriction on the time order of execution of the multiple operations to be executed.
[0021] 2) A client is an application program that runs on a terminal and provides various services, such as a game client.
[0022] 3) A virtual scene is a virtual game scene displayed (or provided) when a game application is executed on a terminal. The virtual scene may be a simulated real-world environment, a semi-simulated or semi-fictional virtual environment, or a purely fictional virtual environment. The virtual scene may include any one of a two-dimensional virtual scene, a two-and-a-half-dimensional virtual scene, or a three-dimensional virtual scene. The embodiments of the present application are not limited to the dimensions of the virtual scene. For example, the virtual scene may include sky, land, sea, etc., and the land may include environmental elements such as deserts and cities. A user may control virtual objects to move within the virtual scene.
[0023] 4) Virtual objects are images of various people and objects that can be interacted with in a virtual scene, or movable objects in the virtual scene. The movable objects may include virtual people, virtual animals, animated characters, etc., such as people, animals, plants, drums, walls, stones, etc. displayed in the virtual scene. The virtual objects may include virtual images that represent the user in the virtual scene. A virtual scene may include multiple virtual objects, each of which has its own shape and volume and occupies a partial space of the virtual scene.
[0024] For example, the virtual object may be a user character that can be controlled by an operation on a client, an artificial intelligence (AI) obtained through training and set in a virtual scene battle, or a non-player character (NPC) set in an interaction in a virtual scene. For example, the virtual object may be a virtual person who performs an adversarial interaction in a virtual scene. For example, the number of virtual objects participating in an interaction in the virtual scene may be set in advance, or may be dynamically determined based on the number of clients joining the interaction.
[0025] 5) Scene data refers to various characteristics that an object in a virtual scene exhibits during an interaction process, and may include, for example, the position of the object in the virtual scene. Of course, different types of characteristics may be included depending on the type of virtual scene. For example, in a game virtual scene, scene data may include the waiting time required for setting various functions in the virtual scene (determined by the number of times the same function can be used within a specific time), and may also represent attribute values (or state values for short) of various states of a game character, such as a life value (also called a red amount) and a magic value (also called a blue amount).
[0026] 6) User operation or player operation refers to the operation of a virtual object by a user in a virtual scene, such as controlling the movement of a virtual object with a joystick or releasing a skill by clicking.
[0027] 7) Virtual skills (abbreviated as "skills") refer to the abilities possessed by virtual objects. Different skills have different action expressions and effects, such as moving the virtual object's own position, dealing damage to enemies, and healing teammates.
[0028] 8) Target selection refers to selecting a target (e.g., a virtual object) that the skill will act on before releasing the skill. Depending on the skill, the controlled virtual object may perform different operations, such as turning toward the target or moving toward the target.
[0029] In the related art, skill target selection and switching are realized by a uniform rule, for example, when a skill is released, the target closest to the controlled virtual object is selected, or the target is selected by other logic (for example, by clicking on the screen to select the target). When the user operates the joystick during the release of the skill, the target closest to the controlled virtual object within the fan-shaped area corresponding to the joystick is uniformly selected.
[0030] However, realizing skill target selection and switching through a uniform rule cannot meet the actual requirements when releasing a skill, for example, the priority of target selection corresponding to different skill effects should be different, for example, for a long-distance ballistic skill, the priority of targets facing the controlled virtual object is higher, and for a close-range combat skill, the priority of targets close to the controlled virtual object is higher, which reduces the efficiency of target selection, affects the performance of the simulation of immersive perception of the virtual scene, and wastes graphics processing hardware resources.
[0031] The embodiments of the present application provide a method for controlling a virtual object, which can improve the efficiency of selecting skill action targets, thereby improving the performance of the simulation of immersive perception of a virtual scene and the resource utilization rate of graphics processing hardware. To make it easier to understand the method for controlling a virtual object according to the embodiments of the present application, we will first describe an example implementation scenario of the method for controlling a virtual object according to the embodiments of the present application. The virtual scene can be output entirely on the terminal, or can be output based on the cooperation of the terminal and the server.
[0032] In some embodiments, the virtual scene may be an environment in which game characters can interact, for example, by having game characters compete in the virtual scene and controlling the actions of virtual objects, thereby allowing the user to relieve stress in life while playing the game.
[0033] In one implementation scenario, referring to FIG. 1A, FIG. 1A is a schematic diagram of application modes of a virtual object control method according to an embodiment of the present application, which is applied to several application modes that can perform calculation of data related to the virtual scene 100 by relying solely on the computing capabilities of the graphics processing hardware of the terminal 400. For example, in a single-player / offline mode game, the output of the virtual scene is realized by the terminal 400 such as a smartphone, a tablet computer, and a virtual reality / augmented reality device.
[0034] By way of example, types of image processing hardware include central processing units (CPUs) and graphics processing units (GPUs).
[0035] When forming a visual perception of the virtual scene 100, the terminal 400 uses graphics computing hardware to calculate the data required for display, loads, analyzes and renders the display data, and uses graphics output hardware to output video frames that can form a visual perception of the virtual scene, for example, displaying two-dimensional video frames on the display of a smartphone, or projecting video frames that can realize a three-dimensional display effect through the lenses of augmented reality / virtual reality glasses. Furthermore, for richer sensory effects, the device can form one or more of auditory perception, tactile perception, movement perception and taste perception through different hardware.
[0036] As an example, the terminal 400 executes a client 410 (e.g., a single-player game application), and during the execution of the client 410, a virtual scene including role-playing is output. The virtual scene is an environment for game characters to interact with, and may include, for example, a plain, a city, a valley, etc. for game characters to compete against each other. The virtual scene includes a first virtual object 110, which may be a game character controlled by a user (also called a player). That is, the first virtual object 110 is controlled by a real user and moves in the virtual scene in response to the real user's operation on a controller (including a touch screen, an audio switch, a keyboard, a mouse, a joystick, etc.). For example, if the real user operates the joystick to the left, the virtual object moves left in the virtual scene and can use various functions (e.g., skills and items) such as jumping without moving.
[0037] For example, when the first virtual object 110 is controlled to perform a selection operation for a skill waiting to be released, a skill release lock identifier 130 is displayed at the position of the second virtual object 120 that matches the type of skill, and when the user wants to change the object on which the skill acts, the first virtual object 110 is controlled to perform a direction setting operation for the skill, and if there is a discrepancy between the set release direction and the direction of the first virtual object 110 relative to the second virtual object 120, a third virtual object 140 is determined based on the release direction, the display of the skill release lock identifier 130 is canceled at the position of the second virtual object 120, and the skill release lock identifier 130 is displayed at the position of the third virtual object 140.
[0038] In another implementation scenario, referring to FIG. 1B, FIG. 1B is a schematic diagram of an application mode of a virtual object control method according to an embodiment of the present application, which is applied to a terminal 400 and a server 200, relies on the computing power of the server 200 to perform calculations of the virtual scene, and outputs the virtual scene on the terminal 400.
[0039] Taking the example of forming a visual sensation of a virtual scene 100, the server 200 calculates display data related to the virtual scene and transmits it to the terminal 400 via the network 300, and the terminal 400 relies on graphics computing hardware to perform loading, analysis, and rendering to calculate the display data, and relies on graphics output hardware to output the virtual scene and form the visual sensation, for example, displaying two-dimensional video frames on the display of a smartphone, or projecting video frames that can achieve a three-dimensional display effect through the lenses of augmented reality / virtual reality glasses, and the sensation of the shape of the virtual scene can be output with the help of related hardware of the terminal, as can be understood, for example, outputting and forming an auditory sensation through a microphone, and outputting and forming a tactile sensation through a vibrator.
[0040] As an example, the terminal 400 runs a client 410 (e.g., a network version of a game application) and connects to a game server (i.e., the server 200) with other users to interact with the game. The terminal 400 outputs a virtual scene 100 of the client 410, which includes a virtual object 110 and a virtual item 120. The virtual object 110 may be a game character controlled by a user. That is, the virtual object 110 is controlled by a real user and moves in the virtual scene in response to the real user's operation on a controller (including a touch screen, an acoustic switch, a keyboard, a mouse, a joystick, etc.). For example, if the real user moves the joystick to the left, the virtual object moves left in the virtual scene and can use various functions (e.g., skills and items) such as jumping without moving further.
[0041] For example, when the first virtual object 110 is controlled to perform a selection operation for a skill waiting to be released, a skill release lock identifier 130 is displayed at the position of the second virtual object 120 that matches the type of skill; when the user needs to change the object on which the skill acts, the first virtual object 110 is controlled to perform a direction setting operation for the skill; if there is a discrepancy between the set release direction and the direction of the first virtual object 110 relative to the second virtual object 120, a third virtual object 140 is determined based on the release direction, the display of the skill release lock identifier 130 at the position of the second virtual object 120 is canceled, and the skill release lock identifier 130 is displayed at the position of the third virtual object 140.
[0042] In some embodiments, the terminal 400 can implement the method for controlling a virtual object according to an embodiment of the present application by executing a computer program. For example, the computer program may be a native program or software module in an operating system, and may include a native application program (APP) such as a game APP (i.e., the above-mentioned client 410), i.e., a program that needs to be installed in an operating system to be executed, a mini-program, i.e., a program that can be executed simply by downloading it to a browser environment, or a game mini-program that can be embedded in any APP. In short, the above-mentioned computer program may include any form of application program, module, or plug-in.
[0043] The embodiments of the present application can be realized using cloud technology, which means a hosting technology that integrates a set of resources such as hardware, software, and networks within a wide area network or a local area network to realize computing, storage, processing, and sharing of data.
[0044] Cloud technology is a collective term for network technology, information technology, integration technology, management platform technology, and application technology based on the application of cloud computing business model. It provides a resource pool that can be used as needed, flexibly and conveniently. Cloud computing technology is an important support for the background services of technical network systems that require large amounts of computing and storage resources.
[0045] For example, the server 200 may include an independent physical server, a server cluster or a distributed system configured by multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDNs, big data, and artificial intelligence platforms. The terminal 400 and the server 200 may be directly or indirectly connected by wired or wireless communication, and this is not a limitation in the embodiments of the present application.
[0046] The structure of an electronic device according to an embodiment of the present application will now be described. The electronic device may be the terminal 400 shown in FIGS. 1A and 1B. Referring to FIG. 2, FIG. 2 is an exemplary structural diagram of an electronic device 500 according to an embodiment of the present application. The electronic device 500 shown in FIG. 2 includes at least one processor 510, a memory 550, at least one network interface 520, and a user interface 530. The components in the electronic device 500 are coupled via a bus system 540. It should be understood that the bus system 540 is used to realize communication between these components. In addition to a data bus, the bus system 540 includes a power bus, a control bus, and a status signal bus. However, for clarity, various buses are represented as the bus system 540 in FIG. 2.
[0047] The processor 510 may include an integrated circuit chip having signal processing capabilities, such as a general-purpose processor, a digital signal processor (DSP), or other programmable logic device, a discrete gate or transistor logic device, a discrete hardware component, etc., where a general-purpose processor may include a microprocessor or any conventional processor, etc.
[0048] The user interface 530 includes one or more output devices 531 that enable the presentation of media content, the output devices 531 including one or more speakers and / or one or more visual displays. The user interface 530 also includes one or more input devices 532 that include user interface components that facilitate user input, such as a keyboard, mouse, microphone, touchscreen display, camera, other input buttons and controls, etc.
[0049] Memory 550 may include removable, non-removable, or a combination thereof. Exemplary hardware devices include solid-state memory, hard disk drives, optical disk drives, etc. Memory 550 optionally includes one or more storage devices that are physically remote from processor 510.
[0050] The memory 550 may include volatile memory or non-volatile memory, or may include both volatile and non-volatile memory. Non-volatile memory may include read-only memory (ROM), and volatile memory may include random access memory (RAM). The memory 550 described in the embodiments herein is intended to include any suitable type of memory.
[0051] In some embodiments, memory 550 can store data to support various operations, examples of which include programs, modules, and data structures, or a subset or superset thereof, as illustratively described below.
[0052] The operating system 551 includes system programs for processing various basic system services and executing hardware-related tasks, such as a framework layer, a core library layer, and a driver layer, which are used to realize various basic services and process hardware-based tasks.
[0053] The network communications module 552 is used to reach other computing devices via one or more (wired or wireless) network interfaces 520; exemplary network interfaces 520 include Bluetooth® technology, Wireless Fidelity (WiFi), and Universal Serial Bus (USB), among others.
[0054] The display module 553 is used to cause information to be displayed by one or more output devices 531 (e.g., displays, speakers, etc.) associated with the user interface 530 (e.g., the user interface for operating peripherals and displaying content and information).
[0055] The input processing module 554 is used to detect one or more user inputs or interactions from one of the one or more input devices 532 and to interpret the detected inputs or interactions.
[0056] In some embodiments, the virtual object control device according to the embodiments of the present application can be realized in a software manner. FIG. 2 shows a virtual object control device 555 stored in memory 550, which can include software in the form of a computer program, such as a game program, and a plug-in. The virtual object control device 555 includes software modules, a selection module 5551 and a direction setting module 5552. These modules are logical and can be arbitrarily combined or further divided based on the functions to be realized. The functions of each module are described below.
[0057] The method for controlling a virtual object according to the embodiment of the present application may be performed solely by the terminal 400 in FIG. 1A, or may be performed jointly by the terminal 400 and the server 200 in FIG. 1B.
[0058] Hereinafter, an example will be described in which the method for controlling a virtual object according to an embodiment of the present application is executed solely by the terminal 400 in Fig. 1A. Referring to Fig. 3, Fig. 3 is an exemplary flowchart of the method for controlling a virtual object according to an embodiment of the present application, which will be described in combination with the steps shown in Fig. 3.
[0059] It should be noted that the method illustrated in FIG. 3 can be performed by various forms of computer programs running on the terminal 400, including but not limited to the above-described client 410, such as the above-described operating system 551, software modules and scripts.
[0060] In step S101, in response to a selection operation on a skill waiting for release of a first virtual object, a skill release lock identifier corresponding to the second virtual object is displayed at the position of the second virtual object that matches the type of the skill.
[0061] In some embodiments, the skill release lock identifier corresponding to the second virtual object is to indicate that the skill will affect the second virtual object when the first virtual object releases the skill.
[0062] In some embodiments, a skill release lock identifier corresponding to the second virtual object may be displayed in an area above, below, to the left, or to the right of the location of the second virtual object.
[0063] As an example, in FIG. 9A , the user can select a skill waiting to be released for the first virtual object 901 by clicking the skill release button 903, and after the user clicks the skill release button 903, the second virtual object 902 that matches the type of skill selected by the user can be automatically selected, and a skill release lock identifier 904 can be displayed to the right of the second virtual object 902.
[0064] In some embodiments, the skill of the first virtual object may be an ability that the first virtual object possesses or an ability that the first virtual object acquires by possessing a virtual item. The skill of the first virtual object may be used to perform a support action, such as assisting in an attack or healing, or may be used to perform a counter action, such as attacking an enemy or destroying a virtual vehicle.
[0065] As an example, in FIG. 6A, a controlled virtual object 601 includes multiple skills, each of which is of a different type, and the user can select a skill waiting to be released by clicking a skill release button 603.
[0066] In some embodiments, before responding to a selection operation for the first virtual object's pending skill, the virtual scene may also be displayed in a human-computer interaction interface.
[0067] Here, the virtual scene includes at least a first virtual object and a second virtual object.
[0068] As an example, a human-computer interaction interface may display a virtual scene from a first-person perspective (e.g., a player plays a first virtual object in a game from his or her own perspective), a third-person perspective (e.g., a player plays a game while chasing a first virtual object in the game), or a bird's-eye view of the virtual scene, where the perspectives can be switched between at will.
[0069] As an example, the first virtual object may be an object controlled by a user in a game, and of course the virtual scene may include other virtual objects, which may be controlled by other users or controlled by a robot program. The first virtual object may be assigned to any one of multiple teams, and the teams may have an adversarial or cooperative relationship, and the teams in the virtual scene may have one or all of the above relationships.
[0070] Taking displaying a virtual scene from a first-person perspective as an example, the virtual scene displayed in the human-computer interaction interface may include determining a viewing area of a first virtual object based on the viewing position and field of view of the first virtual object in the complete virtual scene, and displaying a partial virtual scene located in the viewing area within the complete virtual scene, that is, the displayed virtual scene may be a portion of a panoramic virtual scene. The first-person perspective is the viewing angle that can have the greatest impact on the user, thereby realizing a sense of immersion for the user during operation.
[0071] Taking the bird's-eye view display of the virtual scene as an example, the virtual scene displayed in the human-computer interaction interface may include, in response to a zoom operation on the panoramic virtual scene, displaying a portion of the virtual scene corresponding to the zoom operation on the human-computer interaction interface, that is, the displayed virtual scene may be a portion of the virtual scene for the panoramic virtual scene. In this way, the operability of the user during operation can be improved, thereby improving the efficiency of human-computer interaction.
[0072] In some embodiments, after step S101, if the display time length of the skill release lock identifier of the second virtual object exceeds a time length threshold, the skill can be released for the second virtual object, or the skill can be released for the second virtual object in response to a release operation for the skill.
[0073] For example, the direction setting operation received in step S102 may be received during the process of releasing a skill on the second virtual target, or may be received before releasing the skill. The timing of the received direction setting operation may vary depending on the skill. For example, some skills may determine the target of the skill's action before release and may not change the target after the skill release begins. Some combo skills may select and switch to a new target during the combo. A slashing skill may be normally released when swinging up the sword, and the target of the skill may be selected based on the user's operation immediately after swinging up the sword.
[0074] For example, the time length threshold may be a default value or may be a value set by the user, the client, or the server. The release operation for a skill and the selection operation for a skill waiting to be released may be continuous. For example, the selection operation for a skill waiting to be released may be an operation of pressing and not releasing the skill release button, the skill corresponding to the pressed skill release button is the skill waiting to be released selected by the user, and the release operation for the skill may be an operation of releasing the button.
[0075] 9A, when the user releases the pressing of the skill release button 903, the skill is released for the second fictitious object 902, and the display of the skill release lock identifier 904 is canceled on the right side of the second fictitious object 902. In this way, the continuity of the user's operation can be improved, thereby improving the operation efficiency.
[0076] In some embodiments, referring to FIG. 4, FIG. 4 is an exemplary flowchart of a method for controlling a virtual object according to an embodiment of the present application, and in FIG. 3, step S101 may include steps S1011 to S1014.
[0077] In step S1011, in response to a selection operation on a skill waiting to be released of the first virtual object, a plurality of indicators associated with the type of skill and a parameter range corresponding to each indicator are determined.
[0078] In some embodiments, types of indicators include direction, distance, vitality (eg, health points), and defensive capabilities.
[0079] For example, if the type of indicator is a direction, the parameter range corresponding to the direction is determined by the angle of the first virtual object relative to the virtual object. For example, in FIG. 7A, in a coordinate system in which the direction in which the controlled virtual object (i.e., the first virtual object) is heading is the positive direction, the angle θ is within the parameter range corresponding to the direction, so the skill can be released on the virtual object that the player is heading towards.
[0080] Taking the type of indicator as distance for example, the parameter range corresponding to the distance is determined by the distance (also called length) between the virtual object and the first virtual object. For example, in FIG. 7A, in the coordinate system with the controlled virtual object as the origin, the distances L1 and L2 are parameter ranges corresponding to the distance, so the skill is released on a virtual object that is relatively close to itself.
[0081] Taking the type of indicator as a life state for example, the parameter range corresponding to the life state is determined by the life state of the virtual object. For example, if the parameter range corresponding to the life state is (0, 100), a virtual object with health points lower than 100 is within the parameter range, so that a skill can be released on a virtual object with low health points to improve the effectiveness of counter or support.
[0082] Taking the type of indicator as defensive ability as an example, the parameter range corresponding to defensive ability is determined by the defensive ability of the virtual object. For example, if the parameter range corresponding to defensive ability is (0, 100), virtual objects with defense values lower than 100 are within the parameter range, so that skills can be released on virtual objects with weak defensive ability to improve the effectiveness of counter or support.
[0083] In step S1012, a plurality of candidate virtual objects in the virtual scene are determined, and parameter values corresponding to each index of the plurality of candidate virtual objects are determined.
[0084] In some embodiments, when the skill is used to perform a counter action (e.g., attack), a virtual object (e.g., an enemy) in a group opposing the group to which the first virtual object belongs in the virtual scene is determined as a candidate virtual object, thereby avoiding accidentally injuring a teammate when releasing the skill to perform a counter action, and thereby improving the accuracy of target selection.
[0085] In some embodiments, when a skill is used to perform an auxiliary action (e.g., recovery, attack assistance), a virtual object (teammate) belonging to the same group as the first virtual object in the virtual scene is determined as a candidate virtual object, thereby avoiding accidentally recovering an enemy when releasing a skill to perform an auxiliary action, thereby improving the accuracy of target selection.
[0086] In step S1013, a second fictitious object is determined from the plurality of candidate fictitious objects based on the parameter values and parameter ranges corresponding to the indices of the plurality of candidate fictitious objects.
[0087] In some embodiments, from the plurality of candidate virtual objects, a candidate virtual object whose parameter values corresponding to the indexes are all within a parameter range is determined as the second virtual object.
[0088] As an example, multiple candidate virtual objects may all be within the parameter range, and then a second virtual object may be determined from the multiple candidate virtual objects whose parameter values corresponding to the indicators are all within the parameter range based on the priorities of the indicators associated with the skill type.
[0089] For example, one priority indicator is associated with a skill type, and the priority indicator is one with the highest priority among multiple indicators associated with the skill type. From multiple candidate virtual objects, candidate virtual objects whose parameter values corresponding to the indicators are all within a parameter range are determined. The determined candidate virtual objects are sorted in ascending order according to the parameter values corresponding to the priority indicator, and the first part (one or more) of the candidate virtual objects in the ascending sorted result are determined as the second virtual object.
[0090] For example, in a long-distance trajectory skill, the direction indicator is the preferred indicator, i.e., a candidate virtual object that is more biased toward the direction toward the first virtual object is preferentially selected as the second virtual object, and in a close-range combat skill, the distance indicator is the preferred indicator, i.e., a candidate virtual object that is closer is preferentially selected as the second virtual object.
[0091] In the embodiment of the present application, the user can select the target closest to the target he / she wants to attack and set it as the target for skill release, thereby allowing the user's different types of skills to hit the target he / she most wants to hit, improving the efficiency of target selection.
[0092] For example, the indicator associated with the skill type includes a direction and a distance, the parameter range corresponding to the direction includes a first direction range, and the parameter range corresponding to the distance includes a first distance range and a second distance range, where the priority of the first distance range is higher than the priority of the second distance range. In this way, from the multiple candidate virtual objects, a candidate virtual object that is within a first direction range with respect to the first virtual object and within a first distance range with respect to the first virtual object is determined, and if there is no virtual object that is within the first direction range with respect to the first virtual object and within the first distance range with respect to the first virtual object, a candidate virtual object that is within the first direction range with respect to the first virtual object and within a second distance range with respect to the first virtual object is determined.
[0093] For example, in FIG. 7A, a coordinate system is determined with the position of the controlled virtual object (i.e., the first virtual object) itself as the origin and the direction in which the controlled virtual object is heading as the positive direction. The closest enemy to the controlled virtual object is searched for as the skill target within the range of angle θ and distance L1 (i.e., the distance to the controlled virtual object is L1). If there is no enemy within the range of angle θ and distance L1, the closest enemy to the controlled virtual object is searched for as the skill target within the range of distance L2 (i.e., the distance to the controlled virtual object is L2). If there is no enemy within the range of distance L2, the target selection result is no target. Here, θ, L1, and L2 are setting parameters, 0°<θ<360°, L1>0, and L2>0.
[0094] In step S1014, a skill release lock identifier corresponding to the second virtual object is displayed at the position of the second virtual object that matches the skill type.
[0095] As an example, in FIG. 9A, the second virtual object 902 is compatible with the skill type, and therefore a skill release lock identifier 904 is displayed to the right of the second virtual object 902 to indicate that when the first virtual object 901 releases the skill, the skill will affect the second virtual object 902.
[0096] In step S102, in response to a direction setting operation for the skill, if there is a discrepancy between the set release direction and the direction of the second fictitious object relative to the first fictitious object, a third fictitious object is determined based on the release direction.
[0097] For example, the direction setting operation may be a joystick operation or a click operation for a direction.
[0098] In some embodiments, if the angular deviation between the release direction and the direction of the second virtual object relative to the first virtual object exceeds a deviation threshold, the virtual object located in the release direction and closest to the first virtual object is determined as the third virtual object. In this way, when a user releases a skill, the most appropriate skill target can be selected based on the skill difference and the user's direction setting operation, thereby improving the efficiency of target selection.
[0099] For example, when a skill is used to perform a counteracting action, the third virtual object and the first virtual object belong to different opposing groups, whereas when a skill is used to perform a supporting action, the third virtual object and the first virtual object belong to the same group.
[0100] As an example, the deviation threshold may be a default value, a value set by the user, the client, or the server, or a deviation value based on a user operation.
[0101] For example, in FIG. 7C, θ1 / 2 is the deviation threshold, and the angular deviation between the direction corresponding to the joystick (i.e., the release direction described above) and the direction corresponding to the second virtual object (i.e., the direction of the second virtual object relative to the first virtual object described above) exceeds θ1 / 2, in which case the third virtual object needs to be determined based on the direction corresponding to the joystick.
[0102] In some embodiments, after responding to a direction setting operation for a skill, if the angular deviation between the release direction and the direction of the second virtual object relative to the first virtual object exceeds a deviation threshold and there is no virtual object in the release direction on which the skill can act, a prompt to reset the release direction can be displayed.
[0103] For example, when a skill is used to perform a counter-action, the virtual object on which the skill can act and the first virtual object belong to different opposing groups, whereas when a skill is used to perform a supporting action, the virtual object on which the skill can act and the first virtual object belong to the same group.
[0104] For example, in FIG. 9B, if the user performs a joystick operation and then realizes that there are no enemies to attack or teammates to assist in the newly determined release direction, presentation information 905 is displayed to prompt the user to reset the release direction.
[0105] In some embodiments, after responding to a direction setting operation for the skill, if the angular deviation between the release direction and the direction of the second virtual object relative to the first virtual object exceeds a deviation threshold and there is no virtual object in the release direction on which the skill can act, the skill release lock identifier for the second virtual object continues to be displayed at the position of the second virtual object.
[0106] 9B, if the user realizes after performing a joystick operation that there is no enemy to attack or teammate to assist in the newly determined release direction, the skill release lock identifier 904 continues to be displayed on the right side of the second virtual object 902, thereby making the second virtual object 902 the target of action after the skill release. In this way, it is possible to ensure that the skill does not miss, thereby improving the accuracy of the skill action.
[0107] In some embodiments, when responding to a direction setting operation for a skill, if the set release direction is within a second direction range, first presentation information can be displayed, where the first presentation information is intended to suggest that the virtual object that the skill acts on will be re-determined based on the set release direction.
[0108] For example, in Fig. 9C, a directional control wheel is displayed with a first virtual object 901 as the center of the circle, and different colored presentation information is displayed on the directional control wheel, where first presentation information 907 on the directional control wheel is for presenting that the virtual object that is the action target of the skill is to be determined again based on the set release direction, and the direction range corresponding to the first presentation information 907 is the above-mentioned second direction range. That is, when the release direction is located within the second direction range (for example, release direction 2 in Fig. 9C), the action target of the skill is changed, thereby improving the user's operation efficiency.
[0109] In some embodiments, when the set release direction is located within a third direction range, second presentation information is displayed, where the second presentation information is intended to present that the virtual object on which the skill acts is the second virtual object.
[0110] 9C, a directional control wheel is displayed with the first virtual object 901 as its center, and different colored presentation information is displayed on the directional control wheel, where the second presentation information 906 on the directional control wheel is for presenting that the virtual object that the skill is acting on is still the second virtual object 902, and the direction range corresponding to the second presentation information 906 is the above-mentioned third direction range. That is, when the release direction is within the third direction range (for example, release direction 1 in FIG. 9C), the skill action target is not changed, and the subsequent attack on the second virtual object 902 is maintained, thereby improving the user's operation efficiency.
[0111] In step S103, at the position of the third virtual object, the skill release lock identifier corresponding to the third virtual object is displayed, and the display of the skill release lock identifier corresponding to the second virtual object is canceled.
[0112] In some embodiments, a skill release lock identifier corresponding to a third virtual object is used to indicate that the skill will affect the third virtual object when the first virtual object releases the skill.
[0113] As an example, in FIG. 9D, if there is a discrepancy between the release direction selected by the user and the direction of the second virtual object 902 relative to the first virtual object 901, the third virtual object 908 is determined based on the release direction, the skill release lock identifier 904 is displayed to the right of the third virtual object 908, and the display of the skill release lock identifier 904 to the right of the second virtual object 902 is canceled, and the third virtual object 908 is made the target of action after the skill is released.
[0114] In some embodiments, after step S101, in response to a target setting operation for a skill, a skill release lock identifier corresponding to the fifth virtual object can be further displayed at the position of the fifth virtual object, and the display of the skill release lock identifier corresponding to the second virtual object can be canceled, where the fifth virtual object is the virtual object set by the target setting operation.
[0115] As an example, the target setting operation may be a trigger operation (e.g., a click operation) on a virtual object. For example, in FIG. 9E, when the user clicks on the fifth virtual object 909, the skill release lock identifier 904 is displayed on the right side of the fifth virtual object 909, and the display of the skill release lock identifier 904 on the right side of the second virtual object 902 is canceled, so that the fifth virtual object 909 becomes the target of action after the skill release, thereby improving the diversity of the target switching operation.
[0116] In some embodiments, referring to FIG. 5, FIG. 5 is an exemplary flowchart of a method for controlling a virtual object according to an embodiment of the present application, which may include step S104 after step S103 on FIG.
[0117] In step S104, a skill is released on the third fictitious object.
[0118] In some embodiments, if the display time length of the skill release lock identifier for the third virtual object exceeds a time length threshold, the skill is released for the third virtual object, or in response to a release operation for the skill, the skill is released for the third virtual object.
[0119] For example, the time length threshold may be a default value or may be a value set by the user, the client, or the server. The release operation for a skill and the selection operation for a skill waiting to be released may be continuous. For example, the selection operation for a skill waiting to be released may be an operation of pressing and not releasing the skill release button, the skill corresponding to the pressed skill release button is the skill waiting to be released selected by the user, and the release operation for the skill may be an operation of releasing the button.
[0120] For example, in FIG. 9D , a skill is released for the third virtual object 908 and the display of the skill release lock identifier 904 to the right of the third virtual object 908 is cancelled.
[0121] In some embodiments, after step S104, if there is a deviation between the direction of the third virtual object relative to the first virtual object in response to a direction change operation for the skill during the skill release process, a fourth virtual object is determined based on the direction of the third virtual object relative to the first virtual object. You can then continue to unleash the skill on a fourth imaginary target.
[0122] For example, the direction change operation may be a joystick operation or a directional click operation, etc. In this way, in the process of releasing a skill on the third virtual object, the direction of the skill release can be further changed and the action object of the skill release can be switched.
[0123] Hereinafter, the method for controlling a virtual object according to the embodiment of the present application will be described taking as an example an application scenario in a game and a skill for performing a counter action.
[0124] In the present embodiment, when a user releases a skill, the user's joystick operation and the released skill are used as target selection parameters to realize skill target selection and switching. Different types of skills have different target selection priorities. For example, for long-distance ballistic skills, the target toward which the controlled virtual object is moving has a higher priority, while for close-range combat skills, the target closer to the controlled virtual object has a higher priority. This embodiment allows the user to better select a more appropriate skill target based on the operation, improving the user's combat experience.
[0125] In some embodiments, the timing of the target switch may vary depending on the skill. For example, some skills may decide to switch targets before release and not change targets after the skill release begins. Some combo skills (i.e., skills that are implemented in stages, such as implementing a first sub-skill within a first period and a second sub-skill within a second period, where the second period follows the first period, as inferred from the above) may select and switch to a new target midway through the combo. For example, a first sub-skill may be implemented on a second virtual target, and after implementing the first sub-skill, the user may switch the target of the subsequent sub-skill. Some slashing skills may normally release the skill when swinging up the sword and switch targets based on the user's operation immediately after swinging up the sword. In this way, embodiments of the present application may set different target switch timings for different skills.
[0126] In some embodiments, the parameters set for different skills and the user's operation are calculated as an integrated parameter, and the target closest to the target the user intends to attack is selected and set as the target for skill release (also called the skill target). Then, based on the selected target, the controlled virtual object is directed toward the target to release the skill, thereby allowing all of the user's different skills to hit the target they most want to hit.
[0127] The application scenarios of the embodiment of the present application include releasing different types of skills and releasing the skills when performing different operations with the user's joystick. After applying the method for controlling a virtual object according to the embodiment of the present application, when releasing different types of skills, the skill targets are different, and when the user performs joystick operations during the skill release process, there are different options for the skill targets.
[0128] Referring now to Figures 6A and 6B, Figures 6A and 6B are schematic diagrams of application scenarios of the virtual object control method according to an embodiment of the present application. Figures 6A and 6B are combined to describe an embodiment of the virtual object control method according to an embodiment of the present application.
[0129] (1) When there is no joystick operation In some embodiments, when the controlled virtual object (i.e., the first virtual object) releases a skill, the virtual object that is within a range of 3 meters from the controlled virtual object, within an angle of 180° (where 3 meters and 180° are both set parameters, and the parameters corresponding to different skills are different) and closest to the controlled virtual object is automatically selected as the target, and the controlled virtual object is directed toward the target to release the skill. Here, if there is no enemy (i.e., a virtual object in a group opposing the group to which the controlled virtual object belongs) within the area, the enemy that is closest to the user within a larger range is selected as the target.
[0130] For example, the user can freely set two ranges and angles corresponding to different skills. In this way, during the target selection process for different skills, an appropriate target for the skill can be selected according to the different priority ranges. This allows a long-range ballistic skill to prioritize a target that is being moved toward, and a close-range skill to prioritize a nearby target, allowing the skill to hit the target the user most wants to hit. For example, a long-range ballistic skill can be set with a small angle and a large distance range from the controlled virtual object, allowing the long-range ballistic skill to attack an enemy that the virtual object is moving toward as a priority enemy. A close-range skill can be set with a large angle and a small distance range from the controlled virtual object, allowing the close-range skill to attack a nearby enemy as a priority enemy.
[0131] For example, in FIG. 6A, when the controlled virtual object 601 releases a close-range combat skill, the second virtual object 602 closest to the controlled virtual object 601 is automatically selected as the target, and the controlled virtual object 601 is directed toward the second virtual object 602 to release the skill.
[0132] (2) When joystick operation is available In some embodiments, when a user releases a skill, the user performs a joystick operation. If the direction of the joystick operation does not match the direction in which the target selected by the skill is located, a directional range that matches the direction of the target selected by the skill is determined. If the direction of the joystick operation is within the directional range, it indicates that the target direction selected by the user matches the direction in which the target selected by the skill is located, and the accuracy of the joystick operation is low. In this case, the target selected by the skill is still selected as the skill target. If the direction of the joystick operation exceeds the directional range, it indicates that the user intends to release the skill in another direction at this point. In this case, based on the user's new operation direction, the target closest to the user within the nearby range is selected as the skill target.
[0133] As an example, in FIG. 6B, there is a second virtual object 602 within the surrounding area of the controlled virtual object 601 on which a skill can be applied, but the user's joystick operation points in a different direction, and the direction of skill release is then determined again based on the joystick operation.
[0134] Referring now to Figures 7A, 7B, 8A and 8B, Figures 7A and 7B are schematic diagrams of the principle of a virtual object control method according to an embodiment of the present application, and Figures 8A and 8B are exemplary flowcharts of a virtual object control method according to an embodiment of the present application. Figures 7A, 7B, 8A and 8B are combined to describe an embodiment of a virtual object control method according to an embodiment of the present application.
[0135] 1. Client side (1) Goal selection In some embodiments, after releasing a skill, if the user has not selected a skill target at this time, the skill target is automatically selected, where the skill target selection logic is as follows:
[0136] 1) In Figure 7A, a coordinate system is determined with the position of the controlled virtual object itself as the origin and the direction in which the controlled virtual object is heading as the positive direction. The skill searches for the enemy closest to the controlled virtual object within the range of angle θ and distance L1 (i.e., the distance from the controlled virtual object is L1).
[0137] 2) If there is no enemy within the range described in 1), the skill searches for the enemy closest to the controlled virtual object within a distance of L2 (i.e., the distance to the controlled virtual object is L2) as the target of the skill.
[0138] 3) If there are still no enemies within the range described in 2), the target selection result for this round is no target.
[0139] As an example, the above θ, L1 and L2 are setting parameters.
[0140] As an example, when a certain skill is used, it is not necessary to execute skill target selection logic, and it is possible to support configuring skills of that type in a setting so that it is not necessary to execute skill target selection logic.
[0141] (2) Operations after unlocking the skill 1) After releasing a skill, if the user has not selected a target at this time and the skill has target selection logic, it will automatically select one attack target.
[0142] 2) If one attack target is selected, the controlled virtual object will turn towards the attack target. If no attack target is selected, the controlled virtual object will release the skill normally.
[0143] 3) When the user operates the joystick at the same time as releasing the skill, the target is switched. If the switch to a new target is successful, the new target becomes the skill target.
[0144] The specific logic of the target switching process is as follows:
[0145] In Figure 7B, when the user operates the joystick during skill release, the following judgment process is performed: One direction (i.e., the direction corresponding to the target in Figure 7B) is determined by the controlled virtual object and the selected target, and one direction (i.e., the direction corresponding to the joystick in Figure 7B) is determined by joystick operation (the camera is the coordinate system). The included angle between the two directions is θ, and if θ<θ1 / 2, the controlled virtual object is normally facing the selected target. If θ>θ1 / 2, the direction corresponding to the joystick is judged, and its left-right angle is θ2. It is determined whether there is an enemy within the range of distance L1 (i.e., the distance to the controlled virtual object is L1). If there is an enemy, it is set as a new target. If there is no enemy, there are two processing methods:
[0146] A) The original target then becomes the skill target.
[0147] B) The controlled virtual object faces the direction corresponding to the joystick, and the skill is released in front of the controlled virtual object.
[0148] As an example, the above L1, θ1, and θ2 are setting parameters.
[0149] 2. Server side In some embodiments, during the skill release process, the client first performs a skill logic test, which is then checked by the server. The target selected by the skill is also checked by the server. If there is no problem, the client's result is approved and the skill is released normally. If there is a problem, it is determined that there is a problem with the client's skill release, and corrections are made.
[0150] As an example, FIG. 8A shows the process in which the server checks the result of the target selection of the skill release by the client. For example, after the server receives the skill target uploaded by the client, it checks the skill target and if it is found to be incorrect, it notifies the client that the target is incorrect. Furthermore, it sends the correct target, performs target correction, and if it is found to be correct, the skill target selection is correct and the process ends.
[0151] In some embodiments, there are skills that are unlocked directly by the server, e.g., an AI controlled by the server unlocks the skills, in which case the server's goal selection logic is the same as the client's goal selection logic described above, except that the server performs the relevant logic and reports the results to the client.
[0152] As an example, FIG. 8B shows a process in which the server actively releases a skill and notifies the client of the result. For example, when the server actively releases a skill, it calculates the selection result of the skill target and sends the result to the client.
[0153] In the embodiment of the present application, when a user releases a skill, the most appropriate skill target is selected based on the difference between the skill and the user's direction setting operation, and each skill can determine its own target selection logic according to the skill characteristics and setting parameters, thereby improving the user's combat experience.
[0154] The following describes an exemplary structure of the virtual object control device 555 according to an embodiment of the present application, which is implemented as a software module, with reference to FIG. 2 . In some embodiments, as shown in FIG. 2 , the software modules in the virtual object control device 555 stored in the memory 550 include: The device includes: a selection module (5551) configured to, in response to a selection operation for a skill of a first virtual object waiting to be released, display a skill release lock identifier corresponding to the second virtual object at the position of the second virtual object that matches the type of the skill; and a direction setting module (5552) configured, in response to a direction setting operation for the skill, to determine a third virtual object based on the release direction when there is a discrepancy between the set release direction and the direction of the second virtual object relative to the first virtual object, display the skill release lock identifier corresponding to the third virtual object at the position of the third virtual object, and cancel the display of the skill release lock identifier corresponding to the second virtual object.
[0155] In the above technical solution, the selection module 5551 is further configured to determine a plurality of indicators associated with skill types and a parameter range corresponding to each indicator; determine a plurality of candidate virtual objects in the virtual scene; determine a parameter value corresponding to each indicator of the plurality of candidate virtual objects; and determine the second virtual object from the plurality of candidate virtual objects based on the parameter value and parameter range corresponding to each indicator of the plurality of candidate virtual objects, where the indicator types include direction, distance, life status, and defensive ability.
[0156] In the above technical solution, one priority index is associated with each skill type, and the priority index is the one with the highest priority among multiple indexes associated with the skill type. The selection module 5551 is further configured to determine, from the multiple candidate virtual objects, candidate virtual objects whose parameter values corresponding to the indexes are all within a parameter range, sort the determined candidate virtual objects in ascending order according to the parameter values corresponding to the priority index, and determine the top part of the candidate virtual objects in the ascending sorted result as the second virtual object.
[0157] In the above technical solution, the indicator associated with the skill type includes a direction and a distance, the parameter range corresponding to the direction includes a first direction range, and the parameter range corresponding to the distance includes a first distance range and a second distance range, where the priority of the first distance range is higher than the priority of the second distance range. The selection module 5551 is further configured to determine, from the plurality of candidate virtual objects, a candidate virtual object that is within a first direction range with respect to the first virtual object and a first distance range with respect to the first virtual object, and, if there is no virtual object that is within the first direction range with respect to the first virtual object and a first distance range with respect to the first virtual object, determine a candidate virtual object that is within the first direction range with respect to the first virtual object and a second distance range with respect to the first virtual object.
[0158] In the above technical solution, the selection module 5551 is further configured to: determine, when the skill is used to perform an opposing action, a virtual object that is opposing to the group to which the first virtual object belongs in the virtual scene as a candidate virtual object; and, when the skill is used to perform an auxiliary action, determine, when the skill is used to perform a supporting action, a virtual object that belongs to the same group as the first virtual object in the virtual scene as a candidate virtual object.
[0159] In the above technical solution, the control device 555 of the virtual object further includes a release module, configured to release a skill for the third virtual object when the display time length of the skill release lock identifier of the third virtual object exceeds a time length threshold, or to release a skill for the third virtual object in response to a release operation on the skill.
[0160] In the above technical solution, the release module is further configured to, in response to a direction change operation on the skill during the skill release process, determine a fourth virtual object based on the changed release direction if there is a discrepancy between the changed release direction and the direction of the third virtual object relative to the first virtual object.
[0161] In the above technical solution, the direction setting module 5552 is further configured to determine the virtual object located in the release direction and closest to the first virtual object as the third virtual object when the angular deviation between the release direction and the direction of the second virtual object relative to the first virtual object exceeds a deviation threshold, wherein when the skill is used to perform an opposing action, the third virtual object and the first virtual object belong to different opposing groups, respectively, and when the skill is used to perform an auxiliary action, the third virtual object belongs to the same group as the first virtual object.
[0162] In the above technical solution, the direction setting module 5552 is further configured to display prompting information to suggest re-setting the release direction when the angle deviation between the release direction and the direction of the second virtual object relative to the first virtual object exceeds a deviation threshold and there is no virtual object in the release direction on which the skill can act.
[0163] In the above technical solution, the direction setting module 5552 is further configured to display first presentation information when the set release direction is within a second direction range, where the first presentation information is for presenting that the virtual object that the skill is to act on should be re-determined based on the set release direction.
[0164] In the above technical solution, the direction setting module 5552 is further configured to display second presentation information when the set release direction is located within a third direction range, where the second presentation information is for presenting that the virtual object that is the action target of the skill is a second virtual object.
[0165] In the above technical solution, the direction setting module 5552 is further configured to, in response to a target setting operation for a skill, display a skill release lock identifier corresponding to the fifth virtual object at the position of the fifth virtual object, and cancel the display of the skill release lock identifier corresponding to the second virtual object, where the fifth virtual object is the virtual object set by the target setting operation.
[0166] In the above technical solution, the release module is further configured to release the skill for the second virtual object when the display time length of the skill release lock identifier of the second virtual object exceeds a time length threshold, or release the skill for the second virtual object in response to a release operation on the skill.
[0167] In the above technical solution, the direction setting module 5552 is further configured to continue to display a skill release lock identifier for the second virtual object at the position of the second virtual object when the angle deviation between the release direction and the direction of the second virtual object relative to the first virtual object exceeds a deviation threshold and there is no virtual object in the release direction on which the skill can act.
[0168] An embodiment of the present application provides a computer program product or a computer program including computer instructions stored in a computer-readable storage medium, wherein a processor of a computing device reads the computer instructions from the computer-readable storage medium and executes the computer instructions to cause the computing device to perform the method for controlling a virtual object described in the embodiment of the present application.
[0169] An embodiment of the present application provides a computer-readable storage medium having executable instructions stored thereon, which, when executed by a processor, cause the processor to perform a method for controlling a virtual object according to an embodiment of the present application, for example, the method for controlling a virtual object shown in FIG. 3, FIG. 4, or FIG. 5.
[0170] In some embodiments, the computer-readable storage medium may include memory such as FRAM, ROM, PROM, EPROM, EEPROM, flash memory, magnetic surface memory, optical disk, or CD-ROM, or may include various devices including one or any combination of the above memories.
[0171] In some embodiments, the executable instructions take the form of a program, software, software module, script, or code, written in any type of programming language (including compiled or interpreted languages, or declarative or procedural languages), and may be deployed in any form, such as as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment.
[0172] As an example, the executable instructions may, but do not necessarily, correspond to a file in a file system, and may be stored in part of a file that stores other programs or data, for example, in one or more scripts within a HyperText Markup Language (HTML) document, in a single file for the program under discussion, or in multiple joint files (e.g., files that store one or more modules, subprograms, or code portions).
[0173] As an example, the executable instructions may be deployed to be executed on one computing device, or may be deployed to be executed on multiple computing devices that are co-located, or may be deployed to be executed on multiple computing devices that are distributed across multiple locations and interconnected by a communications network.
[0174] Therefore, the embodiment of the present application has the following beneficial effects.
[0175] (1) By automatically determining a virtual object that matches the type of skill as the virtual object on which the skill acts, the user's operations are reduced and the efficiency of virtual object selection is improved.
[0176] (2) It supports users to manually adjust the release direction to switch the virtual object that the skill acts on, improving the accuracy of the skill, thereby achieving the performance of immersive perception simulation of the virtual scene and improving the resource utilization of the graphics processing hardware.
[0177] (3) The user can select the target closest to the target they wish to attack and use that as the target for skill release, allowing any of the user's different skills to hit the target they most want to hit.
[0178] The above is merely an example of the present application and is not intended to limit the scope of protection of the present application. Any modifications, equivalent replacements, improvements, etc. made within the spirit and scope of the present application are all included in the scope of protection of the present application. [Explanation of symbols]
[0179] 100 Virtual Scenes 110 First Virtual Object 120 Second Virtual Object 130 Skill Release Lock Identifier 140 Third Virtual Object 200 servers 300 Network 400 terminals 410 Client 431 Output Device 432 Input Device 500 Electronic equipment 510 processor 520 network interface 530 User Interface 531 Output Device 532 Input Device 540 Bus System 550 memory 551 Operating Systems 552 Network Communication Module 553 Display Module 554 Input Processing Module 555 Control device 601 Controlled Virtual Object 602 Second Virtual Object 603 Skill release button 901 First Virtual Object 902 Second Virtual Object 903 Skill Release Button 904 Skill Release Lock Identifier 905 Presentation information 906 Second presentation information 907 First presentation information 908 Third Virtual Object 909 5th Virtual Object 5551 Selection Module 5552 Orientation Module
Claims
1. A method for controlling a virtual object, executed by an electronic device, comprising: In response to a selection operation for a skill of a first virtual object waiting to be released, displaying a skill release lock identifier corresponding to the second virtual object at a position of the second virtual object that matches the type of the skill waiting to be released; In response to a direction setting operation for the release waiting skill, when there is a deviation between a set release direction and a direction of the second virtual object relative to the first virtual object, a step of determining a third virtual object based on the release direction, a step of displaying second presentation information when the set release direction is within a third direction range, the second presentation information being for presenting that the virtual object that is the action target of the release-waiting skill is the second virtual object; a step of displaying first presentation information when the set release direction is within a second direction range in which the deviation is greater than the deviation of a direction included in the third direction range, the first presentation information being for presenting that a second virtual object that is an action target of the release-waiting skill will be newly determined based on the set release direction; and displaying a skill release lock identifier corresponding to the third virtual object at the position of the third virtual object, and canceling the display of the skill release lock identifier corresponding to the second virtual object; A method for controlling a virtual object, including:
2. Before displaying a skill release lock identifier corresponding to the second virtual object, the control method for the virtual object includes: determining a plurality of indices associated with the type of the waiting skill and a parameter range corresponding to each of the indices; determining a plurality of candidate virtual objects in the virtual scene and determining parameter values corresponding to the indices of each of the plurality of candidate virtual objects; determining the second virtual object from the plurality of candidate virtual objects based on parameter values corresponding to the indices of the plurality of candidate virtual objects and the parameter ranges; The method for controlling a virtual object according to claim 1 , wherein the types of indicators include direction, distance, life status, and defensive ability.
3. The type of the skill waiting to be released is associated with one priority index, and the priority index is one having the highest priority among multiple indexes associated with the type of the skill waiting to be released; The step of determining the second virtual object from the plurality of candidate virtual objects based on the parameter values corresponding to the respective indicators of the plurality of candidate virtual objects and the parameter ranges includes: determining a candidate virtual object from the plurality of candidate virtual objects, all of whose parameter values corresponding to the indexes are within the parameter range; a step of sorting the determined candidate virtual objects in ascending order according to the parameter value corresponding to the priority index, and determining the first part of the candidate virtual objects in the ascending sorting result as the second virtual object; The method for controlling a virtual object according to claim 2 , comprising:
4. The indicator associated with the type of the waiting skill for release includes a direction and a distance, the parameter range corresponding to the direction includes a first direction range, the parameter range corresponding to the distance includes a first distance range and a second distance range, and the priority of the first distance range is higher than the priority of the second distance range; The step of determining a candidate virtual object from the plurality of candidate virtual objects, all of whose parameter values corresponding to the indexes are within the parameter range, includes: determining, from the plurality of candidate virtual objects, a candidate virtual object that is within the first direction range relative to the first virtual object and within the first distance range relative to the first virtual object; determining a candidate virtual object that is within the first direction range with respect to the first fictitious object and within the second distance range with respect to the first fictitious object when there is no virtual object that is within the first direction range with respect to the first fictitious object and within the first distance range with respect to the first fictitious object; The method for controlling a virtual object according to claim 2 , comprising:
5. determining a plurality of candidate virtual objects in the virtual scene includes: When the waiting skill is used to perform a counter-action, a virtual object in the virtual scene that competes with a group to which the first virtual object belongs is determined as the candidate virtual object; When the release waiting skill is used to perform an auxiliary action, determining a virtual object in the virtual scene that belongs to the same group as the first virtual object as the candidate virtual object; The method for controlling a virtual object according to claim 2 , comprising:
6. A method for controlling a virtual object, executed by an electronic device, comprising: In response to a selection operation for a skill of a first virtual object waiting to be released, displaying a skill release lock identifier corresponding to the second virtual object at a position of the second virtual object that matches the type of the skill waiting to be released; In response to a direction setting operation for the release waiting skill, if there is a deviation between the set release direction and the direction of the second virtual object relative to the first virtual object, determine a third virtual object based on the release direction; displaying a skill release lock identifier corresponding to the third virtual object at the position of the third virtual object, and canceling the display of a skill release lock identifier corresponding to the second virtual object; When the display time length of the skill release lock identifier of the third virtual object exceeds a time length threshold, releasing the waiting skill for release for the third virtual object; or Releasing the skill waiting for release to the third virtual object in response to a release operation on the skill waiting for release. A method for controlling a virtual object, including:
7. After releasing the waiting skill for release for the third virtual object, the control method for the virtual object includes: In the release process of the release-waiting skill, when there is a deviation between the changed release direction and the direction of the third virtual object relative to the first virtual object in response to a direction change operation for the release-waiting skill, determining a fourth virtual object based on the changed release direction; Continuing to release the waiting skill for release for the fourth virtual object; The method for controlling a virtual object according to claim 6 , further comprising:
8. When there is a discrepancy between the set release direction and the direction of the second fictitious object relative to the first fictitious object, determining a third fictitious object based on the release direction includes: determining a virtual object located in the release direction and closest to the first virtual object as the third virtual object when an angular deviation between the release direction and a direction of the second virtual object relative to the first virtual object exceeds a deviation threshold; When the waiting skill is used to perform a counter-action, the third virtual object and the first virtual object belong to different opposing groups, respectively; When the release waiting skill is used to perform an auxiliary action, the third virtual object belongs to the same group as the first virtual object; The method for controlling a virtual object according to claim 1 .
9. After responding to a direction setting operation for the release waiting skill, the method for controlling the virtual object includes: a step of displaying presentation information for suggesting that the release direction be reset when an angle deviation between the release direction and the direction of the second virtual object relative to the first virtual object exceeds a deviation threshold and there is no virtual object in the release direction on which the release-waiting skill can act; The method of claim 1 , further comprising:
10. After displaying a skill release lock identifier corresponding to the second virtual object, the method for controlling the virtual object includes: In response to a target setting operation for the skill waiting to be released, the method further includes the step of displaying a skill release lock identifier corresponding to the fifth virtual object at the position of the fifth virtual object and canceling the display of the skill release lock identifier corresponding to the second virtual object; The fifth virtual object is a virtual object set by the target setting operation. The method for controlling a virtual object according to claim 1 .
11. A method for controlling a virtual object, executed by an electronic device, comprising: In response to a selection operation for a skill of a first virtual object waiting to be released, displaying a skill release lock identifier corresponding to the second virtual object at a position of the second virtual object that matches the type of the skill waiting to be released; In response to a direction setting operation for the release waiting skill, when there is a deviation between a set release direction and a direction of the second virtual object relative to the first virtual object, determining a third virtual object based on the release direction; displaying a skill release lock identifier corresponding to the third virtual object at the position of the third virtual object, and canceling the display of the skill release lock identifier corresponding to the second virtual object; Including, After displaying the skill release lock identifier corresponding to the second virtual object, When the display time length of the skill release lock identifier of the second virtual object exceeds a time length threshold, releasing the waiting skill for release for the second virtual object; or Releasing the release-waiting skill to the second virtual object in response to a release operation on the release-waiting skill. The method for controlling a virtual object further comprises:
12. After responding to a direction setting operation for the release waiting skill, the method for controlling the virtual object includes: If an angle deviation between the release direction and the direction of the second virtual object relative to the first virtual object exceeds a deviation threshold and there is no virtual object in the release direction on which the skill waiting for release can act, continuing to display a skill release lock identifier for the second virtual object at the position of the second virtual object. The method of claim 1 further comprising:
13. A control device for a virtual object, a selection module configured to, in response to a selection operation on a skill of a first virtual object waiting to be released, display a skill release lock identifier corresponding to the second virtual object at a position of a second virtual object that matches the type of the skill waiting to be released; a direction setting module configured to, in response to a direction setting operation for the skill waiting to be released, determine a third virtual object based on the release direction when there is a discrepancy between a set release direction and a direction of the second virtual object relative to the first virtual object, display a skill release lock identifier corresponding to the third virtual object at a position of the third virtual object, and cancel the display of the skill release lock identifier corresponding to the second virtual object; Equipped with The orientation module includes: When the set release direction is within a third direction range, second presentation information is displayed, and the second presentation information is for presenting that a virtual object that is an action target of the release-waiting skill is the second virtual object; When the set release direction is within a second direction range in which the deviation is larger than the direction included in the third direction range, first presentation information is displayed, and the first presentation information is for presenting that a second virtual object that is an action target of the release-waiting skill will be newly determined based on the set release direction. Virtual object control device.
14. a memory for storing executable instructions; a processor that, when executing executable instructions stored in said memory, implements the method for controlling a virtual object according to any one of claims 1 to 12; An electronic device comprising:
15. A computer program causing a computer to execute the method for controlling a virtual object according to any one of claims 1 to 12.
Citation Information
Patent Citations
Method and apparatus for locking virtual object in game, electronic device, and storage medium
CN110420462A
Virtual object control method and device, computer equipment and storage medium
CN111672115A
Information processing program, information processing method, and information processing device
JP2018075225A
Game system and program
JP2019136358A
Program, game system and server system
JP2020039403A