发明内容
有鉴于此,本申请实施例提供了一种游戏画面渲染方法及装置、计算设备和计算机可读存储介质,以解决现有技术中存在的技术缺陷。
根据本申请实施例的第一方面,提供了一种游戏画面渲染方法,包括:
确定目标角色对应的目标道具,并获取所述目标道具的道具属性信息;
获取所述目标道具在目标时刻的作用力参数;
根据所述道具属性信息和所述作用力参数计算所述目标道具在所述目标时刻的曲率;
根据所述目标道具的曲率渲染生成所述目标道具在所述目标时刻的游戏画面。
可选的,获取所述目标道具在目标时刻的作用力参数,包括:
获取所述目标道具在目标时刻的第一作用力参数和第二作用力参数。
可选的,获取所述目标道具在目标时刻的作用力参数,包括:
获取所述目标道具在目标时刻的第三作用力参数。
可选的,所述道具属性信息包括道具长度;
根据所述道具属性信息和所述作用力参数计算所述目标道具在所述目标时刻的曲率,包括:
根据所述道具长度和所述作用力参数计算所述目标道具在所述目标时刻的曲率。
可选的,所述目标道具包括至少一个控制受力点;
根据所述道具长度和所述作用力参数计算所述目标道具在所述目标时刻的曲率,包括:
根据所述道具长度和所述作用力参数计算所述目标道具的每个控制受力点在所述目标时刻对应的弯曲权重;
根据每个所述控制点对应的弯曲权重确定所述目标道具在所述目标时刻的曲率。
根据本申请实施例的第二方面,提供了一种游戏画面渲染装置,包括:
确定模块,被配置为确定目标角色对应的目标道具,并获取所述目标道具的道具属性信息;
获取模块,被配置为获取所述目标道具在目标时刻的作用力参数;
计算模块,被配置为根据所述道具属性信息和所述作用力参数计算所述目标道具在所述目标时刻的曲率;
渲染模块,被配置为根据所述目标道具的曲率渲染生成所述目标道具在所述目标时刻的游戏画面。
可选的,所述获取模块,进一步被配置为获取所述目标道具在目标时刻的第一作用力参数和第二作用力参数。
可选的,所述获取模块,进一步被配置为获取所述目标道具在目标时刻的第三作用力参数。
可选的,所述道具属性信息包括道具长度;
所述计算模块,进一步被配置为根据所述道具长度和所述作用力参数计算所述目标道具在所述目标时刻的曲率。
可选的,所述目标道具包括至少一个控制受力点;
所述计算模块,进一步被配置为:
根据所述道具长度和所述作用力参数计算所述目标道具的每个控制受力点在所述目标时刻对应的弯曲权重;
根据每个所述控制点对应的弯曲权重确定所述目标道具在所述目标时刻的曲率。
根据本申请实施例的第三方面,提供了一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述指令时实现所述游戏画面渲染方法的步骤。
根据本申请实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现所述游戏画面渲染方法的步骤。
本申请实施例提供的游戏画面渲染方法中,通过确定目标角色对应的目标道具,并获取所述目标道具的道具属性信息;获取所述目标道具在目标时刻的作用力参数;根据所述道具属性信息和所述作用力参数计算所述目标道具在所述目标时刻的曲率;根据所述目标道具的曲率渲染生成所述目标道具在所述目标时刻的游戏画面,通过本申请提供的游戏画面渲染方法,在游戏的钓鱼场景中,可以使得游戏画面更加逼真,更贴近于现实生活,给用户更好的游戏体验,有效的吸引新用户,留住老用户。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。
在本申请一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请一个或多个实施例。在本申请一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本申请一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
首先,对本发明一个或多个实施例涉及的名词术语进行解释。
曲率:针对曲线上某个点的切线方向角对弧长的转动率,通过微分来定义,表明曲线偏离直线的程度,在数学上曲率表明曲线在某一点的弯曲程度的数值,曲率越大,标识曲线的弯曲程度越大,曲率的倒数就是曲率半径。
在本申请中,提供了一种游戏画面渲染方法及装置、计算设备和计算机可读存储介质,在下面的实施例中逐一进行详细说明。
图1示出了根据本申请一实施例的计算设备100的结构框图。该计算设备100的部件包括但不限于存储器110和处理器120。处理器120与存储器110通过总线130相连接,数据库150用于保存数据。
计算设备100还包括接入设备140,接入设备140使得计算设备100能够经由一个或多个网络160通信。这些网络的示例包括公用交换电话网(PSTN)、局域网(LAN)、广域网(WAN)、个域网(PAN)或诸如因特网的通信网络的组合。接入设备140可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC))中的一个或多个,诸如IEEE802.11无线局域网(WLAN)无线接口、全球微波互联接入(Wi-MAX)接口、以太网接口、通用串行总线(USB)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC)接口,等等。
在本申请的一个实施例中,计算设备100的上述部件以及图1中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图1所示的计算设备结构框图仅仅是出于示例的目的,而不是对本申请范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
计算设备100可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止计算设备。计算设备100还可以是移动式或静止式的服务器。
其中,处理器120可以执行图2所示游戏画面渲染方法中的步骤。图2示出了根据本申请一实施例的游戏画面渲染方法的流程图,包括步骤202至步骤208。
步骤202:确定目标角色对应的目标道具,并获取所述目标道具的道具属性信息。
目标道具即在游戏中目标角色使用的道具,在不同的游戏场景中,目标道具的具体表现形式不同,比如在钓鱼场景中,目标道具即可以是鱼竿;在战斗场景中,目标道具即可是长矛、鞭子等等。
为了便于理解,以本申请提供的游戏画面渲染方法应用于游戏的钓鱼场景为例进行解释说明,本申请提供的游戏画面渲染方法具体为对游戏钓鱼场景中鱼竿进行渲染。
玩家在控制游戏中的角色进入游戏中的钓鱼场景后,目标角色即玩家控制的游戏角色,目标角色使用的道具即为目标钓竿,同时获取目标钓竿的钓竿属性信息,钓竿属性信息包括但不限于钓竿品质、钓竿韧性参数、钓竿骨骼参数等等,如钓竿品质为高、钓竿骨骼为7节、钓竿韧性为高;钓竿品质为中、钓竿骨骼为5节、钓竿韧性为中;钓竿品质为低、钓竿骨骼为3节,钓竿韧性为低,在游戏设置中,钓竿品质越高,则对应的钓竿韧性越高,钓竿越不容易损坏,为了表现钓竿韧性高,则可以通过增加多个钓竿骨骼来实现,换句话说,在本申请中,目标钓竿的钓竿骨骼越多,则钓竿韧性越好,对应的钓竿品质越高。
在本申请提供的一具体实施方式中,目标鱼竿的品质为中,其中组成目标鱼竿的钓竿骨骼有5节,即目标鱼竿是由5节钓竿骨骼组成,目标鱼竿的韧性为中等。
步骤204:获取所述目标道具在目标时刻的作用力参数。
目标时刻为在实际游戏中的某个时间点,比如在垂钓时,鱼还没有上钩的时间点,或者鱼上钩后,鱼拉着鱼线挣扎的时间点等等。作用力参数为作用在所述目标钓竿上的作用力的参数,如在鱼未上钩时,目标鱼竿只手动鱼钩重力的作用力自然下垂,在鱼上钩后,目标鱼竿会受到玩家的控制指令对应的作用力和鱼游动的作用力,呈现不同的弯曲效果。
玩家控制游戏角色,发出控制指令,控制指令包括但不限于抛竿、拉竿等。当控制指令为抛竿时,控制指令中携带有抛竿控制参数,如甩杆角度、甩杆速度、目标位置信息等等;当控制指令为拉杆时,控制指令中携带有拉杆控制参数,如拉杆力度、拉杆方向等等。
可选的,获取所述目标道具在目标时刻的作用力参数,包括:
获取所述目标道具在目标时刻的第一作用力参数和第二作用力参数。
在钓鱼的游戏场景中,当有鱼咬上鱼钩后,咬钩的鱼即为目标鱼,获取目标鱼的属性信息,目标鱼的鱼属性信息包括但不限于鱼的种类、鱼的重量、鱼的长度、鱼的颜色等等,所述目标鱼在咬钩之后会有相应的游动轨迹,即运动路径,在实际应用中,会预先设置若干个运动路径,当鱼咬钩后,会在若干个运动路径中选择一条运动路径作为本次的目标运动路径,如游动方向、游动速度、游动表现等等;当鱼咬钩后,玩家需要控制游戏中的目标角色进行相应的操作,即向目标角色发送控制指令,在实际应用中,第一作用力参数可以理解为玩家控制的游戏中的目标角色作用在目标钓竿上的作用力参数,第二作用力参数可以理解为目标鱼在游动时作用在目标钓竿上的作用力参数。
在本申请提供的钓鱼游戏的一个游戏场景中,若鱼上钩后会有挣扎的动作表现,具体为向左或向右游动,挣扎的力度与鱼的属性相关,比如鱼的重量比较大则挣扎力度大,具体的对应关系可以预先存储在数据表中,在本申请中对此不做限制。此时玩家控制目标角色也会相应的向左或向右拉动目标鱼竿,拉动上钩的鱼上岸,此时,获取作用在目标钓竿上的游戏角色的第一作用力参数和鱼挣扎拉动鱼竿的第二作用力参数。
可选的,获取所述目标道具在目标时刻的作用力参数,包括:
获取所述目标道具在目标时刻的第三作用力参数。
在本申请提供的钓鱼游戏的另一个游戏场景中,玩家控制目标角色,拿出目标鱼竿,在水面上确定垂钓位置后,控制鱼竿发出甩杆动作,将鱼竿甩至水面上进行垂钓,此时没有鱼上钩,目标鱼竿执行完抛竿后,在水面静止,此时目标鱼竿受到鱼钩重力的作用自然下垂,此时目标鱼竿受到鱼钩的重力作用,获取鱼钩的重力参数,第三作用力参数可以理解为鱼钩的重力参数,获取在此状态下,鱼钩作用在目标鱼竿上的第三作用力参数。
在实际游戏场景中,还会出现目标鱼脱钩的情况,即目标角色钓鱼失败,根据下述公式1模拟钓鱼失败时鱼竿的回弹效果。
公式1
其中,x表示时间进度,fac是影响鱼竿回弹次数的变量,fac的取值在0.02-0.1之间,fac的取值越低,鱼竿回弹次数越多。
步骤206:根据所述道具属性信息和所述作用力参数计算所述目标道具在所述目标时刻的曲率。
曲率是针对曲线上某个点的切线方向角对弧长的转动率,通过微分来定义,表明曲线偏离直线的程度,在数学上曲率表明曲线在某一点的弯曲程度的数值,曲率越大,标识曲线的弯曲程度越大,曲率的倒数就是曲率半径。
可选的,所述道具属性信息包括道具长度;
根据所述道具属性信息和所述作用力参数计算所述目标道具在所述目标时刻的曲率,包括:
根据所述道具长度和所述作用力参数计算所述目标道具在所述目标时刻的曲率。
在实际应用中,钓竿属性信息包括钓竿长度,当钓竿长度越长,则钓竿的韧性越好,曲率越大,在实际应用中,根据钓竿的长度和作用力参数来计算所述目标钓竿在所述目标时刻的曲率。
具体的,目标道具上包括多个道具骨骼,每个道具骨骼上还包括多个控制受力点;
根据所述道具长度和所述作用力参数计算所述目标道具在所述目标时刻的曲率,包括:
根据所述道具长度和所述作用力参数计算所述目标道具的每个控制受力点在所述目标时刻对应的弯曲权重;
根据每个所述控制点对应的弯曲权重确定所述目标道具在所述目标时刻的曲率。
在实际应用中,目标钓竿由多个钓竿骨骼,且钓竿骨骼与钓竿品质相关,如高品质钓竿的钓竿骨骼较多,低品质钓竿的钓竿骨骼较少,具体的钓竿骨骼和钓竿品质的对应关系预先存储在相应的数据表中,在本申请中对此不做限制。
在目标钓竿的多个钓竿骨骼上包括多个控制受力点,控制受力点即受力发生弯曲的点,具体的,参见下述公式2,公式2用于计算目标鱼竿控制点受力的弯曲权重:
公式2
其中,x表示目标鱼竿的控制受力点,l表示目标鱼竿长度,f(x)表示控制点的弯曲权重。
在确定每个控制受力点的弯曲权重后,即可确定目标钓竿的曲率。
步骤208:根据所述目标道具的曲率渲染生成所述目标道具在所述目标时刻的游戏画面。
根据所述目标钓竿的曲率渲染生成所述目标钓竿在所述目标时刻的游戏画面,在渲染游戏画面时,使用的是网格三角形的渲染方式,具体的参见下述公式3,公式3用于计算目标鱼竿受力弯曲时网格三角形顶点位置。
公式3
其中,Pi表示控制受力点位置,n表示控制受力点数量,t表示鱼竿网格顶点到原点的距离相对鱼竿长度的比例。
本申请实施例提供的游戏画面渲染方法,通过确定目标角色对应的目标道具,并获取所述目标道具的道具属性信息;接收针对所述目标角色的控制指令,其中,所述控制指令中携带有控制参数;获取所述目标道具在目标时刻的作用力参数;根据所述道具属性信息、所述控制参数和所述作用力参数确定所述目标道具在所述目标时刻的曲率;根据所述目标道具的曲率渲染生成所述目标道具在所述目标时刻的游戏画面,通过本申请提供的游戏画面渲染方法,可以动态计算目标道具的曲率,并根据动态曲率实施渲染生成相应的游戏画面,使得渲染获得的游戏画面更加真实,提升用户的游戏体验,增强了老用户的粘性,同时可以吸引新用户。
图3示出了本申请一实施例的应用于钓鱼场景的游戏画面渲染方法,该游戏画面渲染方法包括步骤302至步骤310。
步骤302:确定目标角色对应的目标钓竿,并获取所述目标钓竿的道具长度。
在本申请提供的一具体实施例中,玩家操作游戏中的目标角色A进入钓鱼场景,目标角色A将手中的道具切换至目标钓竿,目标钓竿的品质为高、钓竿骨骼数量为7根,目标钓竿的钓竿长度为5米。
步骤304:获取所述目标钓竿在目标时刻的第一作用力参数和第二作用力参数。
在本申请提供的一具体实施例中,以目标角色钓到目标鱼为例,目标鱼在挣扎,尝试挣脱钓竿,玩家通过发出控制指令,控制鱼竿,获取目标角色作用在目标钓竿上的第一作用力参数P1;目标鱼根据预设的游动轨迹游动,目标鱼的种类为鲤鱼,重量为3斤,获取目标鱼在挣脱钓竿的过程中,获取目标鱼作用在目标钓竿上的第二作用力参数P2。
步骤306:根据所述钓竿长度、所述第一作用力参数和所述第二作用力参数计算所述目标钓竿的每个控制受力点在所述目标时刻对应的弯曲权重。
在本申请提供的一具体实施例中,在目标钓竿上有n个受力控制点,根据钓竿长度5米、第一作用力参数P1和第二作用力参数P2即可计算获得每个受力控制点Xi对应的弯曲权重,其中i即第i个受力控制点,并且1<=i<=n。
步骤308:根据每个所述控制点对应的弯曲权重确定所述目标钓竿在所述目标时刻的曲率。
在本申请提供的一具体实施例中,根据每个受力控制点Xi对应的弯曲权重即可确定所述目标钓竿在所述目标时刻的曲率。
步骤310:根据所述目标钓竿的曲率渲染生成所述目标钓竿在所述目标时刻的游戏画面。
在本申请提供的一具体实施例中,根据目标钓竿的曲率和目标钓竿对应的材质和渲染素材对所述目标钓竿进行渲染,生成相应的游戏画面。
本申请实施例提供的游戏画面渲染方法,通过确定目标角色对应的目标钓竿,并获取所述目标钓竿的钓竿属性信息;接收针对所述目标角色的控制指令,其中,所述控制指令中携带有控制参数;获取所述目标钓竿在目标时刻的作用力参数;根据所述钓竿属性信息、所述控制参数和所述作用力参数确定所述目标钓竿在所述目标时刻的曲率;根据所述目标钓竿的曲率渲染生成所述目标钓竿在所述目标时刻的游戏画面,通过本申请提供的游戏画面渲染方法,可以动态计算目标钓竿的曲率,并根据动态曲率实施渲染生成相应的游戏画面,使得渲染获得的游戏画面更加真实,提升用户的游戏体验,增强了老用户的粘性,同时可以吸引新用户。
与上述方法实施例相对应,本申请还提供了游戏画面渲染装置实施例,图4示出了本申请一个实施例的游戏画面渲染装置的结构示意图。如图4所示,该装置400包括:
确定模块402,被配置为确定目标角色对应的目标道具,并获取所述目标道具的道具属性信息;
获取模块404,被配置为获取所述目标道具在目标时刻的作用力参数;
计算模块406,被配置为根据所述道具属性信息和所述作用力参数计算所述目标道具在所述目标时刻的曲率;
渲染模块408,被配置为根据所述目标道具的曲率渲染生成所述目标道具在所述目标时刻的游戏画面。
可选的,所述获取模块404,进一步被配置为获取所述目标道具在目标时刻的第一作用力参数和第二作用力参数。
可选的,所述获取模块404,进一步被配置为获取所述目标道具在目标时刻的第三作用力参数。
可选的,所述道具属性信息包括道具长度;
所述计算模块406,进一步被配置为根据所述道具长度和所述作用力参数计算所述目标道具在所述目标时刻的曲率。
可选的,所述目标道具包括至少一个控制受力点;
所述计算模块406,进一步被配置为:
根据所述道具长度和所述作用力参数计算所述目标道具的每个控制受力点在所述目标时刻对应的弯曲权重;
根据每个所述控制点对应的弯曲权重确定所述目标道具在所述目标时刻的曲率。
上述为本实施例的一种游戏画面渲染装置的示意性方案。需要说明的是,该游戏画面渲染装置的技术方案与上述的游戏画面渲染方法的技术方案属于同一构思,游戏画面渲染装置的技术方案未详细描述的细节内容,均可以参见上述游戏画面渲染方法的技术方案的描述。
本申请实施例提供的游戏画面渲染装置,通过确定目标角色对应的目标道具,并获取所述目标道具的道具属性信息;接收针对所述目标角色的控制指令,其中,所述控制指令中携带有控制参数;获取所述目标道具在目标时刻的作用力参数;根据所述道具属性信息、所述控制参数和所述作用力参数确定所述目标道具在所述目标时刻的曲率;根据所述目标道具的曲率渲染生成所述目标道具在所述目标时刻的游戏画面,通过本申请提供的游戏画面渲染装置,可以动态计算目标道具的曲率,并根据动态曲率实施渲染生成相应的游戏画面,使得渲染获得的游戏画面更加真实,提升用户的游戏体验,增强了老用户的粘性,同时可以吸引新用户。
本申请一实施例中还提供一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述指令时实现所述的游戏画面渲染方法的步骤。
上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的游戏画面渲染方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述游戏画面渲染方法的技术方案的描述。
本申请一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现如前所述游戏画面渲染方法的步骤。
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的游戏画面渲染方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述游戏画面渲染方法的技术方案的描述。
上述对本申请特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上公开的本申请优选实施例只是用于帮助阐述本申请。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本申请的内容,可作很多的修改和变化。本申请选取并具体描述这些实施例,是为了更好地解释本申请的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本申请。本申请仅受权利要求书及其全部范围和等效物的限制。