CN113134235A - 地图元素添加方法、装置、终端及存储介质 - Google Patents

地图元素添加方法、装置、终端及存储介质 Download PDF

Info

Publication number
CN113134235A
CN113134235A CN202010053597.1A CN202010053597A CN113134235A CN 113134235 A CN113134235 A CN 113134235A CN 202010053597 A CN202010053597 A CN 202010053597A CN 113134235 A CN113134235 A CN 113134235A
Authority
CN
China
Prior art keywords
map
display
hierarchy
class
map element
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
CN202010053597.1A
Other languages
English (en)
Inventor
桑琪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202010053597.1A priority Critical patent/CN113134235A/zh
Priority to PCT/CN2020/123763 priority patent/WO2021143262A1/zh
Priority to EP20914042.5A priority patent/EP4006845A4/en
Publication of CN113134235A publication Critical patent/CN113134235A/zh
Priority to US17/668,895 priority patent/US11983840B2/en
Pending legal-status Critical Current

Links

Images

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/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/20Linear translation of whole images or parts thereof, e.g. panning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • 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/537Controlling 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 using indicators, e.g. showing the condition of a game character on screen
    • A63F13/5378Controlling 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 using indicators, e.g. showing the condition of a game character on screen for displaying an additional top view, e.g. radar screens or maps
    • 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/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/05Geographic models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • 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/30Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by output arrangements for receiving control signals generated by the game device
    • A63F2300/301Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by output arrangements for receiving control signals generated by the game device using an additional display connected to the game console, e.g. on the controller
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02ATECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
    • Y02A90/00Technologies having an indirect contribution to adaptation to climate change
    • Y02A90/10Information and communication technologies [ICT] supporting adaptation to climate change, e.g. for weather forecasting or climate simulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Optics & Photonics (AREA)
  • Human Computer Interaction (AREA)
  • Remote Sensing (AREA)
  • Computer Graphics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本申请公开了一种地图元素添加方法、装置、终端及存储介质,属于计算机技术领域。本申请实施例提供的技术方案提供了一种新型的开发框架,通过将一些地图实现所需的类事先封装至对应的模块中,以便在对地图元素进行添加时,能够基于已有的模块中的类进行创建,从而大大提高了开发效率,也避免了开发的复杂度。

Description

