WO2023221707A1 - 虚拟车辆的控制方法、装置、设备及存储介质 - Google Patents

虚拟车辆的控制方法、装置、设备及存储介质 Download PDF

Info

Publication number
WO2023221707A1
WO2023221707A1 PCT/CN2023/088581 CN2023088581W WO2023221707A1 WO 2023221707 A1 WO2023221707 A1 WO 2023221707A1 CN 2023088581 W CN2023088581 W CN 2023088581W WO 2023221707 A1 WO2023221707 A1 WO 2023221707A1
Authority
WO
WIPO (PCT)
Prior art keywords
virtual vehicle
virtual
drift
control
speed
Prior art date
Application number
PCT/CN2023/088581
Other languages
English (en)
French (fr)
Inventor
薛皓晟
涂金龙
罗志鹏
Original Assignee
腾讯科技(深圳)有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 腾讯科技(深圳)有限公司 filed Critical 腾讯科技(深圳)有限公司
Publication of WO2023221707A1 publication Critical patent/WO2023221707A1/zh

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
    • A63F13/533Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game for prompting the player, e.g. by displaying a game menu
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/57Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • A63F13/803Driving vehicles or craft, e.g. cars, airplanes, ships, robots or tanks
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/64Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/80Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
    • A63F2300/8017Driving on land or water; Flying

Abstract

本申请公开了一种虚拟车辆的控制方法、装置、设备及存储介质,属于虚拟世界技术领域。该方法包括:显示位于虚拟环境中的虚拟车辆(510);响应于方向控制部件上的第一转向操作和手刹控制部件上的刹车操作,控制虚拟车辆进入漂移状态(520);响应于方向控制部件上的第二转向操作,控制保持漂移状态的虚拟车辆的车头朝向转动至第二方向,第二方向位于速度方向的第一侧(530);响应于手刹控制部件上的刹车操作,控制保持漂移状态的虚拟车辆的车头朝向转动至第三方向,第三方向位于速度方向的第二侧(540)。通过刹车操作保持虚拟车辆的漂移状态,将车头朝向从速度方向的第一侧转向为第二侧,提升了虚拟车辆通过连续弯道的能力。

Description

虚拟车辆的控制方法、装置、设备及存储介质
本申请要求于2022年05月20日提交的申请号为202210555869.7、发明名称为“虚拟车辆的控制方法、装置、设备及存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及虚拟世界技术领域,特别涉及一种虚拟车辆的控制方法、装置、设备及存储介质。
背景技术
在包括虚拟环境的应用程序中通常需要控制虚拟对象在虚拟环境中进行虚拟活动;以虚拟车辆为例,需要控制虚拟车辆在虚拟环境中进行虚拟行驶。
在相关技术中,虚拟环境中的虚拟道路存在弯道,通过控制虚拟车辆进入漂移状态,减小虚拟车辆通过弯道的转向半径,以便快速驾驶通过虚拟道路的弯道。
在虚拟道路中存在连续弯道时,虚拟车辆容易与虚拟路边道具碰撞,造成虚拟车辆减速,虚拟车辆通过连续弯道的能力需要提升。
发明内容
本申请提供了一种虚拟车辆的控制方法、装置、设备及存储介质,所述技术方案如下:
根据本申请的一方面,提供了一种虚拟车辆的控制方法,所述方法由终端执行,所述方法包括:
显示位于虚拟环境中处于行驶状态的所述虚拟车辆;
响应于方向控制部件上的第一转向操作和手刹控制部件上的刹车操作,控制所述虚拟车辆进入漂移状态,所述第一转向操作用于控制所述虚拟车辆向速度方向的第一侧进行转向,所述虚拟车辆的车头朝向为第一方向,所述第一方向位于所述速度方向的第一侧;
响应于所述方向控制部件上的第二转向操作,控制保持所述漂移状态的所述虚拟车辆的车头朝向转动至第二方向,所述第二转向操作用于控制所述虚拟车辆向所述速度方向的第二侧进行转向,所述第二方向位于所述速度方向的所述第一侧,且所述第二方向与所述速度方向形成的第二夹角小于所述第一方向与所述速度方向形成的第一夹角;
响应于所述手刹控制部件上的所述刹车操作,控制保持所述漂移状态的所述虚拟车辆的车头朝向转动至第三方向,所述第三方向位于所述速度方向的所述第二侧。
根据本申请的另一方面,提供了一种虚拟车辆的控制装置,所述装置包括:
显示模块,用于显示位于虚拟环境中处于行驶状态的所述虚拟车辆;
控制模块,用于响应于方向控制部件上的第一转向操作和手刹控制部件上的刹车操作,控制所述虚拟车辆进入漂移状态,所述第一转向操作用于控制所述虚拟车辆向速度方向的第一侧进行转向,所述虚拟车辆的车头朝向为第一方向,所述第一方向位于所述速度方向的第一侧;
所述控制模块,还用于响应于所述方向控制部件上的第二转向操作,控制保持所述漂移状态的所述虚拟车辆的车头朝向转动至第二方向,所述第二转向操作用于控制所述虚拟车辆向所述速度方向的第二侧进行转向,所述第二方向位于所述速度方向的所述第一侧,且所述第二方向与所述速度方向形成的第二夹角小于所述第一方向与所述速度方向形成的第一夹角;
所述控制模块,还用于响应于所述手刹控制部件上的所述刹车操作,控制保持所述漂移状态的所述虚拟车辆的车头朝向转动至第三方向,所述第三方向位于所述速度方向的所述第二侧。
根据本申请的另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储 器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上方面所述的虚拟车辆的控制方法。
根据本申请的另一方面,提供了一种计算机可读存储介质,所述可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如上方面所述的虚拟车辆的控制方法。
根据本申请的另一方面,提供了一种计算机程序产品,所述计算机程序产品包括计算机指令,所述计算机指令存储在计算机可读存储介质中,处理器从所述计算机可读存储介质读取并执行所述计算机指令,以实现上述如上方面所述的虚拟车辆的控制方法。
本申请提供的技术方案带来的有益效果至少包括:
通过在虚拟车辆处于漂移状态时执行第二转向操作,让虚拟车辆的车头朝向发生变化;通过刹车操作保持了虚拟车辆的漂移状态,在不中断漂移状态的情况下将虚拟车辆的车头朝向从速度方向的第一侧转向为速度方向的第二侧,实现了虚拟车辆进行反向漂移,减小了虚拟车辆通过连续弯道时的转向半径,提升了虚拟车辆通过连续弯道的能力。
附图说明
图1是本申请一个示例性实施例提供的终端的结构示意图;
图2是本申请一个示例性实施例提供的计算机系统的结构框图;
图3是本申请一个示例性实施例提供的虚拟车辆的控制方法的界面示意图;
图4是本申请一个示例性实施例提供的虚拟车辆的控制方法的界面示意图;
图5是本申请一个示例性实施例提供的虚拟车辆的控制方法的流程图;
图6是本申请一个示例性实施例提供的虚拟车辆的控制方法的流程图;
图7是本申请一个示例性实施例提供的虚拟车辆的控制方法的界面示意图;
图8是本申请一个示例性实施例提供的虚拟车辆的控制方法的流程图;
图9是本申请一个示例性实施例提供的虚拟车辆的控制方法的界面示意图;
图10是本申请一个示例性实施例提供的虚拟车辆的控制方法的界面示意图;
图11是本申请一个示例性实施例提供的虚拟车辆的控制方法的流程图;
图12是本申请一个示例性实施例提供的计算漂移角的示意图;
图13是本申请一个示例性实施例提供的虚拟车辆的控制方法的流程图;
图14是本申请一个示例性实施例提供的虚拟车辆的控制方法的流程图;
图15是本申请一个示例性实施例提供的虚拟车辆的控制方法的流程图;
图16是本申请一个示例性实施例提供的虚拟车辆的控制方法的流程图;
图17是本申请一个示例性实施例提供的虚拟车辆的控制方法的流程图;
图18是本申请一个示例性实施例提供的虚拟车辆的控制方法的流程图;
图19是本申请一个示例性实施例提供的虚拟车辆的控制方法的界面示意图;
图20是本申请一个示例性实施例提供的虚拟车辆的控制装置的结构框图;
图21是本申请一个示例性实施例提供的终端的结构框图。
具体实施方式
本申请中提供的方法可以应用于具有虚拟环境和虚拟角色的应用程序中。示例性的,支持虚拟环境的应用程序是用户可以控制虚拟角色在虚拟环境内移动的应用程序。示例性的,本申请中提供的方法可以应用于:虚拟现实(Virtual Reality,VR)应用程序、增强现实(Augmented Reality,AR)程序、三维地图程序、虚拟现实游戏、增强现实游戏、第一人称射击游戏(First-Person Shooting Game,FPS)、第三人称射击游戏(Third-Person Shooting Game,TPS)、多人在线战术竞技游戏(Multiplayer Online Battle Arena Games,MOBA)、策略游戏(Simulation Game,SLG)中的任意一种程序。
示例性的,虚拟环境中的游戏由一个或多个游戏世界的地图构成,游戏中的虚拟环境模 拟现实世界的场景,用户可以操控游戏中的虚拟角色在虚拟环境中进行行走、跑步、跳跃、射击、格斗、驾驶等动作,交互性较强,并且多个用户可以在线组队进行竞技游戏。
在一些实施例中,上述应用程序可以是射击类游戏、竞速类游戏、角色扮演类游戏、冒险类游戏、沙盒游戏、战术竞技游戏等程序。该客户端可以支持Windows操作系统、苹果操作系统、安卓操作系统、IOS操作系统和LINUX操作系统中的至少一种操作系统,并且不同操作系统的客户端可以互联互通。在一些实施例中,上述客户端是适用于具有触摸屏的移动终端上的程序。比如,本申请实施例提供的虚拟车辆的控制方法可应用于支持竞速类游戏的应用程序中,玩家可通过控制虚拟车辆进行虚拟竞速比赛;又如,本申请实施例提供的虚拟车辆的控制方法可应用于支持角色扮演类游戏的应用程序中,玩家可通过控制虚拟车辆在虚拟场景中移动以满足玩家漫游观光的需求。在一些实施例中,上述客户端是基于三维引擎开发的应用程序,比如三维引擎是Unity引擎。
本申请中的终端可以是台式计算机、膝上型便携计算机、手机、平板电脑、电子书阅读器、MP3(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)播放器、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器等等。该终端中安装和运行有支持虚拟环境的客户端,比如支持三维虚拟环境的应用程序的客户端。该应用程序可以是战术竞技生存(Battle Royale,BR)游戏、虚拟现实应用程序、增强现实程序、三维地图程序、第三人称射击游戏、第一人称射击游戏、多人在线战术竞技游戏中的任意一种。可选地,该应用程序可以是单机版的应用程序,比如单机版的3D游戏程序,也可以是网络联机版的应用程序。
图1是本申请一个示例性实施例提供的终端的结构示意图,该终端包括处理器101、触摸屏102以及存储器103。
处理器101可以是单核处理器、多核处理器、嵌入式芯片以及具有指令运行能量的处理器中的至少一种。触摸屏102包括普通触摸屏或压力感应触摸屏。普通触摸屏可以对施加在触摸屏102上的按压操作或滑动操作进行测量;压力感应触摸屏可以对施加在触摸屏102上的按压力度进行测量。
存储器103存储有处理器101的可执行程序。示意性的,存储器103中存储有虚拟环境程序A、应用程序B、应用程序C、触摸压力感应模块18、操作系统的内核层19。其中,虚拟环境程序A为基于三维虚拟环境模块17开发的应用程序。可选地,虚拟环境程序A包括但不限于由三维虚拟环境模块(也称虚拟环境模块)17开发的游戏程序、虚拟现实程序、三维地图程序、三维演示程序中的至少一种。比如,终端的操作系统采用安卓操作系统时,虚拟环境程序A采用Java编程语言以及C#语言进行开发;又比如,终端的操作系统采用IOS操作系统时,虚拟环境程序A采用Object-C编程语言以及C#语言进行开发。
三维虚拟环境模块17是一款支持多种操作系统平台的模块,示意性的,三维虚拟环境模块可用于游戏开发领域、虚拟现实(Virtual Reality,VR)领域以及三维地图领域等多领域的程序开发,本申请实施例对三维虚拟环境模块17的具体类型不限,在下文实施例中以三维虚拟环境模块17是使用Unity引擎开发的模块为例来举例说明。
触摸(以及压力)感应模块18是用于接收触摸屏驱动程序191所上报的触摸事件(以及压力触控事件)的模块,可选地,触摸感应模块可以不具有压力感应功能,不接收压力触控事件。触摸事件包括:触摸事件的类型和坐标值,触摸事件的类型包括但不限于:触摸开始事件、触摸移动事件和触摸落下事件。压力触控事件中包括:压力触控事件的压力值以及坐标值。该坐标值用于指示压力触控操作在显示屏上的触控位置。可选地,以显示屏的水平方向建立横坐标轴,显示屏的竖直方向建立竖坐标轴得到一个二维坐标系。
示意性的,内核层19包括了触摸屏驱动程序191以及其它驱动程序192。触摸屏驱动程序191是用于检测压力触控事件的模块,当触摸屏驱动程序191检测到压力触控事件后,将压力触控事件传递给压力感应模块18。
其它驱动程序192可以是与处理器101有关的驱动程序、与存储器103有关的驱动程序、与网络组件有关的驱动程序、与声音组件有关的驱动程序等。本领域技术人员可以知晓,上述仅为对终端的结构的概括性示意。在不同的实施例中,终端可以具有更多或更少的组件。比如,终端还可以包括重力加速度传感器、陀螺仪传感器、电源等。
图2示出了本申请一个示例性实施例提供的计算机系统的结构框图,该计算机系统200包括:终端210、服务器集群220。
终端210安装和运行有支持虚拟环境的客户端211,该客户端211可以是支持虚拟环境的应用程序。当终端运行客户端211时,终端210的屏幕上显示客户端211的用户界面。该客户端可以是FPS游戏、TPS游戏、MOBA游戏、竞技游戏、SLG游戏的任意一种。在本实施例中,以该客户端是竞速类游戏来举例说明。终端210是第一用户212使用的终端,第一用户212使用终端210控制位于虚拟环境中的第一虚拟角色进行活动,第一虚拟角色可以称为第一用户212的第一虚拟角色。第一虚拟角色的活动包括但不限于:调整身体姿态、爬行、步行、奔跑、骑行、飞行、跳跃、驾驶、拾取、射击、攻击、投掷中的至少一种。示意性的,第一虚拟角色是第一虚拟角色,比如仿真人物角色或动漫人物角色。
终端210的设备类型包括:智能手机、平板电脑、电子书阅读器、MP3播放器、MP4播放器、膝上型便携计算机和台式计算机中的至少一种。图2中仅示出了一个终端,但在不同实施例中存在多个其它终端240。在一些实施例中,还存在至少一个其它终端240是开发者对应的终端,在其它终端240上安装有虚拟环境的客户端的开发和编辑平台,开发者可在其它终端240上对客户端进行编辑和更新,并将更新后的客户端安装包通过有线或无线网络传输至服务器集群220,终端210可从服务器集群220下载客户端安装包实现对客户端的更新。
终端210和其它终端240通过无线网络或有线网络与服务器集群220相连。
服务器集群220包括一台服务器、多台服务器、云计算平台和虚拟化中心中的至少一种。服务器集群220用于为支持三维虚拟环境的客户端提供后台服务。可选地,服务器集群220承担主要计算工作,终端承担次要计算工作;或者,服务器集群220承担次要计算工作,终端承担主要计算工作;或者,服务器集群220和终端之间采用分布式计算架构进行协同计算。
可选地,上述终端和服务器均为计算机设备。在一个示意性的例子中,服务器集群220包括服务器221和服务器226,服务器221包括处理器222、用户帐号数据库223、对战服务模块224、面向用户的输入/输出接口(Input/Output Interface,I/O接口)225。其中,处理器222用于加载服务器221中存储的指令,处理用户帐号数据库223和对战服务模块224中的数据;用户帐号数据库223用于存储终端210以及其它终端240所使用的用户帐号的数据,比如用户帐号的头像、用户帐号的昵称、用户帐号的战斗力指数,用户帐号所在的服务区;对战服务模块224用于提供多个对战房间供用户进行对战;面向用户的I/O接口225用于通过无线网络或有线网络和终端210建立通信交换数据。
结合上述对虚拟环境的介绍以及实施环境说明,以下将对本申请实施例提供的虚拟车辆的控制方法进行说明。示意性的,本申请提供的虚拟车辆的控制方法可通过玩家在终端上的操作实现,也可通过玩家对与终端相连的手柄、操作台等的操作实现。
其中,在通过终端上的操作实现的情况下,本申请实施例提供的虚拟车辆的控制方法中所涉及的多个控制部件均可实现为终端的显示界面中的控件;在通过对与终端相连的手柄、操作台等的操作实现的情况下,本申请实施例提供的虚拟车辆的控制方法中所涉及的多个控制部件均可实现为手柄、操作台上的某一组成部分。比如,方向控制部件可实现为手柄上的移动按键或摇杆;又如,油门控制部件可实现为操作台上的油门踏板,方向控制部件可显示为操作台上的方向盘。
以本申请提供的虚拟车辆的控制方法通过玩家在终端上的操作实现为例,图3示出了本申请一个示例性实施例提供的虚拟车辆的控制方法的界面示意图。其中,在显示界面310中 显示有虚拟车辆320,虚拟车辆320在显示界面310中显示的虚拟场景中行驶。
示意性的,显示界面310中包括如下控件中的至少一个:刹车控件301、能量控件302、油门控件303、方向控件304、手刹控件305和复位控件306。各个控件描述如下:
其中,刹车控件301用于实现对虚拟车辆320的抓地力的控制,虚拟车辆320的抓地力是指虚拟车辆320的轮胎与地面之间存在的摩擦力。响应于刹车控件301上的触发操作,控制虚拟车辆320的车速降低。应当理解的是,虚拟车辆320的车速的降低通过虚拟车辆320的抓地力的增强来实现,虚拟车辆320的车速的降幅可根据实际需要设定。以玩家单击刹车控件301为例,响应于刹车控件301上的单击操作,虚拟车辆的320的轮胎与地面之间存在的摩擦力增加,虚拟车辆的抓地力随之增强,从而使得虚拟车辆320的车速随之降低。
能量控件302用于指示虚拟车辆320的加速能量的存量;响应于能量控件302上的触发操作,可消耗一个单位的加速能量为虚拟车辆320进行提速服务。可选的,能量控件302的周侧显示有加速能量的储存量控件01,储存量控件01用于指示虚拟车辆320对应的加速能量的储存量。以加速能量是氮气为例,能量控件302用于指示可用于为虚拟车辆320提速的氮气的存量,比如能量控件302用于指示一瓶氮气的存量。其中,储存量控件01用于指示虚拟车辆320对应的氮气瓶的数量。响应于能量控件302上的触发操作,消耗一瓶氮气为虚拟车辆320提供加速服务,在显示界面310中显示消耗一瓶氮气的提示信息。
油门控件303用于实现虚拟车辆320的车速的提升。响应于油门控件303上的触发操作,控制虚拟车辆320加速行驶。其中,油门控件303上的触发操作可以是单击操作、双击操作、触摸操作、持续按压操作等操作中的至少一种。本申请实施例中,响应于油门控件303上的触发操作,虚拟车辆320对应的油门将自动保持按下的状态,以使得虚拟车辆320保持持续加速状态。比如,玩家单击油门控件303后随之松开,虚拟车辆320进入持续加速行驶的状态。可选的,在虚拟车辆320处于持续加速状态的情况下,刹车控件301还用于实现虚拟车辆320的停止加速、减速和倒车功能中的至少一种。
可选的,在虚拟车辆进入持续加速状态后,响应于刹车控件301上的触发操作,控制虚拟车辆320停止加速,用于模拟油门弹起的状态。其中,在刹车控件301上的触发操作是单击操作的情况下,控制虚拟车辆320停止加速并进入匀速行驶状态;在刹车控件301上的触发操作是持续按压操作的情况下,控制虚拟车辆320停止加速并进入持续减速状态。可选的,在虚拟车辆320处于持续减速状态的情况下,若虚拟车辆320的车速降为0,且刹车控件301上的持续按压仍然存在,则控制虚拟车辆320进入倒车状态。
在一个可选实现方式中,刹车控件301和油门控件303不可同时使用。
方向控件304用于实现虚拟车辆320的转向。其中,方向控件304可包括左转向控件和右转向控件,用于实现虚拟车辆320的左右转向。手刹控件305用于实现虚拟车辆320的制动。在平跑状态下,响应于手刹控件305上的触发操作,控制虚拟车辆320的车速降低。可选的,响应于方向控件304和手刹控件305上的同时触发操作,虚拟车辆320在弯道中进入漂移状态。可选的,在漂移状态下,响应于手刹控件305上的触发操作,控制虚拟车辆320的车头内旋,虚拟车辆320的车速的减少幅度大于虚拟车辆320在平跑状态下的减少幅度。
复位控件306用于实现虚拟车辆320的重新起步。响应于复位控件306上的触发操作,控制虚拟车辆320显示在周侧的开阔路面上,并控制虚拟车辆320重新起步。其中,复位控件306通常在虚拟车辆32的脱困过程中使用。
图4示出了本申请一个示例性实施例提供的虚拟车辆的控制方法的界面示意图。与图3类似,显示界面410中显示有虚拟车辆420。其中,虚拟车辆420在弯道中处于漂移状态,漂移状态又可称之为甩尾状态,虚拟车辆420在漂移状态下以过度转向的方式侧滑行驶。
本申请实施例提供的虚拟车辆的控制方法包括:
响应于方向控制部件上的第一转向操作和手刹控制部件上的刹车操作,控制虚拟车辆进入漂移状态,第一转向操作用于控制虚拟车辆向速度方向的第一侧进行转向,虚拟车辆的车 头朝向为第一方向,第一方向位于速度方向的第一侧;响应于方向控制部件上的第二转向操作,控制保持漂移状态的虚拟车辆的车头朝向转动至第二方向,第二转向操作用于控制虚拟车辆向速度方向的第二侧进行转向,第二方向位于速度方向的第一侧,且第二方向与速度方向形成的第二夹角小于第一方向与速度方向形成的第一夹角;
响应于手刹控制部件上的刹车操作,控制保持漂移状态的虚拟车辆的车头朝向转动至第三方向,第三方向位于速度方向的第二侧。以本申请提供的虚拟车辆的控制方法通过玩家在终端上的操作实现为例,参考图4,刹车控制部件、能量控制部件和油门控制部件可以以显示界面410中的控件的样式进行显示。其中,显示界面410中分别显示有刹车控件401、能量控件402、油门控件403和左转控件4041、右转控件4042和手刹控件405。
示例性的,响应于方向控制部件中的右转控件4042上的第一转向操作和手刹控件405上的刹车操作,控制虚拟车辆420进入漂移状态;示例性的,显示界面410中显示有车况展示区域02,该车况展示区域02用于展示虚拟车辆420的驾驶状态,至少包括虚拟车辆420的车速的数值信息和/或车速展示条。示例性的,响应于在手刹控件405上的刹车操作,车况展示区域02中虚拟车辆420的车速的数值信息和/或车速展示条指示的虚拟速度下降。
示例性的,处于漂移状态的虚拟车辆420在虚拟道路中显示有轮胎摩擦造成的虚拟痕迹;方向控制部件中的右转控件4042上的第一转向操作用于控制虚拟车辆420向速度方向的右侧进行转向。虚拟车辆420的车头朝向为第一方向431,虚拟车辆420的车头朝向第一方向431位于第一速度方向441的右侧。可以理解,虚拟车辆420的车头朝向,即第一方向431和第一速度方向441不在同一条直线上,虚拟车辆的漂移角为第一方向431和第一速度方向441形成的夹角。第一速度方向441是虚拟车辆420的车头朝向为第一方向431时虚拟车辆的速度方向。示例性的,第一速度方向441是虚拟车辆的行驶轨迹中,在车头朝向为第一方向431的位置上的切线方向。响应于方向控制部件中的左转控件4041上的第二转向操作,控制保持漂移状态的虚拟车辆420的车头朝向转动至第二方向432;
示例性的,方向控制部件中的左转控件4041上的第二转向操作用于控制虚拟车辆420向速度方向的左侧进行转向。由于虚拟车辆420保持漂移状态,在虚拟道路中显示有轮胎摩擦造成的虚拟痕迹。虚拟车辆420的车头朝向转动至第二方向432,虚拟车辆420的车头朝向第二方向432位于第二速度方向442的右侧。可以理解,虚拟车辆420的车头朝向,即第二方向432和第二速度方向442不在同一条直线上。第二方向432和第二速度方向442形成的第二夹角小于第一方向431和第一速度方向441形成的第一夹角。第二速度方向442是虚拟车辆420的车头朝向为第二方向432时虚拟车辆的速度方向。响应于手刹控件405上的刹车操作,控制保持漂移状态的虚拟车辆的420车头朝向转动至第三方向433;示例性的,由于虚拟车辆420保持漂移状态,在虚拟道路中显示有轮胎摩擦造成的虚拟痕迹。
示例性的,在虚拟车辆420向速度方向的左侧进行转向的过程中通过手刹控件405上的刹车操作,控制保持漂移状态的虚拟车辆的420车头朝向转动至第三方向433;比如在执行方向控制部件中的左转控件4041上的第二转向操作之后,执行手刹控件405上的刹车操作。
在一个可选方式中,响应于方向控制部件中的左转控件4041上的第二转向操作和手刹控件405上的刹车操作,控制保持漂移状态的虚拟车辆的420车头朝向转动至第三方向433,即同时执行在方向控制部件中的左转控件4041上的第二转向操作和手刹控件405上的刹车操作。虚拟车辆420的车头朝向转动至第三方向433,虚拟车辆420的车头朝向第三方向433位于第三速度方向443的左侧。可以理解,虚拟车辆420的车头朝向,即第三方向433和第三速度方向443不在同一条直线上。
第三速度方向443是虚拟车辆420的车头朝向为第三方向433时虚拟车辆的速度方向。
示例性的,对于上文中虚拟车辆的速度方向,可以通过如下公式进行迭代计算:
v(t+Δt)=抓地力×(d(t+Δt)-v(t))+v(t);
v(t+2×Δt)=抓地力×(d(t+2×Δt)-v(t+Δt))+v(t+Δt);
……
v(t+n×Δt)=抓地力×[d(t+n×Δt)-v(t+(n-1)×Δt)]+v(t+(n-1)×Δt)。
其中,虚拟车辆在初始时刻t的足度方向为v(t),车头朝向在初始时刻t为d(t),单位时间为Δt。则虚拟车辆420在初始时刻t的漂移角为d(t)-v(t);即漂移角为车头朝向和速度方向之间的夹角。虚拟车辆420在时刻t+Δt的速度方向为v(t+Δt),虚拟车辆420在时刻t+Δt的车头朝向为d(t+Δt);随后,可通过d(t+Δt)-v(t+Δt)计算得到虚拟车辆420在时刻t+Δt的漂移角度,剩余信息可以此类推。
可选的,虚拟车辆在第i时刻的漂移角度是虚拟车辆在第i时刻的车头朝向与虚拟车辆在第i时刻的速度方向的差值。比如,虚拟车辆420在初始时刻t的漂移角度为d(t)-v(t)。
示例性的,虚拟车辆在第二时刻的速度方向可根据抓地力、第二时刻的车头朝向和第一时刻的速度方向确定。其中,第二时刻是第一时刻经过单位时间的时刻,虚拟车辆在第二时刻的车头朝向是虚拟车辆在第一时刻的车头朝向与虚拟车辆在单位时间内的转动角度的和。
示例性的,虚拟车辆在第二时刻的速度方向是第二时刻的车头朝向和第一时刻的速度方向之差抓与地力相乘后,加上第一时刻的速度方向的和。比如,虚拟车辆420在时刻t+Δt的速度方向为v(t+Δt),可通过v(t+Δt)=抓地力×(d(t+Δt)-v(t))+v(t)计算得到。
可选的,单位时间Δt在计算中可以以1帧为单位,抓地力是一个固定函数。
示例性的,假设虚拟车辆420的抓地力恒定为0.5,虚拟车辆420的车头朝向的起始方向为朝向正前方,设d(t)=90°,虚拟车辆420的起始速度方向v(t)=15°,则虚拟车辆420在t时刻(该时刻为起始时刻)的漂移角度为90°–15°=75°。随后,虚拟车辆420在Δt时间内的车头朝向左转动了15°,即d(t+Δt)=105°。
基于上述公式,假设Δt=1,虚拟车辆420的速度方向可通过上述公式计算得到v(t+Δt)=0.5×(105°-15°)+15°=60°,则虚拟车辆420在t+Δt时刻的漂移角度为105°–60°=45°。
可选的,在虚拟车辆420的车头朝向和速度方向的夹角小于退漂角度的情况下,判定虚拟车辆420完成退漂,退出漂移状态,随后控制虚拟车辆420进入平跑状态。其中,退漂角度可根据实际需要设定,比如退漂角度是13度。
图5示出了本申请一个示例性实施例提供的虚拟车辆的控制方法的流程图,该方法可以应用于支持虚拟环境的终端中,该方法包括:
步骤510:显示位于虚拟环境中处于行驶状态的虚拟车辆;
示例性的,虚拟环境用于提供虚拟车辆进行行驶的场地;
示例性的,虚拟车辆的控制方法应用于支持竞速类游戏的应用程序中,玩家通过控制虚拟车辆在虚拟环境中进行虚拟竞速比赛;或,应用于支持角色扮演类游戏的应用程序中,玩家通过控制虚拟车辆在虚拟环境中移动以满足玩家漫游观光的需求。
步骤520:响应于方向控制部件上的第一转向操作和手刹控制部件上的刹车操作,控制虚拟车辆进入漂移状态;
示例性的,第一转向操作用于控制虚拟车辆向速度方向的第一侧进行转向;第一侧通常是左侧或右侧,相应的第二侧是与第一侧相反的侧向。虚拟车辆的车头朝向为第一方向,第一方向位于速度方向的第一侧。速度方向为车头朝向为第一方向时对应的速度方向。
示例性的,漂移状态又可称之为甩尾状态,虚拟车辆在漂移状态下,以过度转向的方式侧滑行驶,以便于虚拟车辆从弯道中驶出。在本实施例中,响应于方向控制部件上的第一转向操作和手刹控制部件上的刹车操作,控制虚拟车辆进入漂移状态;比如,同时单击方向控制部件中的左转控件和手刹控件,控制虚拟车辆向左侧漂移。在另一种实现方式中,逐次单击方向控制部件中的左转控件和手刹控件,控制虚拟车辆向左侧漂移。
其中,方向控制部件和手刹控制部件可实现为终端的显示界面中的控件,也可实现为与终端相连的手柄、操作台上的某一组成部分。比如,方向控制部件和手刹控制部件可分别实现为终端上的方向控件和手刹控件;又如,方向控制部件可实现为手柄上的移动按键或摇 杆,手刹控制部件可实现为手柄上的确认按键;又如,方向控制部件和手刹控制部件分别可实现为操作台上的方向盘和刹车手挡。
示例性的,手刹控制部件用于实现虚拟车辆的制动,控制虚拟车辆的车速降低。
步骤530:响应于方向控制部件上的第二转向操作,控制保持漂移状态的虚拟车辆的车头朝向转动至第二方向;
第二转向操作用于控制虚拟车辆向速度方向的第二侧进行转向;第二侧是与第一侧相反的侧向。比如:第一侧为左侧时,第二侧为右侧。
第二方向位于速度方向的第一侧,第二方向对应的速度方向为车头朝向为第二方向时对应的速度方向。示例性的,速度方向是虚拟车辆的行驶轨迹中,在车头朝向为第二方向的位置上的切线方向。第二方向与速度方向形成的第二夹角小于第一方向与速度方向形成的第一夹角;示例性的,虚拟车辆在转动至第二方向的过程中保持漂移状态。
步骤540:响应于手刹控制部件上的刹车操作,控制保持漂移状态的虚拟车辆的车头朝向转动至第三方向;
示例性的,手刹控制部件用于实现虚拟车辆的制动,控制虚拟车辆的车速降低。在一个实现方式中,手刹控制部件上的刹车操作为单击手刹控制部件,手部刹车部件用于在短时间内大幅降低虚拟车辆的虚拟速度。相较于脚刹控制部件,手刹控制部件在单位时间内降低的虚拟速度大于脚刹控制部件。
第三方向位于速度方向的第二侧;示例性的,虚拟车辆由向第一侧漂移调转至向第二侧漂移。示例性的,虚拟车辆在转动至第三方向的过程中保持漂移状态。
综上所述,本实施例提供的方法,通过在虚拟车辆处于漂移状态时执行第二转向操作,让虚拟车辆的车头朝向发生变化;通过刹车操作保持了虚拟车辆的漂移状态,在不中断漂移状态的情况下将虚拟车辆的车头朝向从速度方向的第一侧转向为速度方向的第二侧,实现了虚拟车辆进行反向漂移,减小了虚拟车辆通过连续弯道时的转向半径,提升了虚拟车辆通过连续弯道的能力。
图6示出了本申请一个示例性实施例提供的虚拟车辆的控制方法的流程图,该方法可以应用于支持虚拟环境的终端中。即在图5示出的实施例中,步骤540可以实现为步骤542:
步骤542:在虚拟车辆的车头朝向和虚拟车辆的速度方向之间的夹角超过漂移门限的情况下,响应于手刹控制部件上的刹车操作,控制保持漂移状态的虚拟车辆的车头朝向转动至第三方向;
示例性的,由虚拟车辆的速度方向和虚拟车辆的车头朝向作为两条边构建夹角,夹角角度小于180度。示例性的,漂移门限用于判断虚拟车辆是否处于漂移状态;在虚拟车辆的车头朝向和虚拟车辆的速度方向之间的夹角超过漂移门限的情况下,虚拟车辆保持漂移状态。示例性的,漂移门限为13度。在虚拟车辆保持漂移状态时,响应于手刹控制部件上的刹车操作,虚拟车辆的车头朝向转动至第三方向。
示例性的,虚拟车辆由向第一侧漂移调转至向第二侧漂移。
可选的,在一种实现方式中,实施例中步骤542可以实现为以下子步骤:
在虚拟车辆的车头朝向和虚拟车辆的速度方向之间的夹角超过漂移门限的情况下,响应于手刹控制部件上的刹车操作,控制保持漂移状态的虚拟车辆的车头朝向转动至第三方向,以及显示反向漂移技能的释放信息;
示例性的,反向漂移技能用于指示虚拟车辆由向第一侧漂移调转至向第二侧漂移。反向漂移技能的释放信息可以是文字信息、高亮特效、闪光特效、光圈特效和声音特效中的至少一种。图7示出了本申请一个示例性实施例提供的虚拟车辆的控制方法的界面示意图。在显示界面610中显示有虚拟车辆620,虚拟车辆620在显示界面610中显示的虚拟场景中行驶。在虚拟车辆620向第一侧漂移调转至向第二侧漂移,即虚拟车辆的从车头朝向为第三方向时,显示反向漂移技能的释放信息632,释放信息632用于指示触发反向漂移技能。示例性 的,触发反向漂移技能时增加虚拟经济值、虚拟经验值、虚拟任务进度中的至少之一。
综上所述,本实施例提供的方法,通过漂移门限确定虚拟车辆的行驶状态,在虚拟车辆处于漂移状态的情况下,通过刹车操作保持了虚拟车辆的漂移状态,在不中断漂移状态的情况下实现了虚拟车辆进行反向漂移,减小了虚拟车辆通过连续弯道时的转向半径,提升了虚拟车辆通过连续弯道的能力。
接下来,对第二转向操作之后的刹车操作进行进一步解释:
在虚拟车辆进入漂移状态之后,虚拟车辆以过度转向的方式侧滑行驶,也称为甩尾状态,进入漂移状态之后,虚拟车辆的车头朝向和虚拟车辆的速度方向之间的夹角需要超过漂移门限以保持漂移状态,第二转向操作和第一转向操作指示的转向方向是相反的,第二转向操作导致虚拟车辆的车头朝向和虚拟车辆的速度方向之间的夹角减小。通过再次进行刹车操作控制虚拟车辆和地面之间减小抓地力,使得车辆继续保持漂移状态。
需要说明的是,可以通过抓地力和漂移门限中的至少之一确定虚拟车辆是否处于偏移状态;如:①在虚拟车辆的车头朝向和虚拟车辆的速度方向之间的夹角超过漂移门限的情况下保持漂移状态。②在虚拟车辆和地面之间的抓地力小于力学特征门限的情况下保持漂移状态。可以理解的,力学特征门限可以是预先设置的或根据虚拟车辆的虚拟重量确定的。③漂移门限和虚拟车辆和地面之间的抓地力之间存在相关关系,漂移门限为角度门限,漂移门限随着抓地力的减小而减小,在一个示例中,随着抓地力的减小,即使虚拟车辆的车头朝向和虚拟车辆的速度方向相同,由于抓地力小,虚拟车辆仍然处于打滑状态,车辆保持漂移状态。通过抓地力和漂移门限中的至少之一确定虚拟车辆是否处于偏移状态;贴近真实世界的驾驶远离,实现了在虚拟环境中对虚拟车辆进行控制,进行模拟钟摆的车辆漂移。
图8示出了本申请一个示例性实施例提供的虚拟车辆的控制方法的流程图,该方法可以应用于支持虚拟环境的终端中。即在图6示出的实施例的基础上中,还包括步骤552:
步骤552:在虚拟车辆的车头朝向和虚拟车辆的速度方向之间的夹角未超过漂移门限的情况下,控制虚拟车辆退出漂移状态,进入平跑状态;
示例性的,由虚拟车辆的速度方向和虚拟车辆的车头朝向作为两条边构建夹角,夹角角度小于180度。示例性的,漂移门限用于判断虚拟车辆是否处于漂移状态;在虚拟车辆的车头朝向和虚拟车辆的速度方向之间的夹角未超过漂移门限的情况下,虚拟车辆退出漂移状态,进入平跑状态。示例性的,漂移门限为13度。示例性的,虚拟车辆在平跑状态下,不会发生侧滑行驶。需要说明的是,在一个示例性中,平跑状态用于指示虚拟车辆的车头朝向和虚拟车辆的速度方向在同一条直线上。为了避免进入平跑状态的拖沓,在虚拟车辆的车头朝向和虚拟车辆的速度方向之间的夹角小于漂移门限的情况下,虚拟车辆进入平跑状态。
需要说明的是,虚拟车辆退出漂移状态指示虚拟车辆的漂移状态结束,可选的,在虚拟车辆处于漂移状态时,在虚拟环境的虚拟道路上显示有轮胎摩擦造成的虚拟痕迹。
图9示出了本申请一个示例性实施例提供的虚拟车辆的控制方法的界面示意图。在显示界面640中显示有虚拟车辆642,虚拟车辆642在显示界面640中显示的虚拟场景中行驶。虚拟车辆642的位置在第四位置点646b。
虚拟道路上存在虚拟车辆642的两段虚拟痕迹,第一虚拟痕迹644是虚拟车辆642处于第一漂移状态时在虚拟道路上造成的痕迹。虚拟车辆642在第一位置点644a进入第一漂移状态,在第二位置点644b退出第一漂移状态;在第一漂移状态中虚拟车辆642向左漂移。
在第二位置点644b虚拟车辆642进入平跑状态,在第二位置点644b至第三位置点646a之间虚拟车辆642保持平跑状态。在虚拟车辆642处于平跑状态时在虚拟道路上不会造成的痕迹。第二虚拟痕迹646是虚拟车辆642处于第二漂移状态时在虚拟道路上造成的痕迹。虚拟车辆642在第三位置点646a进入第二漂移状态,在第二漂移状态中虚拟车辆642向右漂移。在第三位置点646a至第四位置点646b虚拟车辆642保持第二漂移状态。
图10示出了本申请一个示例性实施例提供的虚拟车辆的控制方法的界面示意图。在显 示界面650中显示有虚拟车辆652,虚拟车辆652在显示界面650中显示的虚拟场景中行驶。虚拟车辆652的位置在第三位置点654c。
虚拟道路上存在虚拟车辆652的一段虚拟痕迹,连续虚拟痕迹654是虚拟车辆652处于连续漂移状态时在虚拟道路上造成的痕迹。虚拟车辆642在第一位置点654a进入连续漂移状态,在第一位置点654a至第三位置点654c虚拟车辆642保持连续漂移状态。在连续漂移状态中虚拟车辆642先向左漂移,再向右漂移。具体的,虚拟车辆642在第一位置点654a至第二位置点654b保持向左漂移;虚拟车辆642在第二位置点654b至第三位置点654c保持向右漂移,即,虚拟车辆642在第二位置点654b由向左漂移调转至向右漂移。
综上所述,本实施例提供的方法,通过漂移门限确定虚拟车辆的行驶状态,在虚拟车辆的车头朝向和虚拟车辆的速度方向之间的夹角未超过漂移门限的情况下,控制虚拟车辆退出漂移状态,进入平跑状态可以更加灵活的控制虚拟车辆的行驶状态,提升了对虚拟车辆的操控性;在夹角未超过漂移门限的情况下进入平跑状态,贴近真实世界的驾驶原理。
图11示出了本申请一个示例性实施例提供的虚拟车辆的控制方法的流程图,该方法可以应用于支持虚拟环境的终端中。即在图6示出的实施例的基础上中,还包括步骤535:
步骤535:根据虚拟车辆的抓地力、虚拟车辆的车头朝向和虚拟车辆的历史速度方向,确定虚拟车辆的速度方向;
示例性的,虚拟车辆的车头朝向和虚拟车辆的速度方向之间的夹角为漂移角。其中,漂移角度越大,虚拟车辆的车身偏移程度越高,将导致虚拟车辆退出漂移状态所需的时长也越长。另外,漂移角度受虚拟车辆的抓地力的影响,抓地力的改变通过刹车控制部件上的触发操作来实现。应当理解的是,在虚拟车辆处于平跑状态的情况下,虚拟车辆的速度方向与车头方向基本保持一致,此时可将虚拟车辆的漂移角度确定为0度。在虚拟车辆处于倒车状态下,虚拟车辆的速度方向与车头方向相反,此时可将虚拟车辆的漂移角度确定为180度。
在虚拟车辆处于漂移状态下,虚拟车辆的速度方向与车头方向不一致。也即,虚拟车辆的速度方向为第一方向,车头方向为第二方向,第一方向和第二方向是不同的方向,第一方向和第二方向之间存在一定偏差角度,该偏差角度即为漂移角度。同样,正是由于漂移角度的存在,使得虚拟车辆呈现漂移的车身姿态。
示意性的,可通过虚拟车辆的速度方向逐步旋转向车头方向靠近,以实现虚拟车辆的抓地效果,最终使得虚拟车辆退漂以恢复到平跑状态中。
以虚拟车辆在初始时刻t的速度方向为v(t),车头方向在初始时刻t为d(t),单位时间为Δt为例,图12示出了本申请一个示例性实施例提供的计算漂移角的示意图。
示例性的,可通过如下公式进行虚拟车辆的速度方向的迭代运算:
v(t+Δt)=抓地力×(d(t+Δt)-v(t))+v(t);
v(t+2×Δt)=抓地力×(d(t+2×Δt)-v(t+Δt))+v(t+Δt);
……
v(t+n×Δt)=抓地力×[d(t+n×Δt)-v(t+(n-1)×Δt)]+v(t+(n-1)×Δt)。
其中,虚拟车辆420在初始时刻t的速度方向为v(t),车头方向在初始时刻t为d(t),单位时间为Δt。则虚拟车辆420在初始时刻t的漂移角度为d(t)-v(t),虚拟车辆420在时刻t+Δt的速度方向为v(t+Δt),虚拟车辆420在时刻t+Δt的车头方向为d(t+Δt);随后,可通过d(t+Δt)-v(t+Δt)计算得到虚拟车辆420在时刻t+Δt的漂移角度,剩余信息可以此类推。
可选的,虚拟车辆在第i时刻的漂移角度是虚拟车辆在第i时刻的车头方向与虚拟车辆在第i时刻的速度方向的差值。比如,虚拟车辆420在初始时刻t的漂移角度为d(t)-v(t)。
另外,虚拟车辆在第二时刻的速度方向可根据抓地力、第二时刻的车头方向和第一时刻的速度方向确定。其中,第二时刻是第一时刻经过单位时间的时刻,虚拟车辆在第二时刻的车头方向是虚拟车辆在第一时刻的车头方向与虚拟车辆在单位时间内的转动角度的和。
示例性的,虚拟车辆在第二时刻的速度方向是第二时刻的车头方向和第一时刻的速度方 向之差抓与地力相乘后,加上第一时刻的速度方向的和。比如,虚拟车辆420在时刻t+Δt的速度方向为v(t+Δt),可通过v(t+Δt)=抓地力×(d(t+Δt)-v(t))+v(t)计算得到。
可选的,单位时间Δt在计算中可以以1帧为单位,抓地力是一个固定函数。
根据上述公式,虚拟车辆在初始时刻t的漂移角度为d(t)-v(t),虚拟车辆在时刻t+Δt的速度方向为v(t+Δt),虚拟车辆420在时刻t+Δt的车头方向为d(t+Δt),剩余信息可以此类推。以虚拟车辆420在初始时刻t的漂移角度为d(t)-v(t),虚拟车辆420在时刻t+Δt的速度方向为v(t+Δt)为例,可通过d(t+Δt)-v(t+Δt)计算得到虚拟车辆420在时刻t+Δt的漂移角度。
参考图12,假设虚拟车辆的抓地力恒定为0.5,虚拟车辆的车头方向的起始方向为朝向正前方,设d(t)=90°,虚拟车辆的起始速度方向v(t)=15°,则虚拟车辆在t时刻(该时刻为起始时刻)的漂移角度为90°–15°=75°。随后,虚拟车辆在Δt时间内的车头方向左转动了15°,即d(t+Δt)=105°。基于上述公式,假设Δt=1,虚拟车辆的速度方向可通过上述公式计算得到v(t+Δt)=0.5×(105°-15°)+15°=60°,则虚拟车辆在t+Δt时刻的漂移角度为105°–60°=45°。类似的,可根据上述公式继续迭代计算虚拟车辆在下一时刻的漂移角度。
根据前述内容,通过刹车控制部件上的第一触发操作,能够提高虚拟车辆的抓地力,从而影响虚拟车辆的漂移角度的变化。其中,抓地力的提高,能够加快漂移角度减小的速度,从而加快虚拟车辆从漂移状态中退漂,以进入平跑状态。
综上所述,本实施例提供的方法,通过引入抓地力确定虚拟车辆的速度方向,在速度方向与车头朝向和抓地力之间建立了联系,通过迭代运算保证了确定虚拟车辆的行驶状态的依据准确,贴近真实世界的驾驶原理。
图13示出了本申请一个示例性实施例提供的虚拟车辆的控制方法的流程图,该方法可以应用于支持虚拟环境的终端中。即在图5示出的实施例中,步骤540可以实现为步骤544:
步骤544:响应于方向控制部件上的持续按压操作和手刹控制部件上的刹车操作,控制保持漂移状态的虚拟车辆的车头朝向转动至第三方向;
示例性的,第二转向操作是在方向控制部件上的持续按压操作,在本实施例中,响应于同时在方向控制部件上的持续按压操作和刹车操作,控制保持漂移状态的虚拟车辆的车头朝向转动至第三方向。示例性的,手刹控制部件上的刹车操作可以是如下操作中的至少一种:单击操作、双击操作、触摸操作、单次按压操作、持续按压操作。比如,玩家单击手刹控制部件,控制虚拟车辆的车速下降。示例性的,通过方向控制部件上的持续按压操作,控制虚拟车辆持续转向,至转向到第三方向。通过手刹控制部件上的刹车操作,控制虚拟车辆保持漂移状态,避免虚拟车辆退出漂移状态,进入平跑状态。
综上所述,本实施例提供的方法,通过将第一转向操作确定为持续按压操作,在同时执行方向控制部件上的持续按压操作和刹车操作的情况下,控制虚拟车辆保持漂移状态,且从向第一侧漂移调转至向第二侧漂移,贴近真实世界的驾驶原理。
在一种可选实现方式中,在车辆进入漂移状态并响应于结束第一转向操作,触发第一状态定时器,第一转向操作对虚拟车辆造成朝向第一侧的加速度,结束第一转向操作之后该加速度随着时间推移而减小。在第一状态定时器到期之前,虚拟车辆处于漂移状态,在第一状态计时器到期之后,虚拟车辆退出漂移状态。第一状态定时器的定时长度可以是预设的,也可以是根据虚拟车辆的虚拟重量确定的,比如上述二者呈正相关关系。可选的,对于第一状态定时器,在保持漂移状态的情况下再次触发第一转向操作,在结束第一转向操作时,第一状态定时器重新计时。
在第一状态定时器到期之前,响应于第二转向操作控制保持漂移状态的虚拟车辆的车头朝向转动至第二方向;响应于刹车操作控制保持漂移状态的虚拟车辆的车头朝向转动至第三方向;在转动至第三方向的过程中,刹车操作用于控制虚拟车辆保持漂移状态,保持漂移状态的详细介绍参见上文中关于抓地力和漂移门限的介绍。虚拟车辆转动至第三方向是由于第二转动操作造成的虚拟惯性导致的。
可选的,在车辆保持漂移状态并响应于结束第二转向操作,触发第二状态定时器,第二转向操作对虚拟车辆造成朝向第二侧的加速度,结束第二转向操作之后该加速度随着时间推移而减小。在第二状态定时器到期之前,响应于刹车操作,虚拟车辆转动至第三方向,在第二状态定时器到期之后,响应于刹车操作,虚拟车辆不再发生转向。相似的,第二状态定时器的定时长度可以是预设的,也可以是根据虚拟车辆的虚拟重量确定的。相似的,第二状态计时器重新计时的情况和第一状态定时器是相似的。
可以理解的,上文中示出的第一状态定时器、第二状态定时器可以分别构成两个实施例,也可以在一个实施例中组合使用,构成第三个实施例。本申请对此不进行限制。进一步的,上述示出的实施例可以和图6、图8对应的实施例进行结合,通过第一状态定时器、第二状态定时器中的至少之一与漂移门限进行组合,共同控制虚拟车辆运动,本申请对此也不进行限制。
在一个实施例中,比如:包括但不限于第二状态定时器对应的实施例中,可以不存在同时进行第二转向操作和刹车操作的时间戳;但不排除在另一个实施例中,至少存在一个同时进行第二转向操作和刹车操作的时间戳。
图14示出了本申请一个示例性实施例提供的虚拟车辆的控制方法的流程图,该方法可以应用于支持虚拟环境的终端中。即在图5示出的实施例的基础上中,还包括步骤554:
步骤554:响应于手刹控制部件上的刹车操作,控制虚拟车辆的虚拟速度下降;
示例性的,在控制虚拟车辆进入漂移状态时,通过手刹控制部件上的刹车操作,控制虚拟车辆在短时间内大幅降低虚拟车辆的虚拟速度。示例性的,通过手刹控制部件上的刹车操作不会对虚拟车辆是否处于漂移状态直接造成影响。虚拟车辆是否处于漂移状态与是否执行步骤554无关。可选的,虚拟车辆是否处于漂移状态是由虚拟车辆的车头朝向和虚拟车辆的速度方向之间的夹角确定的。
可选的,在一种可选的实现方式中,步骤554之后还包括一下两个子步骤中的至少之一:
子步骤1:在虚拟车辆的车头朝向和虚拟车辆的速度方向之间的夹角超过漂移门限的情况下,控制虚拟车辆保持漂移状态;
示例性的,由虚拟车辆的速度方向和虚拟车辆的车头朝向作为两条边构建夹角,夹角角度小于180度。示例性的,漂移门限用于判断虚拟车辆是否处于漂移状态;在虚拟车辆的车头朝向和虚拟车辆的速度方向之间的夹角超过漂移门限的情况下,虚拟车辆保持漂移状态。示例性的,漂移门限为13度。
子步骤2:在虚拟车辆的车头朝向和虚拟车辆的速度方向之间的夹角未超过漂移门限的情况下,控制虚拟车辆退出漂移状态,进入平跑状态;
示例性的,漂移门限用于判断虚拟车辆是否处于漂移状态;在虚拟车辆的车头朝向和虚拟车辆的速度方向之间的夹角未超过漂移门限的情况下,虚拟车辆退出漂移状态,进入平跑状态。示例性的,漂移门限为13度。
综上所述,本实施例提供的方法,通过在虚拟车辆处于漂移状态的情况下执行刹车操作,控制虚拟车辆的虚拟速度下降,提供了漂移状态下的虚拟车辆的速度控制方式,通过刹车操作控制虚拟车辆保证了对处于漂移状态的虚拟车辆的控制灵活程度。
图15示出了本申请一个示例性实施例提供的虚拟车辆的控制方法的流程图,该方法可以应用于支持虚拟环境的终端中。即在图5示出的实施例中,步骤520可以实现为步骤522和步骤524:
步骤522:响应于方向控制部件上的第一转向操作,控制虚拟车辆的车头朝向转动至第一方向,第一方向位于速度方向的第一侧;
第一转向操作用于控制虚拟车辆向速度方向的第一侧进行转向;通过方向控制部件上的第一转向操作,控制虚拟车辆持续转向,至转向到第一方向。
步骤524:响应于手刹控制部件上的刹车操作,控制虚拟车辆进入漂移状态。
示例性的,漂移状态又可称之为甩尾状态,虚拟车辆在漂移状态下,以过度转向的方式侧滑行驶,以便于虚拟车辆从弯道中驶出。通过手刹控制部件上的刹车操作,控制虚拟车辆退出平跑状态,进入漂移状态,控制虚拟车辆向第一侧漂移。综上所述,本实施例提供的方法,通过逐次执行第一转向操作和刹车操作,控制虚拟车辆执行转向和进入漂移状态,保证了对虚拟车辆的控制灵活程度,提升了虚拟车辆在虚拟环境中的行驶能力。
图16示出了本申请一个示例性实施例提供的虚拟车辆的控制方法的流程图,该方法可以应用于支持虚拟环境的终端中。即在图5示出的实施例中,步骤540可以实现为步骤546,还包括步骤556:
步骤546:在虚拟车辆和虚拟边缘之间的距离超过漂移门限的情况下,响应于手刹控制部件上的刹车操作,控制保持漂移状态的虚拟车辆的车头朝向转动至第三方向;
虚拟边缘是虚拟环境中虚拟路面的边缘;示例性的,虚拟路面的边缘可以是虚拟路面上的边缘车道线,也可以是虚拟路面上位于虚拟道路外侧的路肩的边缘,也可以是一个开放性路面中虚拟车辆无法继续行驶的至少一条边线;本实施例对此不作出任何限制。
可选的,在虚拟车辆越过虚拟边缘或接触虚拟边缘的情况下,虚拟车辆处于不利于行驶的状态;比如:虚拟车辆遭到破坏、虚拟车辆的加速、转向、刹车中的至少一种行驶能力下降、损失虚拟经济值、虚拟经验值、虚拟任务进度中的至少一种。
在虚拟车辆和虚拟道路的虚拟边缘之间的距离超过漂移门限的情况下,响应于手刹控制部件的上的刹车操作,虚拟车辆由向第一侧漂移调转至向第二侧漂移。由于虚拟车辆和虚拟道路的虚拟边缘之间的距离超过漂移门限,虚拟车辆不存在与虚拟边缘发生碰撞或越过虚拟边缘的风险。需要说明的是,在本实施例的步骤546中,响应于手刹控制部件上的刹车操作,通常控制虚拟车辆的虚拟速度下降;但也不排除存在响应于手刹控制部件上的刹车操作,控制虚拟车辆的虚拟速度不变的情况。
步骤556:在虚拟车辆和虚拟边缘之间的距离未超过漂移门限的情况下,响应于手刹控制部件上的刹车操作,控制保持漂移状态的虚拟车辆的虚拟速度下降;
在虚拟车辆和虚拟道路的虚拟边缘之间的距离未超过漂移门限的情况下,响应于手刹控制部件的上的刹车操作,虚拟车辆的虚拟速度下降。由于虚拟车辆和虚拟道路的虚拟边缘之间的距离未超过漂移门限,虚拟车辆存在与虚拟边缘发生碰撞或越过虚拟边缘的风险。通过刹车操作降低虚拟车辆的虚拟速度,延迟虚拟车辆与虚拟边缘发生碰撞或越过虚拟边缘的时间;保留更长的操作时间便于控制虚拟车辆的行驶状态,有利于避免影响虚拟车辆的行驶状态。需要说明的是,在本实施例的步骤546中,在响应于手刹控制部件上的刹车操作,控制虚拟车辆的虚拟速度下降的情况下,虚拟车辆的虚拟速度的第一减速速率小于第二减速速率。在虚拟车辆的虚拟速度下降时,第一减速速率和第二减速速率均大于0。
其中,第一减速速率是在虚拟车辆和虚拟边缘之间的距离超过漂移门限的情况下,响应于手刹控制部件上的刹车操作,虚拟车辆的虚拟速度下降的速率。第二减速速率是在虚拟车辆和虚拟边缘之间的距离未超过漂移门限的情况下,响应于手刹控制部件上的刹车操作,虚拟车辆的虚拟速度下降的速率。比如:第一减速速率为虚拟车辆的虚拟速度每秒下降2m/s;第二减速速率为虚拟车辆的虚拟速度每秒下降5m/s。可以理解,在单位时间内,在虚拟车辆和虚拟边缘之间的距离超过漂移门限的情况下,虚拟车辆的减速效果劣于在虚拟车辆和虚拟边缘之间的距离未超过漂移门限的情况下虚拟车辆的减速效果。
综上所述,本实施例提供的方法,通过虚拟车辆和虚拟边缘之间的距离判断是否存在行驶风险;在不存在行驶风险的情况下,控制虚拟车辆从向第一侧漂移调转至向第二侧漂移,减小了虚拟车辆通过连续弯道时的转向半径,提升了虚拟车辆通过连续弯道的能力;在存在行驶风险的情况下,控制虚拟车辆的虚拟速度下降,延长了虚拟车辆发生行驶风险的时间,保证了虚拟车辆的行驶安全,避免了行驶风险对虚拟车辆造成损坏。
图17示出了本申请一个示例性实施例提供的虚拟车辆的控制方法的流程图,该方法可以应用于支持虚拟环境的终端中。即在图6示出的实施例的基础上中,还包括步骤558:
步骤558:根据在连续转向虚拟路段中触发反向漂移技能的次数,更新漂移门限;
示例性的,连续转向虚拟路段是虚拟环境中的虚拟道路上存在至少两个方向变化点的路段。在一个例子中,驾驶虚拟车辆通过连续转向虚拟路段时,需要控制虚拟车辆先向虚拟车辆的速度方向的第一侧转向,再向速度方向的第二侧转向;避免虚拟车辆与虚拟路面的边缘发生碰撞。进一步的,在连续转向虚拟路段中触发反向漂移技能的次数指示了玩家正在通过连续转向虚拟路段时,对反向漂移技能的偏好。在触发反向漂移技能的次数高的情况下,指示玩家偏好触发反向漂移技能通过连续转向虚拟路段。在触发反向漂移技能的次数低的情况下,指示玩家偏好通过转向或多次进入漂移状态通过连续转向虚拟路段。示例性的,反向漂移技能指示保持漂移状态的虚拟车辆由向第一侧漂移调转至向第二侧漂移。
可选的,在一个实现方式中,步骤558可以实现为以下两个子步骤:
子步骤3:在连续转向虚拟路段中触发反向漂移技能的次数超过次数门限的情况下,将漂移门限更新为第一角度门限,第一角度门限小于漂移门限;
示例性的,触发反向漂移技能的次数超过次数门限指示虚拟车辆通过连续转向虚拟路段时,偏好触发反向漂移技能。通过将漂移门限更新为第一角度门限,增加虚拟车辆保持漂移状态的时间,便于玩家在虚拟车辆处于漂移状态的情况下执行刹车操作,控制虚拟车辆的车头朝向转动至第三方向,以触发反向漂移技能。
子步骤4:在连续转向虚拟路段中触发反向漂移技能的次数未超过次数门限的情况下,将漂移门限更新为第二角度门限,第二角度门限大于漂移门限;
示例性的,触发反向漂移技能的次数未超过次数门限指示虚拟车辆通过连续转向虚拟路段时,偏好转向或多次进入漂移状态。通过将漂移门限更新为第二角度门限,减短虚拟车辆保持漂移状态的时间,便于虚拟车辆尽快退出漂移状态,以通过转向或再次进入漂移状态通过连续转向虚拟路段。综上所述,本实施例提供的方法,通过次数门限判断虚拟车辆在连续转向虚拟路段中的通过偏好,在偏好于触发反向漂移技能通过连续转向虚拟路段的情况下,设置严苛的退出漂移状态条件,延长虚拟车辆处于漂移状态的时间,为触发反向漂移技能提供延长时间的有利条件;在偏好于转向或多次进入漂移状态通过连续转向虚拟路段的情况下,设置宽松的退出漂移状态条件,缩短虚拟车辆处于漂移状态的时间,有利于快速退出漂移状态以执行转向或多次进入漂移状态。
图18示出了本申请的一个实施例提供的虚拟车辆的控制方法的流程图。该虚拟车辆的控制方法包括以下步骤:
步骤702:响应于点击向右转向控件,虚拟车辆向右转向;
示例性的,响应于点击向右转向控件,虚拟车辆的车头朝向向右转向。
步骤704:响应于点击手刹控件,触发虚拟车辆进入漂移状态,向右漂移;
响应于点击手刹控件,虚拟车辆的行驶速度快速减小。示例性的,由于虚拟车辆的车头朝向和虚拟车辆的速度方向之间的夹角超过漂移门限,虚拟车辆进入漂移状态;由于虚拟车辆的车头朝向向右,虚拟车辆向右漂移。
步骤706:是否松开手刹控件;示例性的,松开手刹控件即不再持续按压手刹控件。
步骤708:虚拟车辆保持漂移状态,向右漂移;在松开手刹控件的情况下,虚拟车辆保持漂移状态,向右漂移;虚拟车辆不受到手刹控件影响,不再快速减小行驶速度。
步骤710:虚拟车辆减速至刹车停止;在未松开手刹控件的情况下,虚拟车辆减速至刹车停止;虚拟车辆持续受到手刹控件影响,快速减小行驶速度至虚拟车辆刹车停止。
步骤712:是否再次点击手刹控件;
步骤714:虚拟车辆保持漂移状态,向右漂移;
在未再次点击手刹控件的情况下,虚拟车辆保持漂移状态,向右漂移;虚拟车辆不受到 手刹控件影响,不再快速减小行驶速度。在再次点击手刹控件的情况下,执行步骤710,虚拟车辆减速至刹车停止。
步骤716:是否点击向左转向控件;
示例性的,响应于点击向左转向控件,虚拟车辆的车头朝向向左转向;
步骤718:虚拟车辆向左转向;在点击向左转向控件的情况下,虚拟车辆的车头朝向向左转向;示例性的,虚拟车辆保持漂移状态。
步骤720:虚拟车辆保持漂移状态,向右漂移;
在未点击向左转向控件的情况下,虚拟车辆保持漂移状态,向右漂移;虚拟车辆不受到向左转向控件的影响,虚拟车辆的车头朝向不受到向左转向控件的影响向左转向。
步骤722:是否点击手刹控件;
响应于点击手刹控件,虚拟车辆的行驶速度快速减小。
步骤724:虚拟车辆保持漂移状态,向左漂移;在点击手刹控件的情况下,虚拟车辆保持漂移状态,向左漂移;虚拟车辆的车头朝向由指向右侧变化为指向左侧,向左漂移。
步骤726:漂移角是否超过漂移门限;在未点击手刹控件的情况下,判断漂移角是否超过漂移门限,漂移角是虚拟车辆的车头朝向和虚拟车辆的速度方向之间的夹角。
步骤728:虚拟车辆保持漂移状态,向右漂移;
在漂移角超过漂移门限的情况下,虚拟车辆保持漂移状态,向右漂移。
步骤730:虚拟车辆退出漂移状态,进入平跑状态;
在漂移角未超过漂移门限的情况下,虚拟车辆退出漂移状态,进入平跑状态。
示例性的,本申请中的虚拟车辆可以是模拟现实世界中汽车的驾驶特征实现的虚拟车辆,虚拟车辆不受到外形的限制,比如在虚拟环境中,一个虚拟驾驶器在虚拟云彩上行驶,即使该行驶器的外观具有虚拟翅膀的外观特征,但但行驶器符合汽车的驾驶特征,是在虚拟云彩上进行行驶,而不会依靠升力或模拟升力进行俯仰角变化,也应属于本申请示出的虚拟车辆的范畴。进一步的,本申请对虚拟车辆的控制方式不进行限制,可以通过键盘、鼠标、手柄或模拟车辆驾驶的方向盘、踏板对虚拟车辆进行控制,本申请不进行限制。虚拟车辆的控制方法可以应用于虚拟车辆竞速应用程序中,也可以应用于虚拟车辆模拟驾驶应用程序程序中,还可以应用于具有车辆竞速、车辆模拟驾驶功能的其他应用程序。
图19示出的本申请一个示例性实施例提供的虚拟车辆的控制方法的界面示意图,刹车控制部件、能量控制部件和油门控制部件可以以显示界面810中的控件的样式进行显示。其中,显示界面810中显示有刹车控件801、能量控件802、油门控件803、左转控件8041、右转控件8042和手刹控件805。
显示位于虚拟环境中处于行驶状态的虚拟车辆820;虚拟车辆820向前行驶,虚拟车辆的速度方向与虚拟车辆的车头朝向相同;
响应于右转控件8042上的点击操作,控制虚拟车辆820的车头朝向向右侧转动;响应于右转控件8042上的点击操作,车头朝向位于速度方向的右侧;右转控件8042上的点击操作用于控制虚拟车辆820向速度方向的右侧进行转向。示例性的,由于虚拟车辆820处于平跑状态,虚拟道路中未显示有轮胎摩擦造成的虚拟痕迹。
响应于手刹控件805上的刹车操作,控制虚拟车辆进入漂移状态,虚拟车辆的车头朝向为第一方向。示例性的,漂移状态又可称之为甩尾状态,虚拟车辆在漂移状态下,以过度转向的方式侧滑行驶,以便于虚拟车辆从弯道中驶出。通过手刹控件805上的刹车操作,控制虚拟车辆退出平跑状态,进入漂移状态,控制虚拟车辆向右侧漂移。
响应于左转控件8041上的点击操作,控制保持漂移状态的虚拟车辆的车头朝向转动至第二方向;第二方向与速度方向形成的第二夹角小于第一方向与速度方向形成的第一夹角;虚拟车辆保持漂移状态向右侧漂移。
响应于手刹控件805上的刹车操作,控制保持漂移状态的虚拟车辆的车头朝向转动至第 三方向;第三方向位于速度方向的左侧;示例性的,虚拟车辆由向右侧漂移调转至向左侧漂移。可选的,显示反向漂移技能的释放信息;反向漂移技能用于指示虚拟车辆由向右侧漂移调转至向左侧漂移,或虚拟车辆由向左侧漂移调转至向右侧漂移。反向漂移技能的释放信息可以是文字信息、高亮特效、闪光特效、光圈特效和声音特效中的至少一种。
进一步的,在显示反向漂移技能的释放信息,即虚拟车辆由向右侧漂移调转至向左侧漂移之后,通过对虚拟车辆的控制操作,衔接驾驶技能;比如:通过响应于能量控件802上的触发操作,触发弹射出弯技能,虚拟车辆的行驶速度增加。
通过响应于刹车控件801上的点击操作,虚拟车辆的抓地力增加;响应于能量控件802上的触发操作,消耗一瓶氮气为虚拟车辆820提供加速服务,在显示界面810中可显示消耗一瓶氮气的提示信息;触发增压氮气出弯技能。
示例性的,刹车控件801还用于实现虚拟车辆的停止加速、减速和倒车功能中的至少一种。比如,在虚拟车辆进入持续加速状态后,响应于刹车控件801上的单击操作,控制虚拟车辆停止加速并进入自然减速状态,自然减速状态是指虚拟车辆受阻力因素而进入的持续减速状态,阻力因素包括路面阻力、空气阻力和机械损耗中的至少一种;又如,响应于刹车控件801上的持续按压操作,控制虚拟车辆停止加速并进入持续降速状态,持续降速状态是指虚拟车辆受阻力因素和刹车制动阻力而进入的储蓄减速状态,阻力因素包括路面阻力、空气阻力和机械损耗中的至少一种,刹车制动阻力根据刹车控件801上的持续按压操作生成。
其中,路面阻力是指虚拟车辆的轮胎与地面的摩擦力,空气阻力是指虚拟车辆在行驶过程中受到的空气阻力,机械损耗是指虚拟车辆的传动装置内的动能损耗,刹车制动阻力的大小可根据实际需要设定。可选的,在虚拟车辆处于持续降速状态的情况下,若虚拟车辆的车速降为0,且刹车控件801上的持续按压仍然存在,则控制虚拟车辆进入倒车状态。示例性的,手刹控件805和刹车控件801相似的,还用于实现虚拟车辆的停止加速、减速和倒车功能中的至少一种。通过手刹控件805和刹车控件801实现虚拟车辆的速度控制,尤其是减速控制,贴近真实世界的驾驶原理。
本领域普通技术人员可以理解,上述实施例可以独立实施,也可以将上述实施例进行自由组合,组合出新的实施例实现本申请的虚拟车辆的控制方法。
图20示出了本申请一个示例性实施例提供的虚拟车辆的控制装置的框图。该装置包括:
显示模块910,用于执行图5实施例中的步骤510;
控制模块920,用于执行图5实施例中的步骤520;
所述控制模块920,还用于执行图5实施例中的步骤530;
所述控制模块920,还用于执行图5实施例中的步骤540。
在本申请的一个可选设计中,所述控制模块920还用于执行图6实施例中的步骤542。
在本申请的一个可选设计中,所述控制模块920还用于:在所述虚拟车辆的车头朝向和所述虚拟车辆的速度方向之间的夹角超过漂移门限的情况下,响应于所述手刹控制部件上的所述刹车操作,控制保持所述漂移状态的所述虚拟车辆的车头朝向转动至所述第三方向,以及显示反向漂移技能的释放信息。
在本申请的一个可选设计中,所述控制模块920还用于执行图8实施例中的步骤552。
在本申请的一个可选设计中,所述装置还包括:
确定模块930,用于执行图11实施例中的步骤535。
在本申请的一个可选设计中,所述第二转向操作是在所述方向控制部件上的持续按压操作;所述控制模块920还用于执行图13实施例中的步骤544。
在本申请的一个可选设计中,所述控制模块920还用于执行图15实施例中的步骤522、步骤524。
在本申请的一个可选设计中,所述控制模块920还用于执行图14实施例中的步骤554。
在本申请的一个可选设计中,所述控制模块920还用于:在所述虚拟车辆的车头朝向和所述虚拟车辆的速度方向之间的夹角超过漂移门限的情况下,控制所述虚拟车辆保持所述漂移状态;在所述虚拟车辆的车头朝向和所述虚拟车辆的速度方向之间的夹角未超过所述漂移门限的情况下,控制所述虚拟车辆退出所述漂移状态,进入平跑状态。
在本申请的一个可选设计中,所述控制模块920还用于执行图16实施例中的步骤546、步骤556。
在本申请的一个可选设计中,所述装置还包括:更新模块940,用于根据在连续转向虚拟路段中触发反向漂移技能的次数,更新所述漂移门限。
在本申请的一个可选设计中,所述更新模块940还用于:
在所述连续转向虚拟路段中触发所述反向漂移技能的次数超过次数门限的情况下,将所述漂移门限更新为第一角度门限,所述第一角度门限小于所述漂移门限;
在所述连续转向虚拟路段中触发所述反向漂移技能的次数未超过次数门限的情况下,将所述漂移门限更新为第二角度门限,所述第二角度门限大于所述漂移门限。
需要说明的一点是,上述实施例提供的装置在实现其功能时,仅以上述各个功能模块的划分进行举例说明,实际应用中,可以根据实际需要而将上述功能分配由不同的功能模块完成,即将设备的内容结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述;各个模块执行操作取得的技术效果与有关该方法的实施例中的技术效果相同,此处将不做详细阐述说明。
本申请实施例还提供了一种计算机设备,该计算机设备包括:处理器和存储器,存储器中存储有计算机程序;所述处理器,用于执行所述存储器中的所述计算机程序以实现上述各方法实施例提供的虚拟车辆的控制方法。
图21示出了本申请一个示例性实施例提供的终端1900的结构框图。该终端1900可以是:智能手机、平板电脑、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端1900还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其它名称。
通常,终端1900包括有:处理器1901和存储器1902。处理器1901可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1901可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1901也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central Processing Unit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1901可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1901还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1902可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1902还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1902中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1901所执行以实现本申请中方法实施例提供的虚拟车辆的控制方法。
在一些实施例中,终端1900还可选包括有:外围设备接口1903和至少一个外围设备。处理器1901、存储器1902和外围设备接口1903之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1903相连。具体地,外围设备包括: 射频电路1904、触摸显示屏1905、摄像头组件1906、音频电路1907和电源1908中的至少一种。外围设备接口1903可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器1901和存储器1902。在一些实施例中,处理器1901、存储器1902和外围设备接口1903被集成在同一芯片或电路板上;在一些其它实施例中,处理器1901、存储器1902和外围设备接口1903中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。射频电路1904用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1904通过电磁信号与通信网络以及其它通信设备进行通信。射频电路1904还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路。触摸显示屏1905用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。摄像头组件1906用于采集图像或视频。可选地,摄像头组件1906包括前置摄像头和后置摄像头。音频电路1907可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1901进行处理,或者输入至射频电路1904以实现语音通信。电源1908用于为终端1900中的各个组件进行供电。电源1908可以是交流电、直流电、一次性电池或可充电电池。在一些实施例中,终端1900还包括有一个或多个传感器1909。该一个或多个传感器1909包括但不限于:加速度传感器1910、陀螺仪传感器1911、压力传感器1912、光学传感器1913以及接近传感器1914。
加速度传感器1910可以检测以终端1900建立的坐标系的三个坐标轴上的加速度大小。压力传感器1912可以设置在终端1900的侧边框和/或触摸显示屏1905的下层。检测用户对终端1900的握持信号,和/或,根据用户对触摸显示屏1905的压力操作,实现对UI界面上的可操作性控件进行控制。光学传感器1913用于采集环境光强度。接近传感器1914,也称距离传感器,通常设置在终端1900的前面板。接近传感器1914用于采集用户与终端1900的正面之间的距离。本领域技术人员可以理解,上述结构并不构成对终端1900的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
在示例性实施例中,还提供了一种芯片,所述芯片包括可编程逻辑电路和/或程序指令,当所述芯片在计算机设备上运行时,用于实现上述方面所述的虚拟车辆的控制方法。
在示例性实施例中,还提供了一种计算机程序产品,该计算机程序产品包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器从计算机可读存储介质读取并执行该计算机指令,以实现上述各方法实施例提供的虚拟车辆的控制方法。
在示例性实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,所述计算机程序由处理器加载并执行以实现上述各方法实施例提供的虚拟车辆的控制方法。本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。本领域技术人员应该可以意识到,在上述一个或多个示例中,本申请实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。

Claims (16)

  1. 一种虚拟车辆的控制方法,所述方法由终端执行,所述方法包括:
    显示位于虚拟环境中处于行驶状态的所述虚拟车辆;
    响应于方向控制部件上的第一转向操作和手刹控制部件上的刹车操作,控制所述虚拟车辆进入漂移状态,所述第一转向操作用于控制所述虚拟车辆向速度方向的第一侧进行转向,所述虚拟车辆的车头朝向为第一方向,所述第一方向位于所述速度方向的第一侧;
    响应于所述方向控制部件上的第二转向操作,控制保持所述漂移状态的所述虚拟车辆的车头朝向转动至第二方向,所述第二转向操作用于控制所述虚拟车辆向所述速度方向的第二侧进行转向,所述第二方向位于所述速度方向的所述第一侧,且所述第二方向与所述速度方向形成的第二夹角小于所述第一方向与所述速度方向形成的第一夹角;
    响应于所述手刹控制部件上的所述刹车操作,控制保持所述漂移状态的所述虚拟车辆的车头朝向转动至第三方向,所述第三方向位于所述速度方向的所述第二侧。
  2. 根据权利要求1所述的方法,其中,所述响应于所述手刹控制部件上的所述刹车操作,控制保持所述漂移状态的所述虚拟车辆的车头朝向转动至第三方向,包括:
    在所述虚拟车辆的车头朝向和所述虚拟车辆的速度方向之间的夹角超过漂移门限的情况下,响应于所述手刹控制部件上的所述刹车操作,控制保持所述漂移状态的所述虚拟车辆的车头朝向转动至所述第三方向。
  3. 根据权利要求2所述的方法,其中,所述在所述虚拟车辆的车头朝向和所述虚拟车辆的速度方向之间的夹角超过漂移门限的情况下,响应于所述手刹控制部件上的所述刹车操作,控制保持所述漂移状态的所述虚拟车辆的车头朝向转动至所述第三方向,包括:
    在所述虚拟车辆的车头朝向和所述虚拟车辆的速度方向之间的夹角超过漂移门限的情况下,响应于所述手刹控制部件上的所述刹车操作,控制保持所述漂移状态的所述虚拟车辆的车头朝向转动至所述第三方向,以及显示反向漂移技能的释放信息。
  4. 根据权利要求2所述的方法,其中,所述方法还包括:
    在所述虚拟车辆的车头朝向和所述虚拟车辆的速度方向之间的夹角未超过所述漂移门限的情况下,控制所述虚拟车辆退出所述漂移状态,进入平跑状态。
  5. 根据权利要求2至4任一所述的方法,其中,所述方法还包括:
    根据所述虚拟车辆的抓地力、所述虚拟车辆的车头朝向和所述虚拟车辆的历史速度方向,确定所述虚拟车辆的速度方向。
  6. 根据权利要求1所述的方法,其中,所述第二转向操作是在所述方向控制部件上的持续按压操作;
    所述响应于所述手刹控制部件上的所述刹车操作,控制保持所述漂移状态的所述虚拟车辆的车头朝向转动至第三方向,包括:
    响应于所述方向控制部件上的所述持续按压操作和所述手刹控制部件上的刹车操作,控制保持所述漂移状态的所述虚拟车辆的车头朝向转动至所述第三方向。
  7. 根据权利要求1至4任一所述的方法,其中,所述响应于方向控制部件上的第一转向操作和手刹控制部件上的刹车操作,控制所述虚拟车辆进入漂移状态,包括:
    响应于所述方向控制部件上的所述第一转向操作,控制所述虚拟车辆的车头朝向转动至所述第一方向,所述第一方向位于所述速度方向的所述第一侧;
    响应于所述手刹控制部件上的刹车操作,控制所述虚拟车辆进入所述漂移状态。
  8. 根据权利要求1至4任一所述的方法,其中,所述方法还包括:
    响应于所述手刹控制部件上的所述刹车操作,控制所述虚拟车辆的虚拟速度下降。
  9. 根据权利要求8所述的方法,其中,所述方法还包括:
    在所述虚拟车辆的车头朝向和所述虚拟车辆的速度方向之间的夹角超过漂移门限的情况 下,控制所述虚拟车辆保持所述漂移状态;
    在所述虚拟车辆的车头朝向和所述虚拟车辆的速度方向之间的夹角未超过所述漂移门限的情况下,控制所述虚拟车辆退出所述漂移状态,进入平跑状态。
  10. 根据权利要求1所述的方法,其中,所述响应于所述手刹控制部件上的所述刹车操作,显示保持所述漂移状态的所述虚拟车辆的车头朝向转动至第三方向,包括:
    在所述虚拟车辆和虚拟边缘之间的距离超过漂移门限的情况下,响应于所述手刹控制部件上的所述刹车操作,控制保持所述漂移状态的所述虚拟车辆的车头朝向转动至所述第三方向,所述虚拟边缘是所述虚拟环境中虚拟路面的边缘;
    所述方法还包括:
    在所述虚拟车辆和虚拟边缘之间的距离未超过漂移门限的情况下,响应于所述手刹控制部件上的所述刹车操作,控制保持所述漂移状态的所述虚拟车辆的虚拟速度下降。
  11. 根据权利要求2至4任一所述的方法,其中,所述方法还包括:
    根据在连续转向虚拟路段中触发反向漂移技能的次数,更新所述漂移门限。
  12. 根据权利要求11所述的方法,其中,所述根据在连续转向虚拟路段中触发反向漂移技能的次数,更新所述漂移门限,包括:
    在所述连续转向虚拟路段中触发所述反向漂移技能的次数超过次数门限的情况下,将所述漂移门限更新为第一角度门限,所述第一角度门限小于所述漂移门限;
    在所述连续转向虚拟路段中触发所述反向漂移技能的次数未超过次数门限的情况下,将所述漂移门限更新为第二角度门限,所述第二角度门限大于所述漂移门限。
  13. 一种虚拟车辆的控制装置,所述装置包括:
    显示模块,用于显示位于虚拟环境中处于行驶状态的所述虚拟车辆;
    控制模块,用于响应于方向控制部件上的第一转向操作和手刹控制部件上的刹车操作,控制所述虚拟车辆进入漂移状态,所述第一转向操作用于控制所述虚拟车辆向速度方向的第一侧进行转向,所述虚拟车辆的车头朝向为第一方向,所述第一方向位于所述速度方向的第一侧;
    所述控制模块,还用于响应于所述方向控制部件上的第二转向操作,控制保持所述漂移状态的所述虚拟车辆的车头朝向转动至第二方向,所述第二转向操作用于控制所述虚拟车辆向所述速度方向的第二侧进行转向,所述第二方向位于所述速度方向的所述第一侧,且所述第二方向与所述速度方向形成的第二夹角小于所述第一方向与所述速度方向形成的第一夹角;
    所述控制模块,还用于响应于所述手刹控制部件上的所述刹车操作,控制保持所述漂移状态的所述虚拟车辆的车头朝向转动至第三方向,所述第三方向位于所述速度方向的所述第二侧。
  14. 一种计算机设备,所述计算机设备包括:处理器和存储器,所述存储器中存储有至少一段程序;所述处理器,用于执行所述存储器中的所述至少一段程序以实现上述如权利要求1至12任一所述的虚拟车辆的控制方法。
  15. 一种计算机可读存储介质,所述可读存储介质中存储有可执行指令,所述可执行指令由处理器加载并执行以实现上述如权利要求1至12任一所述的虚拟车辆的控制方法。
  16. 一种计算机程序产品,所述计算机程序产品包括计算机指令,所述计算机指令存储在计算机可读存储介质中,处理器从所述计算机可读存储介质读取并执行所述计算机指令,以实现上述如权利要求1至12任一所述的虚拟车辆的控制方法。
PCT/CN2023/088581 2022-05-20 2023-04-17 虚拟车辆的控制方法、装置、设备及存储介质 WO2023221707A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210555869.7 2022-05-20
CN202210555869.7A CN116983651A (zh) 2022-05-20 2022-05-20 虚拟车辆的控制方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
WO2023221707A1 true WO2023221707A1 (zh) 2023-11-23

Family

ID=88520106

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/088581 WO2023221707A1 (zh) 2022-05-20 2023-04-17 虚拟车辆的控制方法、装置、设备及存储介质

Country Status (2)

Country Link
CN (1) CN116983651A (zh)
WO (1) WO2023221707A1 (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109107152A (zh) * 2018-07-26 2019-01-01 网易(杭州)网络有限公司 控制虚拟对象漂移的方法和设备
CN109513210A (zh) * 2018-11-28 2019-03-26 腾讯科技(深圳)有限公司 虚拟世界中的虚拟车辆漂移方法、装置及存储介质
CN110052027A (zh) * 2019-04-26 2019-07-26 腾讯科技(深圳)有限公司 虚拟场景中的虚拟对象控制方法、装置、设备及存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109107152A (zh) * 2018-07-26 2019-01-01 网易(杭州)网络有限公司 控制虚拟对象漂移的方法和设备
CN109513210A (zh) * 2018-11-28 2019-03-26 腾讯科技(深圳)有限公司 虚拟世界中的虚拟车辆漂移方法、装置及存储介质
CN112755531A (zh) * 2018-11-28 2021-05-07 腾讯科技(深圳)有限公司 虚拟世界中的虚拟车辆漂移方法、装置及存储介质
CN110052027A (zh) * 2019-04-26 2019-07-26 腾讯科技(深圳)有限公司 虚拟场景中的虚拟对象控制方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN116983651A (zh) 2023-11-03

Similar Documents

Publication Publication Date Title
WO2021043110A1 (zh) 虚拟对象的移动控制方法、装置、终端及存储介质
CN110559653B (zh) 虚拟飞行器的控制方法、装置、终端及存储介质
JP2022535675A (ja) 仮想オブジェクトの制御方法並びにその、装置、端末及びコンピュータプログラム
JP2022533919A (ja) 仮想キャラクタの制御方法並びにそのコンピュータ機器、コンピュータプログラム、及び仮想キャラクタの制御装置
CN115427122A (zh) 虚拟控制台游戏控制器
WO2021218460A1 (zh) 虚拟对象的控制方法、装置、终端及存储介质
US20230321541A1 (en) Displaying visual field picture based on interaction zone on a virtual map
WO2023240925A1 (zh) 虚拟道具的拾取方法、装置、计算机设备和存储介质
WO2023221707A1 (zh) 虚拟车辆的控制方法、装置、设备及存储介质
US20230082510A1 (en) Controlling a virtual vehicle using auxiliary control function
US20230086441A1 (en) Method and apparatus for displaying picture in virtual scene, device, storage medium, and program product
JP2011197246A (ja) シミュレーション装置、プログラム及び情報記憶媒体
JP2023090815A (ja) ゲームプログラム、ゲーム処理方法及びゲーム端末
WO2023221689A1 (zh) 虚拟车辆的控制方法、装置、设备及介质
WO2022170892A1 (zh) 虚拟对象的控制方法、装置、设备、存储介质及程序产品
CN115888101A (zh) 虚拟角色的状态切换方法、装置、存储介质及电子设备
CN113769373A (zh) 游戏操作的灵敏度调整方法及装置、存储介质及电子设备
WO2023221688A1 (zh) 虚拟车辆的控制方法、装置、终端设备及存储介质
CN114210051A (zh) 虚拟场景中的载具控制方法、装置、设备及存储介质
WO2023221879A1 (zh) 虚拟车辆的控制方法、装置、设备及计算机可读存储介质
WO2023221695A1 (zh) 虚拟车辆的控制方法、装置、设备及存储介质
WO2023160068A1 (zh) 虚拟对象控制方法、装置、设备及介质
WO2022130681A1 (ja) ゲームシステム、プログラム及び情報処理方法
WO2023221685A1 (zh) 虚拟场景中的虚拟车辆控制方法、装置及电子设备
WO2024037142A1 (zh) 虚拟对象的移动引导方法、装置、电子设备、存储介质及程序产品

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23806660

Country of ref document: EP

Kind code of ref document: A1