一种场景实现方法、装置及设备制造方法及图纸

技术编号:21524830 阅读:11 留言:0更新日期:2019-07-06 16:38
本发明专利技术提供了一种场景实现方法、装置及设备,包括:接收场景创建请求,所述场景创建请求包括第一数量个场景实体的参数;从预设实体数据库中获取所述第一数量个场景实体的参数对应的实体属性数据和实体逻辑组件;根据所述实体属性数据和实体逻辑组件生成所述第一数量个场景实体;基于所述第一数量个场景实体创建目标场景。将目标场景中的实体的属性数据和逻辑组件分离存放,通过属性数据和逻辑组件的聚合形成多态化的实体,达到复用以及多态目的,又有效地避免了类个数以及基类代码的膨胀。

A Scene Realization Method, Device and Equipment

【技术实现步骤摘要】
一种场景实现方法、装置及设备
本专利技术涉及场景实现
,具体涉及一种场景实现方法、装置及设备。
技术介绍
现有技术中场景实现过程中多采用继承的方式来实现代码复用以及多态。在场景对象设计层面,没有进行数据和逻辑的分离,无法灵活地通过组合的方式构建多态的场景对象。虽说部分逻辑使用行为模式实现局部的组合能力,但整体还是以继承为主。这种方式会造成基类代码以及对象类个数的膨胀,同时带来多重继承的复杂性。
技术实现思路
本专利技术提出了一种场景实现方法、装置及设备,能够解决业务开发过程中的复杂度、复用性、健壮性等问题。本专利技术具体是以如下技术方案实现的:一方面,本专利技术提供了一种场景实现方法,包括:接收场景创建请求,所述场景创建请求包括第一数量个场景实体的参数;从预设实体数据库中获取所述第一数量个场景实体的参数对应的实体属性数据和实体逻辑组件;根据所述实体属性数据和实体逻辑组件生成所述第一数量个场景实体;基于所述第一数量个场景实体创建目标场景。另一方面,本专利技术提供了一种场景实现装置,包括:创建请求接收模块,用于接收场景创建请求,所述场景创建请求包括第一数量个场景实体的参数;获取模块,用于从预设实体数据库中获取所述第一数量个场景实体的参数对应的实体属性数据和实体逻辑组件;生成模块,用于根据所述实体属性数据和实体逻辑组件生成所述第一数量个场景实体;创建模块,用于基于所述第一数量个场景实体创建目标场景。进一步的,所述第一数量个场景实体包括一个或多个场景实体,所述生成模块,具体用于根据所述多个场景实体中每一场景实体的实体属性数据和实体逻辑组件生成相应的场景实体。进一步的,所述装置还包括:修改请求接收模块,用于接收场景实体修改请求;修改模块,用于根据所述场景实体修改请求对所述目标场景所对应的场景实体中的实体逻辑组件进行修改,得到更新后的实体逻辑组件;场景实体更新模块,用于根据所述更新后的实体逻辑组件和相应的实体属性数据生成更新后的场景实体;目标场景更新模块,用于基于所述更新后的场景实体更新所述目标场景。进一步的,所述装置还包括:消息传输中心建立模块,用于建立场景的消息传输中心,以便通过所述消息传输中心进行场景实体之间、场景实体逻辑组件之间以及场景实体和外部系统之间的消息传输。进一步的,所述装置还包括:场景运作组件集合获取模块,用于获取场景运作组件集合,所述场景运作组件集合包括多种场景运作规则对应的组件;第一确定模块,用于根据场景运作类型所对应的场景运作需求从所述场景运作组件集合中确定与所述场景运作需求相匹配的场景运作组件;映射关系建立模块,用于建立所述相匹配的场景运作组件与所述场景运作类型的映射关系。进一步的,所述场景创建请求还包括场景运作需求参数;相应的,所述装置还包括:场景运作类型确定模块,用于根据所述场景运作需求参数确定相应的场景运作类型;第二确定模块,用于基于所述映射关系确定与所述相应的场景运作类型所对应的场景运作组件;场景运作组件获取模块,用于通过标准场景运作入口获取所述所对应的场景运作组件;目标场景运作融合模块,用于基于所述所对应的场景运作组件对所述目标场景的运作融合,得到所述目标场景的目标运作场景。另一方面,本专利技术提供了一种场景实现设备,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如所述第一方面所述的场景实现方法。本专利技术提供了一种场景实现方法、装置及设备,将目标场景中的实体的属性数据和逻辑组件分离存放,通过属性数据和逻辑组件的聚合形成多态化的实体,达到复用以及多态目的,又有效地避免了类个数以及基类代码的膨胀。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案和优点,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。图1是本专利技术实施例提供的一种场景实现方法的流程示意图;图2是本专利技术实施例提供的一种传统的场景实现方法的架构示意图;图3是本专利技术实施例提供的一种建立实体数据库的方法的流程示意图;图4是本专利技术实施例提供的一种以动态方式实现场景的方法的流程示意图;图5是本专利技术实施例提供的一种场景运作组件建立方法的流程示意图;图6是本专利技术实施例提供的一种对玩法进行抽象分类的示意图;图7是本专利技术实施例提供的一种通过标准入口获取场景运作组件的方法的流程示意图;图8是本专利技术实施例提供的一种各玩法的进入流程示意图;图9是本专利技术实施例提供的一种场景实现方法的架构类的示意图;图10是本专利技术实施例提供的一种场景实现方法的架构示意图;图11是本专利技术实施例提供的一种通过单机Entity实现移动功能的流程示意图;图12是本专利技术实施例提供的一种通过多人模式下Entity实现移动功能的流程示意图;图13是本专利技术实施例提供的一种游戏场景实现时的业务开发流程意图;图14是本专利技术实施例提供的一种场景实现装置的结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本专利技术保护的范围。需要说明的是,本专利技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本专利技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。以下介绍本专利技术基于上述系统的场景实现的方法,本说明书提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的系统或服务器产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。图1是本专利技术实施例提供的一种场景实现方法的流程示意图,如图1所示,所述方法具体包括:S101:接收场景创建请求,所述场景创建请求包括第一数量个场景实体的参数。本说明书中的场景可以是一个虚拟的场景,具体可以指游戏中的一个虚拟世界,在这个虚拟世界里可以看到其他玩家以及非玩家角色(NPC,不受玩家操控的游戏角色),并可以和他们进行交互。本说明书中的实体(Entity)可以指游戏世界中一个有独立生命周期的单元。比如说,一个NPC,一个怪物等。实体可以是一个抽象的概念,没有行为(Behavior)的Entity只是一堆数据的集合,本身没有任何逻辑。行为执行代码,用于实现不同的行为逻辑的代码,比如说移动Behavior用于实现运动逻辑,同步Be本文档来自技高网...

【技术保护点】
1.一种场景实现的方法,其特征在于,所述方法包括:接收场景创建请求,所述场景创建请求包括第一数量个场景实体的参数;从预设实体数据库中获取所述第一数量个场景实体的参数对应的实体属性数据和实体逻辑组件;根据所述实体属性数据和实体逻辑组件生成所述第一数量个场景实体;基于所述第一数量个场景实体创建目标场景。

【技术特征摘要】
1.一种场景实现的方法,其特征在于,所述方法包括:接收场景创建请求,所述场景创建请求包括第一数量个场景实体的参数;从预设实体数据库中获取所述第一数量个场景实体的参数对应的实体属性数据和实体逻辑组件;根据所述实体属性数据和实体逻辑组件生成所述第一数量个场景实体;基于所述第一数量个场景实体创建目标场景。2.根据权利要求1所述的方法,其特征在于,所述预设实体数据库通过以下方式建立:获取第二数量个场景实体样本;获取所述第二数量个场景实体样本中每个场景实体样本的属性数据和逻辑组件;将所述第二数量个场景实体样本的所有属性数据和所有逻辑组件分别存入所述预设实体数据库。3.根据权利要求1所述的方法,其特征在于,所述第一数量个场景实体包括一个或多个场景实体;当所述第一数量个场景实体为多个场景实体时,所述根据所述实体属性数据和实体逻辑组件生成所述第一数量个场景实体,具体包括:根据所述多个场景实体中每一场景实体的实体属性数据和实体逻辑组件生成相应的场景实体。4.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:接收场景实体修改请求;根据所述场景实体修改请求对所述目标场景所对应的场景实体中的实体逻辑组件进行修改,得到更新后的实体逻辑组件;根据所述更新后的实体逻辑组件和相应的实体属性数据生成更新后的场景实体;基于所述更新后的场景实体更新所述目标场景。5.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:建立场景的消息传输中心,以便通过所述消息传输中心进行场景实体之间、场景实体逻辑组件之间以及场景实体和外部系统之间的消息传输。6.根据权利要求1-3任一项所述的方法,其特征在于,在所述接收场景创建请求之前,所述方法还包括:获取场景运作组件集合,所述场景运作组件...

【专利技术属性】
技术研发人员:杨旭
申请(专利权)人:腾讯科技上海有限公司
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1