地图元素添加方法、装置、终端及存储介质
技术领域
本申请涉及计算机技术领域,特别涉及一种地图元素添加方法、装置、终端及存储介质。
背景技术
随着计算机技术的发展以及终端功能的多样化,在终端上能够进行的游戏种类越来越多。为了实现对虚拟场景内位置等的感知,很多游戏开始提供地图功能,为游戏玩家提供提示和便捷。游戏可以提供挂在虚拟场景上进行显示的地图,然而,地图的开发需要大量的开发人力,对于每个地图元素的显示设置均需要通过复杂的代码编写实现,且地图元素的显示逻辑情况复杂,导致开发效率较低,开发的复杂度大。
发明内容
本申请实施例提供了一种地图元素添加方法、装置、终端及存储介质,能够解决开发效率较低,开发的复杂度大的问题。该技术方案如下:
一方面,提供了一种地图元素添加方法,应用于目标应用程序的开发终端上,所述目标应用程序包括地图层级管理模块和基础地图视图模块,所述地图层级管理模块定义有层级名称类、显示跟随类以及天气影响类,所述基础地图视图模块定义有全局地图基类和局部地图基类,
所述方法包括:
对于待添加的地图元素,基于所述地图层级管理模块中基于所封装的层级名称类、显示跟随类以及天气影响类,创建所述地图元素所属层级的名称、所述地图元素在所述层级的显示跟随信息以及所述地图元素的天气影响信息;
在目标文件夹中创建所述地图元素的预制体,所述预制体的名称为所述所属层级的名称和所述地图元素的名称的组合;
基于所述基础地图视图模块中的全局地图基类和局部地图基类,添加用于更新所述地图元素的代码,所述代码用于指示所述地图元素的预制体的存储位置以及所述地图元素在所述层级进行显示时的显示状态信息。
一方面,提供了一种地图元素添加装置,应用于目标应用程序的开发终端上,所述目标应用程序包括地图层级管理模块和基础地图视图模块,所述地图层级管理模块定义有层级名称类、显示跟随类以及天气影响类,所述基础地图视图模块定义有全局地图基类和局部地图基类,
所述装置包括:
元素创建单元,用于对于待添加的地图元素,基于所述地图层级管理模块中基于所封装的层级名称类、显示跟随类以及天气影响类,创建所述地图元素所属层级的名称、所述地图元素在所述层级的显示跟随信息以及所述地图元素的天气影响信息;
预制体创建单元,用于在目标文件夹中创建所述地图元素的预制体,所述预制体的名称为所述所属层级的名称和所述地图元素的名称的组合;
代码添加单元,用于在所述基础地图视图模块中添加用于更新所述地图元素的代码,所述代码用于指示所述地图元素的预制体的存储位置以及所述地图元素在所述层级进行显示时的显示状态信息。
在一种可能实现方式中,所述显示跟随信息用于指示所述地图元素是否随地图进行缩放,所述天气影响信息用于指示所述地图元素是否受虚拟场景中虚拟天气的影响。
在一种可能实现方式中,所述基础地图视图模块包括全局地图基类子模块,所述全局地图基类子模块用于当检测到对所述全局地图的显示状态更新操作时,根据所述显示状态更新操作的操作类型,调用所述全局地图基类子模块中的对应功能;通过所述全局地图基类子模块中的对应功能,更新所述全局地图的显示。
在一种可能实现方式中,所述全局地图基类子模块用于:
当所述显示状态更新操作为缩放操作时,调用所述全局地图基类子模块中的缩放功能;或,
当所述显示状态更新操作为拖动操作时,调用所述全局地图基类子模块中的位置移动功能;或,
当所述显示状态更新操作为自动居中操作时,调用所述全局地图基类子模块中的自动居中功能。
在一种可能实现方式中,所述目标应用程序的变动频繁度大于目标频繁度阈值的显示元素与变动频繁度小于所述目标频繁度阈值的显示元素分别绘制在不同画布中。
在一种可能实现方式中,所述目标应用程序的显示界面的更新间隔时长大于两帧的显示时长。
在一种可能实现方式中,所述目标应用程序在检测到显示元素的显示位置发生变化时执行显示更新。
在一种可能实现方式中,所述目标应用程序将加载次数达到次数阈值的显示元素加载至内存池。
在一种可能实现方式中,所述目标应用程序可以基于着色器进行纹理剪裁来绘制局部地图,在显示所述局部地图时,在所述局部地图上叠加有具有镂空形状的图片。
在一种可能实现方式中,所述目标应用程序的三维引擎中具有基于原生的ScrollRect组件拓展了全局地图的缩放显示、多点触摸以及自动居中功能中至少一种的组件。
一方面,提供了一种终端,该终端包括一个或多个处理器和一个或多个存储器,该一个或多个存储器中存储有至少一条程序代码,该至少一条程序代码由该一个或多个处理器加载并执行以实现如上述任一种可能实现方式的地图元素添加方法所执行的操作。
一方面,提供了一种存储介质,该存储介质中存储有至少一条程序代码,该至少一条程序代码由处理器加载并执行以实现如上述任一种可能实现方式的地图元素添加方法所执行的操作。
本申请实施例提供的技术方案提供了一种新型的开发框架,通过将一些地图实现所需的类事先封装至对应的模块中,以便在对地图元素进行添加时,能够基于已有的模块中的类进行创建,从而大大提高了开发效率,也避免了开发的复杂度。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种实施环境示意图;
图2是本申请实施例提供的一种地图***的类图;
图3是本申请实施例提供的一种扩展后的组件示意图;
图4是本申请实施例提供的一种地图元素添加方法的流程图;
图5是本申请实施例提供的一种基于掩膜的局部地图绘制示意图;
图6是本申请实施例提供的一种基于着色器进行纹理剪裁的局部地图绘制示意图;
图7是本申请实施例提供的局部地图显示效果图;
图8是本申请实施例提供的一种地图元素添加装置的结构示意图;
图9是本申请实施例提供的一种终端的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
以下,对本申请涉及的术语进行解释。
虚拟场景:是应用程序在终端上运行时显示(或提供)的虚拟场景。该虚拟场景可以是对真实世界的仿真环境,也可以是半仿真半虚构的虚拟环境,还可以是纯虚构的虚拟环境。虚拟场景可以是二维虚拟场景、2.5维虚拟场景或者三维虚拟场景中的任意一种,本申请实施例对虚拟场景的维度不加以限定。例如,虚拟场景可以包括天空、陆地、海洋等,该陆地可以包括沙漠、城市等环境元素,用户可以控制虚拟对象在该虚拟场景中进行移动。
虚拟对象:是指在虚拟场景中的可活动对象。该可活动对象可以是虚拟人物、虚拟动物、动漫人物等,比如:在虚拟场景中显示的人物、动物、植物、油桶、墙壁、石块等。该虚拟对象可以是该虚拟场景中的一个虚拟的用于代表用户的虚拟形象。虚拟场景中可以包括多个虚拟对象,每个虚拟对象在虚拟场景中具有自身的形状和体积,占据虚拟场景中的一部分空间。
可选地,该虚拟对象可以是通过客户端上的操作进行控制的玩家角色,也可以是通过训练设置在虚拟场景对战中的人工智能(Artificial Intelligence,AI),还可以是设置在虚拟场景互动中的非玩家角色(Non-Player Character,NPC)。可选地,该虚拟对象可以是在虚拟场景中进行竞技的虚拟人物。可选地,该虚拟场景中参与互动的虚拟对象的数量可以是预先设置的,也可以是根据加入互动的客户端的数量动态确定的。
UI(User Interface,用户界面)设计是指对软件的人机交互、操作逻辑、界面美观的整体设计。
地图***:地图***是MOBA(Multiplayer Online Battle Arena,多人在线战术竞技游戏)游戏和MMORPG(Massive Multiplayer Online Role-Playing Game,大型多人在线角色扮演游戏)游戏战略性上不可或缺的一部分,也是玩家在游戏时使用最频繁的功能之一。地图***指游戏场景的UI缩略图以及一些动态的标记关键位置的UI元素的集合,通常包括全局地图(也称为大地图)和局部地图(也称为小地图),玩家主要通过地图功能观察游戏的大局视野。例如,在MOBA游戏中,玩家可以利用地图清楚得看到双方小兵、防御塔、地形、野怪、英雄等所在的位置。又例如,在MMORPG游戏中,玩家可以利用地图查看自己或其他玩家所在的位置,寻找NPC(Non-Player Character,非玩家角色)、怪物以及传送点等功能。
本申请实施例中的地图元素可以是指显示于虚拟场景中的任一显示元素,包括虚拟对象、虚拟道具以及环境元素等,本申请实施例对其具体类型不做限定。
Unity:一款进行三维界面渲染的引擎。
Lua:是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放,其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。
图1是本申请实施例提供的一种实施环境示意图,参见图1,该实施环境包括:第一终端120、服务器140和第二终端160。
第一终端120安装和运行有支持虚拟场景的应用程序。该应用程序可以是第一人称射击游戏(First-Person Shooting game,FPS)、第三人称射击游戏、多人在线战术竞技游戏(Multiplayer Online Battle Arena games,MOBA)、虚拟现实应用程序、三维地图程序、军事仿真程序或者多人枪战类生存游戏中的任意一种。第一终端120可以是第一用户使用的终端,第一用户使用第一终端120操作位于虚拟场景中的第一虚拟对象进行活动,该活动包括但不限于:调整身体姿态、爬行、步行、奔跑、骑行、跳跃、驾驶、拾取、射击、攻击、投掷中的至少一种。示意性的,第一虚拟对象是第一虚拟人物,比如仿真人物角色或动漫人物角色。
第一终端120以及第二终端160通过无线网络或有线网络与服务器140相连。
服务器140可以包括一台服务器、多台服务器、云计算平台或者虚拟化中心中的至少一种。服务器140用于为支持虚拟场景的应用程序提供后台服务。可选地,服务器140可以承担主要计算工作,第一终端120和第二终端160可以承担次要计算工作;或者,服务器140承担次要计算工作,第一终端120和第二终端160承担主要计算工作;或者,服务器140、第一终端120和第二终端160三者之间采用分布式计算架构进行协同计算。
第二终端160安装和运行有支持虚拟场景的应用程序。该应用程序可以是FPS、第三人称射击游戏、MOBA、虚拟现实应用程序、三维地图程序、军事仿真程序或者多人枪战类生存游戏中的任意一种。第二终端160可以是第二用户使用的终端,第二用户使用第二终端160操作位于虚拟场景中的第二虚拟对象进行活动,该活动包括但不限于:调整身体姿态、爬行、步行、奔跑、骑行、跳跃、驾驶、拾取、射击、攻击、投掷中的至少一种。示意性的,第二虚拟对象是第二虚拟人物,比如仿真人物角色或动漫人物角色。
可选地,第一终端120控制的第一虚拟对象和第二终端160控制的第二虚拟对象处于同一虚拟场景中,此时第一虚拟对象可以在虚拟场景中与第二虚拟对象进行互动。在一些实施例中,第一虚拟对象以及第二虚拟对象可以为敌对关系,例如,第一虚拟对象与第二虚拟对象可以属于不同的队伍和组织,敌对关系的虚拟对象之间,可以在陆地上以互相射击的方式进行对战方式的互动。
可选地,第一终端120和第二终端160上安装的应用程序是相同的,或两个终端上安装的应用程序是不同操作***平台的同一类型应用程序。第一终端120可以泛指多个终端中的一个,第二终端160可以泛指多个终端中的一个,本实施例仅以第一终端120和第二终端160来举例说明。第一终端120和第二终端160的设备类型相同或不同,该设备类型包括:智能手机、平板电脑、电子书阅读器、MP3(Moving Picture Experts Group AudioLayer III,动态影像专家压缩标准音频层面3)播放器、MP4(Moving Picture ExpertsGroup Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机中的至少一种。例如,第一终端120和第二终端160可以是智能手机,或者其他手持便携式游戏设备。以下实施例,以终端包括智能手机来举例说明。
本领域技术人员可以知晓,上述终端的数量可以更多或更少。比如上述终端可以仅为一个,或者上述终端为几十个或几百个,或者更多数量。本申请实施例对终端的数量和设备类型不加以限定。
本申请实施例所提供的方法可以应用于目标应用程序的开发终端,参见图2,该图2所示为本申请实施例提供的一种地图***的类图。所述目标应用程序的地图***包括地图层级管理模块MapLayerManager和基础地图视图模块BaseMapView,所述地图层级管理模块定义有层级名称类、显示跟随类以及天气影响类,用于管理地图尺寸、坐标转换以及元素层级等,还用于管理元素是否跟地图缩放,是否受迷雾、极端天气影响等,该地图层级管理模块可以提供更新地图元素的各类接口,包括单个坐标点更新、双点连线更新、批量更新等接口。所述基础地图视图模块定义有全局地图基类和局部地图基类,用于负责切换地图,载入以及更新地图各种地图元素的功能。所述基础地图视图模块包括全局地图基类子模块,所述全局地图基类子模块用于当检测到对所述全局地图的显示状态更新操作时,根据所述显示状态更新操作的操作类型,调用所述全局地图基类子模块中的对应功能;通过所述全局地图基类子模块中的对应功能,更新所述全局地图的显示。上述显示状态更新操作可以包含地图的缩放、拖拽、点击、将某元素自动居中以及刷新迷雾等操作,而局部地图基类子模块MiniMapView的主要功能为主角移动时,移动地图以保证主角在地图中心。
可选地,为了实现全局地图的缩放、拖动的功能,本申请实施例还基于原生的ScrollRect组件拓展了全局地图的缩放显示、多点触摸以及自动居中功能,还重写了拖动、点击接口,以形成如图3所示的MapScrollView组件。
图4是本申请实施例提供的一种地图元素添加方法的流程图。参见图4,所述方法包括:
401、对于待添加的地图元素,基于所述地图层级管理模块中基于所封装的层级名称类、显示跟随类以及天气影响类,创建所述地图元素所属层级的名称、所述地图元素在所述层级的显示跟随信息以及所述地图元素的天气影响信息。
该地图元素可以是任一种显示元素或者交互元素,例如,对于一个新增的地物元素来说,可以基于已有类对其所属层级进行定义,并对其是否跟随地图缩放,以及是否受气短天气影响等来进行定义。
402、在目标文件夹中创建所述地图元素的预制体,所述预制体的名称为所述所属层级的名称和所述地图元素的名称的组合。
该目标文件夹可以是指预设为元素路径的文件夹,在其中,可以按照层级+名称的命名方式来创建预制体。例如,该预制体中存储有一个游戏对象,包括游戏对象的所有组件以及其下的所有子游戏对象。
403、基于所述基础地图视图模块中的全局地图基类和局部地图基类,添加用于更新所述地图元素的代码,所述代码用于指示所述地图元素的预制体的存储位置以及所述地图元素在所述层级进行显示时的显示状态信息。
通过步骤403中来添加更新地图元素的代码,从而可以在实现时通过该代码来实现地图元素的更新显示。
在一种可能实现方式中,当地图元素还具有自己特殊的逻辑,例如点击可寻路功能等,则还可以添加自己的脚本。
由于上述模块中均已经封装好各种添加新元素需要的接口,因此开发人员在开发时无需在意内部功能如何实现,以最小的工作量完成相关需求。通过上述底层结构来进行元素添加,可以将开发时间大大缩短,完成上述3到4步只需要不到一小时。
为了减少处理器的计算量以及减少画布(canvas)重建的频率,可以尽量减少地图元素的更新频率,相应地,该方法可以包括:将地图显示界面的更新间隔时长大于两帧的显示时长。例如,对于特定对象,如实时变动的自身位置、队友位置、刺杀目标等元素,可以从每帧更新降到每两帧更新,或者每0.2s更新一次。另外,还可以在每次在确实发生位置更改时才修改地图元素的位置进行重新渲染,也即是,在检测到显示元素的显示位置发生变化时执行显示更新。可选地,为了进一步减少更新频率,还可以基于地图元素在当前时刻的位置和前一时刻的位置之间的距离变化程度来确定是否进行显示更新,具体地,可以基于预先设置的距离阈值来判断,当获取到目标地图元素在虚拟世界场景中的当前时刻的位置后,根据该当前时刻的位置和前一时刻的位置,确定该目标地图元素的移动距离,将该移动距离和距离阈值进行比较,当移动距离大于距离阈值,则触发基于该当前时刻的位置的显示更新,例如,在A元素的移动距离达到2米时触发显示更新,当然,该2米是指在虚拟世界场景中以虚拟世界场景的坐标来衡量的距离,而不是现实生活中的实际距离。可选地,对于不同的地图元素,还可以设置不同的距离阈值,从而使得一些显示需求较大、对整体场景影响较大的地图元素,能够及时进行更新显示,则可以设置相对较小的距离阈值,以实现及时更新,对于一些显示需求较小、对整体场景影响较小的地图元素,则可以设置相对较大的距离阈值,在保证一些元素及时更新的同时,降低整体的更新频率。例如,对于第一地图元素,若检测到该第一地图元素为终端控制对象所需元素,例如宝藏等,则可以为其配置第一距离阈值,对于第二地图元素,若检测到该第二地图元素为终端控制对象已经持有元素,例如,某道具,则可以为其配置第二距离阈值,其中,第一距离阈值小于第二距离阈值。通过上述基于距离的显示更新,可以大大降低地图元素的更新频率以及渲染消耗,从而提升整体性能。
在一种可选实现方式中,可以基于地图元素在更新上的特性,来将地图元素划分为不同的元素类型,该元素类型可以包括:地图载入后不变的地图元素例如,传送点;基于事件更新的地图元素,例如,任务标志、宝藏标记等;实时更新元素,例如,终端当前控制对象的自身位置、队友位置以及一些特定的地图元素,鹰眼模式目标、航线信息、可存活地域限制信息。基于上述元素类型的划分,在确定是否进行显示更新时,则可以基于元素类型的不同,来确定是否进行显示更新。例如,在小地图显示过程中,对于小地图中存在的地图载入后不变的地图元素,可以采用第一更新频率,也即是一个较小的更新频率,而对于基于事件更新的地图元素,则仅在检测到事件发生后,再执行显示更新,而对于实时更新的元素,则可以采用第二更新频率来执行显示更新,第二更新频率大于第一更新频率。通过上述基于地图元素本身的更新特性,来进行区别的显示更新,可以大大降低地图元素的更新频率以及渲染消耗,从而提升整体性能。
在一种可选实现方式中,还可以对于不同游戏模式,设置符合该游戏模式的显示更新方式,例如,对于20V20的游戏模式,则可以对地图元素中的虚拟对象位置进行分批更新,在第一时刻基于第一组虚拟对象的在第一时刻的位置进行更新显示,在第一时刻的下一时刻,也即是第二时刻,基于第二组虚拟对象在第二时刻的位置进行更新显示,从而降低了每次更新显示过程中所需处理的数据量,从而提升整体性能。
在一种可能实现方式中,地图中的地图元素经常出现或消失,为了避免元素经常加卸载造成游戏卡顿,采用内存池缓存资源的方式,同时为了避免SetActive地造成的额外消耗,以移到屏幕外来提高效率。所述目标应用程序将加载次数达到次数阈值的地图元素加载至内存池,从而就无需每次刷新都重新进行加载。
在一种可能实现方式中,在进行第一地图向第二地图的切换时,可以仅清理掉内存池中已加载的第一地图中的部分地图元素,而保留第一地图和第二地图中的重复地图元素,从而在对第二地图进行加载时,则可以避免重新加载,可以达到提高显示的加载速度的目的。
在一种可能实现方式中,地图元素种类繁多,同是存在的元素可能多达数十种,为了减少渲染调用drawcall,将所有地图元素的图片资源打到一张图集里。将所有元素放在一个画布(canvas)下可以让地图元素部分只产生一个drawcall,但这样会导致一个元素的位置变动,整个画布(canvas)都要重新计算纹理坐标,因而地图元素做了动静分离,频繁变动的元素放到一个画布(canvas)下,频率低图元素放到一个画布(canvas)下,让最小化画布(canvas)重建和最小化drawcall浪费中取得一个平衡。也即是,所述目标应用程序的变动频繁度大于目标频繁度阈值的地图元素与变动频繁度小于所述目标频繁度阈值的地图元素分别绘制在不同画布中。在一种可选实现方式中,可以基于地图元素在更新上的特性,来将地图元素划分为不同的元素类型,从而将不同类别的元素分层绘制。
在一种可能实现方式中,局部地图也即是小地图,用于显示全局地图(也即是大地图)的一部分,免不了应用掩膜Mask方法,在应用掩膜方法时,需要先绘制地图整体,再通过掩膜将其部分剪裁出来进行显示,但由于地图本身很大,这种处理就造成了很严重的过度渲染OverDraw的问题,导致计算资源的严重浪费,例如图5中所示的框体500内的区域为终端显示区域,框体501即为绘制的地图整体,而框体502所确定的部分则为最终显示部分。为此,所述目标应用程序可以基于着色器进行纹理剪裁来绘制局部地图,在显示所述局部地图时,在所述局部地图上叠加有具有镂空形状的图片。也即是,本申请实施例为局部地图的底图部分可以设置专门的着色器(shader),采用纹理剪裁的方法,基于待绘制部分的四个顶点进行绘制,从而可以避免OverDraw的问题,如图6所示,图6中框体600内的区域为终端显示区域,框体601所确定的部分则为绘制的部分,其绘制所需的计算量大大降低,同时可以传入一张带有形状的图片做形状的镂空处理,其最终显示效果可以如图7中的框体701所框住的圆形区域所示。也即是,在显示小地图时,终端可以采用纹理剪裁的方法,基于待绘制的小地图区域的四个顶点进行绘制底图,并在基于该四个顶点的位置,在底图的上层图层中绘制具有镂空区域的图形,以使得底图中与镂空区域对应的部分可以被人眼观察到。例如,该镂空区域可以为圆形区域。通过这种方式绘制所显示的小地图,可以达到较为圆滑的显示,可选地,该镂空区域还可以具有渐变效果,也即是,其透明度渐变,使得显示效果柔和美观,更符合人眼的视觉习惯。
上述过程介绍了小地图的底图绘制方法,下面针对这种绘制过程中底图元素的绘制过程提供了相应的优化方式,其优化可以包括以下三个优化方面:1、每个地图元素以跟节点为包围框进行计算,对于一个地图元素来说,可以包括多层UI节点,在本申请实施例中仅以该多层UI节点中的根节点为包围框进行计算,以对该地图元素进行绘制,相对于目前一些技术中,需要遍历父节点的计算方式,能够提高计算的灵活性,并且在保证该地图元素的显示效果的同时,大大减小了计算量。2、在计算相交性时采用UI节点的相对坐标实现。3、可以提供特效删除功能,也即是,终端在绘制过程中,可以根据用户的选择,来确定是否在小地图中显示特效,若用户设置在小地图中显示特效,则可以在绘制地图元素时,也进行特效绘制,而当用户设置在小地图中不显示特效,由于事先在代码中已经将特效对应的着色器(shader)信息写入,因此,可以通过对特效所对应的着色器(shader)的控制,来实现特效剔除,也即是,不在小地图上绘制特效。基于上述优化手段对RectMask2D组件进行改进,并将改进后的组件应用于地图绘制,可以在减少drawcall的同时,降低计算量,能够提升整体性能。经过实验证明,基于上述优化,可以使得绘制的消耗减少40%左右,能够大大提升终端的显示性能。
在一种可能实现方式中,还可以对大尺寸地图元素的绘制进行一定优化,例如,对于尺寸大于预设尺寸的地图元素,可以通过新的着色器来以一定透明度作为混合因子,与地图元素中已有颜色值进行混合,得到新的颜色,从而实现较好的显示效果,也可以避免由于原剪裁方式所造成的锯齿显示问题。
本申请实施例提供了的地图实现方案,该地图***功能强大、扩展性强,能提高他人使用效率,并且有很好的性能表现,可应用于各类MOBA游戏以及MMORPG游戏。
上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。
图8是本申请实施例提供的一种地图元素添加装置的结构示意图,参见图8,该装置包括:
元素创建单元801,用于对于待添加的地图元素,基于所述地图层级管理模块中基于所封装的层级名称类、显示跟随类以及天气影响类,创建所述地图元素所属层级的名称、所述地图元素在所述层级的显示跟随信息以及所述地图元素的天气影响信息;
预制体创建单元802,用于在目标文件夹中创建所述地图元素的预制体,所述预制体的名称为所述所属层级的名称和所述地图元素的名称的组合;
代码添加单元803,用于在所述基础地图视图模块中添加用于更新所述地图元素的代码,所述代码用于指示所述地图元素的预制体的存储位置以及所述地图元素在所述层级进行显示时的显示状态信息。
在一种可能实现方式中,所述显示跟随信息用于指示所述地图元素是否随地图进行缩放,所述天气影响信息用于指示所述地图元素是否受虚拟场景中虚拟天气的影响。
在一种可能实现方式中,所述基础地图视图模块包括全局地图基类子模块,所述全局地图基类子模块用于当检测到对所述全局地图的显示状态更新操作时,根据所述显示状态更新操作的操作类型,调用所述全局地图基类子模块中的对应功能;通过所述全局地图基类子模块中的对应功能,更新所述全局地图的显示。
在一种可能实现方式中,所述全局地图基类子模块用于:
当所述显示状态更新操作为缩放操作时,调用所述全局地图基类子模块中的缩放功能;或,
当所述显示状态更新操作为拖动操作时,调用所述全局地图基类子模块中的位置移动功能;或,
当所述显示状态更新操作为自动居中操作时,调用所述全局地图基类子模块中的自动居中功能。
在一种可能实现方式中,所述目标应用程序的变动频繁度大于目标频繁度阈值的显示元素与变动频繁度小于所述目标频繁度阈值的显示元素分别绘制在不同画布中。
在一种可能实现方式中,所述目标应用程序的显示界面的更新间隔时长大于两帧的显示时长。
在一种可能实现方式中,所述目标应用程序在检测到显示元素的显示位置发生变化时执行显示更新。
在一种可能实现方式中,所述目标应用程序将加载次数达到次数阈值的显示元素加载至内存池。
在一种可能实现方式中,所述目标应用程序可以基于着色器进行纹理剪裁来绘制局部地图,在显示所述局部地图时,在所述局部地图上叠加有具有镂空形状的图片。
在一种可能实现方式中,所述目标应用程序的三维引擎中具有基于原生的ScrollRect组件拓展了全局地图的缩放显示、多点触摸以及自动居中功能中至少一种的组件。
上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。
需要说明的是:上述实施例提供的地图元素添加装置在控制互动道具时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将终端的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的地图元素添加装置与地图元素添加方法实施例属于同一构思,其具体实现过程详见地图元素添加方法实施例,这里不再赘述。
图9是本申请实施例提供的一种终端的结构示意图。该终端900可以是:智能手机、平板电脑、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端900还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端900包括有:处理器901和存储器902。
处理器901可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器901可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器901也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器901可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器901还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器902可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器902还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器902中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器901所执行以实现本申请中各个实施例提供的地图元素添加方法。
在一些实施例中,终端900还可选包括有:***设备接口903和至少一个***设备。处理器901、存储器902和***设备接口903之间可以通过总线或信号线相连。各个***设备可以通过总线、信号线或电路板与***设备接口903相连。具体地,***设备包括:射频电路904、触摸显示屏905、摄像头组件906、音频电路907、定位组件908和电源909中的至少一种。
***设备接口903可被用于将I/O(Input/Output,输入/输出)相关的至少一个***设备连接到处理器901和存储器902。在一些实施例中,处理器901、存储器902和***设备接口903被集成在同一芯片或电路板上;在一些其他实施例中,处理器901、存储器902和***设备接口903中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路904用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路904通过电磁信号与通信网络以及其他通信设备进行通信。射频电路904将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路904包括:天线***、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路904可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路904还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏905用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏905是触摸显示屏时,显示屏905还具有采集在显示屏905的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器901进行处理。此时,显示屏905还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏905可以为一个,设置终端900的前面板;在另一些实施例中,显示屏905可以为至少两个,分别设置在终端900的不同表面或呈折叠设计;在再一些实施例中,显示屏905可以是柔性显示屏,设置在终端900的弯曲表面上或折叠面上。甚至,显示屏905还可以设置成非矩形的不规则图形,也即异形屏。显示屏905可以采用LCD(LiquidCrystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件906用于采集图像或视频。可选地,摄像头组件906包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件906还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路907可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器901进行处理,或者输入至射频电路904以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端900的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器901或射频电路904的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路907还可以包括耳机插孔。
定位组件908用于定位终端900的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件908可以是基于美国的GPS(GlobalPositioning System,全球定位***)、中国的北斗***、俄罗斯的格雷纳斯***或欧盟的伽利略***的定位组件。
电源909用于为终端900中的各个组件进行供电。电源909可以是交流电、直流电、一次性电池或可充电电池。当电源909包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端900还包括有一个或多个传感器910。该一个或多个传感器910包括但不限于:加速度传感器911、陀螺仪传感器912、压力传感器913、指纹传感器914、光学传感器915以及接近传感器916。
加速度传感器911可以检测以终端900建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器911可以用于检测重力加速度在三个坐标轴上的分量。处理器901可以根据加速度传感器911采集的重力加速度信号,控制触摸显示屏905以横向视图或纵向视图进行用户界面的显示。加速度传感器911还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器912可以检测终端900的机体方向及转动角度,陀螺仪传感器912可以与加速度传感器911协同采集用户对终端900的3D动作。处理器901根据陀螺仪传感器912采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器913可以设置在终端900的侧边框和/或触摸显示屏905的下层。当压力传感器913设置在终端900的侧边框时,可以检测用户对终端900的握持信号,由处理器901根据压力传感器913采集的握持信号进行左右手识别或快捷操作。当压力传感器913设置在触摸显示屏905的下层时,由处理器901根据用户对触摸显示屏905的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器914用于采集用户的指纹,由处理器901根据指纹传感器914采集到的指纹识别用户的身份,或者,由指纹传感器914根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器901授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器914可以被设置终端900的正面、背面或侧面。当终端900上设置有物理按键或厂商Logo时,指纹传感器914可以与物理按键或厂商Logo集成在一起。
光学传感器915用于采集环境光强度。在一个实施例中,处理器901可以根据光学传感器915采集的环境光强度,控制触摸显示屏905的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏905的显示亮度;当环境光强度较低时,调低触摸显示屏905的显示亮度。在另一个实施例中,处理器901还可以根据光学传感器915采集的环境光强度,动态调整摄像头组件906的拍摄参数。
接近传感器916,也称距离传感器,通常设置在终端900的前面板。接近传感器916用于采集用户与终端900的正面之间的距离。在一个实施例中,当接近传感器916检测到用户与终端900的正面之间的距离逐渐变小时,由处理器901控制触摸显示屏905从亮屏状态切换为息屏状态;当接近传感器916检测到用户与终端900的正面之间的距离逐渐变大时,由处理器901控制触摸显示屏905从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图9中示出的结构并不构成对终端900的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
在示例性实施例中,还提供了一种计算机可读存储介质,例如包括至少一条程序代码的存储器,上述至少一条程序代码可由终端中的处理器执行以完成上述实施例中地图元素添加方法。例如,该计算机可读存储介质可以是ROM(Read-Only Memory,只读存储器)、RAM(Random-Access Memory,随机存取存储器)、CD-ROM(Compact Disc Read-OnlyMemory,只读光盘)、磁带、软盘和光数据存储设备等。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (15)

1.一种地图元素添加方法,其特征在于,应用于目标应用程序的开发终端上,所述目标应用程序包括地图层级管理模块和基础地图视图模块,所述地图层级管理模块定义有层级名称类、显示跟随类以及天气影响类,所述基础地图视图模块定义有全局地图基类和局部地图基类,
所述方法包括:
对于待添加的地图元素,基于所述地图层级管理模块中基于所封装的层级名称类、显示跟随类以及天气影响类,创建所述地图元素所属层级的名称、所述地图元素在所述层级的显示跟随信息以及所述地图元素的天气影响信息;
在目标文件夹中创建所述地图元素的预制体,所述预制体的名称为所述所属层级的名称和所述地图元素的名称的组合;
基于所述基础地图视图模块中的全局地图基类和局部地图基类,添加用于更新所述地图元素的代码,所述代码用于指示所述地图元素的预制体的存储位置以及所述地图元素在所述层级进行显示时的显示状态信息。
2.根据权利要求1所述的方法,其特征在于,所述显示跟随信息用于指示所述地图元素是否随地图进行缩放,所述天气影响信息用于指示所述地图元素是否受虚拟场景中虚拟天气的影响。
3.根据权利要求1所述的方法,其特征在于,所述基础地图视图模块包括全局地图基类子模块,所述全局地图基类子模块用于当检测到对所述全局地图的显示状态更新操作时,根据所述显示状态更新操作的操作类型,调用所述全局地图基类子模块中的对应功能;通过所述全局地图基类子模块中的对应功能,更新所述全局地图的显示。
4.根据权利要求3所述的方法,其特征在于,所述根据所述显示状态更新操作的操作类型,调用所述全局地图基类子模块中的对应功能包括:
当所述显示状态更新操作为缩放操作时,调用所述全局地图基类子模块中的缩放功能;或,
当所述显示状态更新操作为拖动操作时,调用所述全局地图基类子模块中的位置移动功能;或,
当所述显示状态更新操作为自动居中操作时,调用所述全局地图基类子模块中的自动居中功能。
5.根据权利要求1所述的方法,其特征在于,所述目标应用程序的变动频繁度大于目标频繁度阈值的显示元素与变动频繁度小于所述目标频繁度阈值的显示元素分别绘制在不同画布中。
6.根据权利要求1所述的方法,其特征在于,所述目标应用程序的显示界面的更新间隔时长大于两帧的显示时长。
7.根据权利要求1所述的方法,其特征在于,所述目标应用程序在检测到显示元素的显示位置发生变化时执行显示更新。
8.根据权利要求1所述的方法,其特征在于,所述目标应用程序将加载次数达到次数阈值的显示元素加载至内存池。
9.根据权利要求1所述的方法,其特征在于,所述目标应用程序基于着色器进行纹理剪裁来绘制局部地图,在显示所述局部地图时,在所述局部地图上叠加有具有镂空形状的图片。
10.根据权利要求1所述的方法,其特征在于,所述目标应用程序的三维引擎中具有基于原生的ScrollRect组件拓展了全局地图的缩放显示、多点触摸以及自动居中功能中至少一种的组件。
11.一种地图元素添加装置,其特征在于,应用于目标应用程序的开发终端上,所述目标应用程序包括地图层级管理模块和基础地图视图模块,所述地图层级管理模块定义有层级名称类、显示跟随类以及天气影响类,所述基础地图视图模块定义有全局地图基类和局部地图基类,
所述装置包括:
元素创建单元,用于对于待添加的地图元素,基于所述地图层级管理模块中基于所封装的层级名称类、显示跟随类以及天气影响类,创建所述地图元素所属层级的名称、所述地图元素在所述层级的显示跟随信息以及所述地图元素的天气影响信息;
预制体创建单元,用于在目标文件夹中创建所述地图元素的预制体,所述预制体的名称为所述所属层级的名称和所述地图元素的名称的组合;
代码添加单元,用于在所述基础地图视图模块中添加用于更新所述地图元素的代码,所述代码用于指示所述地图元素的预制体的存储位置以及所述地图元素在所述层级进行显示时的显示状态信息。
12.根据权利要求11所述的装置,其特征在于,所述目标应用程序的变动频繁度大于目标频繁度阈值的显示元素与变动频繁度小于所述目标频繁度阈值的显示元素分别绘制在不同画布中。
13.根据权利要求11所述的装置,其特征在于,所述目标应用程序基于着色器进行纹理剪裁来绘制局部地图,在显示所述局部地图时,在所述局部地图上叠加有具有镂空形状的图片。
14.一种终端,其特征在于,所述终端包括一个或多个处理器和一个或多个存储器,所述一个或多个存储器中存储有至少一条程序代码,所述至少一条程序代码由所述一个或多个处理器加载并执行以实现如权利要求1至权利要求10任一项所述的地图元素添加方法所执行的操作。
15.一种存储介质,其特征在于,所述存储介质中存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行以实现如权利要求1至权利要求10任一项所述的地图元素添加方法所执行的操作。
CN202010053597.1A 2020-01-17 2020-01-17 地图元素添加方法、装置、终端及存储介质 Pending CN113134235A (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN202010053597.1A CN113134235A (zh) 2020-01-17 2020-01-17 地图元素添加方法、装置、终端及存储介质
PCT/CN2020/123763 WO2021143262A1 (zh) 2020-01-17 2020-10-26 地图元素添加方法、装置、终端及存储介质
EP20914042.5A EP4006845A4 (en) 2020-01-17 2020-10-26 PROCEDURE FOR ADDING MAP ITEMS, DEVICE, TERMINAL AND STORAGE MEDIA
US17/668,895 US11983840B2 (en) 2020-01-17 2022-02-10 Method and apparatus for adding map element, terminal, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010053597.1A CN113134235A (zh) 2020-01-17 2020-01-17 地图元素添加方法、装置、终端及存储介质

Publications (1)

Publication Number Publication Date
CN113134235A true CN113134235A (zh) 2021-07-20

Family

ID=76808310

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010053597.1A Pending CN113134235A (zh) 2020-01-17 2020-01-17 地图元素添加方法、装置、终端及存储介质

Country Status (4)

Country Link
US (1) US11983840B2 (zh)
EP (1) EP4006845A4 (zh)
CN (1) CN113134235A (zh)
WO (1) WO2021143262A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115738249A (zh) * 2022-11-15 2023-03-07 网易(杭州)网络有限公司 游戏角色的三维模型的展示方法、装置和电子装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101571403A (zh) * 2009-06-03 2009-11-04 深圳市凯立德计算机***技术有限公司 一种电子地图构建方法和电子地图构建***
US8319772B2 (en) * 2010-07-23 2012-11-27 Microsoft Corporation 3D layering of map metadata
US9147286B2 (en) * 2012-06-06 2015-09-29 Apple Inc. Non-static 3D map views
CN105957144A (zh) * 2016-04-25 2016-09-21 上海梦然网络科技有限公司 三维游戏地图的呈现方法及其呈现***
CN106730827B (zh) * 2016-12-06 2018-10-19 腾讯科技(深圳)有限公司 一种对象显示的方法以及终端设备
CN109745705B (zh) * 2018-12-29 2020-04-17 苏州玩友时代科技股份有限公司 2d游戏地图编辑方法及装置
CN110047123B (zh) * 2019-04-12 2023-01-10 腾讯大地通途(北京)科技有限公司 一种地图渲染方法、装置、存储介质及计算机程序产品

Also Published As

Publication number Publication date
WO2021143262A1 (zh) 2021-07-22
EP4006845A1 (en) 2022-06-01
EP4006845A4 (en) 2022-11-16
US11983840B2 (en) 2024-05-14
US20220161137A1 (en) 2022-05-26

Similar Documents

Publication Publication Date Title
CN110147231B (zh) 组合特效生成方法、装置及存储介质
CN111589128B (zh) 基于虚拟场景的操作控件显示方法及装置
CN111701238A (zh) 虚拟画卷的显示方法、装置、设备及存储介质
CN111603771B (zh) 动画生成方法、装置、设备及介质
CN112156464B (zh) 虚拟对象的二维形象展示方法、装置、设备及存储介质
CN108664231B (zh) 2.5维虚拟环境的显示方法、装置、设备及存储介质
CN111596838B (zh) 业务处理方法、装置、计算机设备及计算机可读存储介质
CN111026318B (zh) 基于虚拟环境的动画播放方法、装置、设备及存储介质
CN111325822B (zh) 热点图的显示方法、装置、设备及可读存储介质
CN110496392B (zh) 虚拟对象的控制方法、装置、终端及存储介质
CN111672106B (zh) 虚拟场景显示方法、装置、计算机设备及存储介质
CN111273780B (zh) 基于虚拟环境的动画播放方法、装置、设备及存储介质
CN113398572B (zh) 虚拟道具切换方法、技能切换方法、虚拟对象切换方法
CN113577765B (zh) 用户界面的显示方法、装置、设备及存储介质
CN111603770A (zh) 虚拟环境画面的显示方法、装置、设备及介质
CN112843679A (zh) 虚拟对象的技能释放方法、装置、设备及介质
CN111589141A (zh) 虚拟环境画面的显示方法、装置、设备及介质
CN111760281A (zh) 过场动画播放方法、装置、计算机设备及存储介质
JP7483056B2 (ja) 選択ターゲットの決定方法、装置、機器、及びコンピュータプログラム
CN113599819A (zh) 提示信息的显示方法、装置、设备及存储介质
US11983840B2 (en) Method and apparatus for adding map element, terminal, and storage medium
CN111589117A (zh) 显示功能选项的方法、装置、终端及存储介质
CN112717393B (zh) 虚拟场景中的虚拟物件显示方法、装置、设备及存储介质
CN111921191A (zh) 状态图标的显示方法、装置、终端及存储介质
CN113144595A (zh) 虚拟道路的生成方法、装置、终端及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40048367

Country of ref document: HK

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination