CN116672720A - 游戏场景中的组件生成方法、装置、存储介质与电子设备 - Google Patents
游戏场景中的组件生成方法、装置、存储介质与电子设备 Download PDFInfo
- Publication number
- CN116672720A CN116672720A CN202310718159.6A CN202310718159A CN116672720A CN 116672720 A CN116672720 A CN 116672720A CN 202310718159 A CN202310718159 A CN 202310718159A CN 116672720 A CN116672720 A CN 116672720A
- Authority
- CN
- China
- Prior art keywords
- scene
- component
- image
- scene component
- game
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 92
- 230000004044 response Effects 0.000 claims abstract description 27
- 230000008676 import Effects 0.000 claims abstract description 26
- 238000005070 sampling Methods 0.000 claims description 47
- 238000013139 quantization Methods 0.000 claims description 43
- 239000003086 colorant Substances 0.000 claims description 40
- 230000008569 process Effects 0.000 claims description 26
- 238000013507 mapping Methods 0.000 claims description 18
- 238000012545 processing Methods 0.000 claims description 13
- 230000003287 optical effect Effects 0.000 claims description 12
- 230000000007 visual effect Effects 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 15
- 238000009877 rendering Methods 0.000 description 6
- 230000000712 assembly Effects 0.000 description 5
- 238000000429 assembly Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000002829 reductive effect Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000036961 partial effect Effects 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 238000003825 pressing Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000001747 exhibiting effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000877 morphologic effect Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating 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
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating 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
- A63F13/65—Generating 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 automatically by game devices or servers from real world data, e.g. measurement in live racing competition
- A63F13/655—Generating 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 automatically by game devices or servers from real world data, e.g. measurement in live racing competition by importing photos, e.g. of the player
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/0482—Interaction with lists of selectable items, e.g. menus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04845—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04847—Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/36—Software reuse
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/60—Methods for processing data by generating or executing the game program
- A63F2300/6009—Methods for processing data by generating or executing the game program for importing or creating game content, e.g. authoring tools during game development, adapting content to different platforms, use of a scripting language to create content
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/60—Methods for processing data by generating or executing the game program
- A63F2300/69—Involving elements of the real world in the game world, e.g. measurement in live races, real video
- A63F2300/695—Imported photos, e.g. of the player
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Processing Or Creating Images (AREA)
Abstract
本公开提供一种游戏场景中的组件生成方法、装置、存储介质与电子设备,涉及计算机图形技术领域。该方法包括:显示运行游戏程序所提供的图形用户界面,在图形用户界面中显示待编辑的游戏编辑场景以及多个场景组件选择控件,用于响应并根据操作指令在游戏编辑场景中生成场景组件;在图形用户界面中提供一图像导入入口,并接受基于图像导入入口导入的初始图像;将初始图像划分为多个图像区域,确定图像区域对应的场景组件和场景组件的信息;根据图像区域对应的场景组件的信息,在游戏编辑场景中生成图像区域对应的场景组件,形成与初始图像对应的场景组件组合。本公开实现了通过导入图像在游戏场景中生成对应的场景组件组合,提高了组件生成效率。
Description
技术领域
本公开涉及计算机图形技术领域,尤其涉及一种游戏场景中的组件生成方法、游戏场景中的组件生成装置、计算机可读存储介质与电子设备。
背景技术
游戏场景通常由一定数量的组件(或模型)组成,每一个组件可能是游戏场景中的一个物或人。对游戏场景中的物或人进行建模与编辑,是建立游戏场景的主要工作之一。
目前,游戏场景中的建模与编辑主要依赖于相关人员的手动操作来完成。例如,单个组件的生成过程一般包括:手动编辑外形,并调整大小、位置,渲染颜色、纹理等,最终生成所需的组件。这样的方式耗费较高的人力与时间成本,效率低下。
发明内容
本公开提供一种游戏场景中的组件生成方法、游戏场景中的组件生成装置、计算机可读存储介质与电子设备,以至少在一定程度上解决相关技术中组件生成效率低下的问题。
根据本公开的第一方面,提供一种游戏场景中的组件生成方法,所述方法包括:显示运行游戏程序所提供的图形用户界面,在所述图形用户界面中显示待编辑的游戏编辑场景以及多个场景组件选择控件,所述场景组件选择控件用于响应并根据操作指令在所述游戏编辑场景中生成对应场景组件;在所述图形用户界面中提供一图像导入入口,并接受基于所述图像导入入口导入的初始图像;将所述初始图像划分为多个图像区域,确定图像区域对应的场景组件和所述场景组件的信息;根据所述图像区域对应的场景组件的信息,在所述游戏编辑场景中生成所述图像区域对应的场景组件,形成与所述初始图像对应的场景组件组合。
根据本公开的第二方面,提供一种游戏场景中的组件生成装置,所述装置包括:图形用户界面处理模块,被配置为显示运行游戏程序所提供的图形用户界面,在所述图形用户界面中显示待编辑的游戏编辑场景以及多个场景组件选择控件,所述场景组件选择控件用于响应并根据操作指令在所述游戏编辑场景中生成对应场景组件;信息获取模块,被配置为在所述图形用户界面中提供一图像导入入口,并接受基于所述图像导入入口导入的初始图像;场景组件确定模块,被配置为将所述初始图像划分为多个图像区域,确定图像区域对应的场景组件和所述场景组件的信息;组件生成模块,被配置为根据所述图像区域对应的场景组件的信息,在所述游戏编辑场景中生成所述图像区域对应的场景组件,形成与所述初始图像对应的场景组件组合。
根据本公开的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面的游戏场景中的组件生成方法及其可能的实现方式。
根据本公开的第四方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令,来执行上述第一方面的游戏场景中的组件生成方法及其可能的实现方式。
本公开的技术方案具有以下有益效果:
一方面,提供了一种通过导入图像对应生成场景组件组合(即虚拟模型)的方案,根据所导入的初始图像中的图像区域确定对应的场景组件和场景组件的信息,进而自动生成场景组件并形成场景组件组合,无需用户进行手动操作编辑,极大地降低了人力与时间成本,提高了组件生成效率。另一方面,用户可以根据自身的需求与偏好导入初始图像,最终生成对应图案的场景组件组合,即所生成的场景组件组合用于呈现所导入的初始图像,由此得到游戏场景中的图片墙、像素图像等形式的虚拟模型,能够丰富游戏场景,并满足用户的个性化需求。
附图说明
图1示出本示例性实施方式中游戏编辑场景与场景组件选择控件的示意图;
图2示出本示例性实施方式中设置游戏编辑场景的视角的示意图;
图3A示出本示例性实施方式中上帝视角的示意图;
图3B示出本示例性实施方式中游戏视角的示意图;
图4示出本示例性实施方式中一种游戏场景中的组件生成方法的流程图;
图5示出本示例性实施方式中导入初始图像的示意图;
图6示出本示例性实施方式中确定场景组件和场景组件的信息的流程图;
图7示出本示例性实施方式中生成队列的示意图;
图8示出本示例性实施方式中已生成部分场景组件的示意图;
图9示出本示例性实施方式中已生成全部场景组件的示意图;
图10示出本示例性实施方式中对场景组件组合进行移动的示意图;
图11示出本示例性实施方式中对场景组件组合进行缩放的示意图;
图12示出本示例性实施方式中对场景组件组合进行旋转的示意图;
图13示出本示例性实施方式运行环境的系统架构图;
图14示出本示例性实施方式中一种游戏场景中的组件生成装置的结构示意图;
图15示出本示例性实施方式中一种电子设备的结构示意图。
具体实施方式
下文将结合附图更全面地描述本公开的示例性实施方式。
附图为本公开的示意性图解,并非一定是按比例绘制。附图中所示的一些方框图可能是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在硬件模块或集成电路中实现这些功能实体,或在网络、处理器或微控制器中实现这些功能实体。实施方式能够以多种形式实施,不应被理解为限于在此阐述的范例。本公开所描述的特征、结构或特性可以以任何合适的方式结合在一个或多个实施方式中。在下文的描述中,提供许多具体细节从而给出对本公开实施方式的充分说明。然而,本领域技术人员应意识到,可以在实现本公开的技术方案时省略其中的一个或多个特定细节,或者可以采用其它的方法、组元、装置、步骤等替代一个或多个特定细节。
在游戏场景中设置多样化的组件,能够丰富游戏场景,提高玩家的游戏体验。其中,图片墙是一种可呈现图像内容的组件。相关技术中,将原图片直接放置在游戏场景中墙体组件的墙面上,当玩家在游戏中的视角对准墙面时,可以看到原图片,由此将墙体组件实现为图片墙。然而,若图片与游戏场景的风格不协调,如图片为真实世界中拍摄的照片,游戏场景为动画风格,则这样的图片墙会造成玩家视觉上的突兀感,即图片墙看上去不像是游戏场景的一部分。
为了建立与游戏场景风格协调的图片墙,可能需要相关人员利用游戏场景中的元素手动对图片墙的每个部分进行编辑、调色与拼接等操作,由于图片内容通常较为复杂,若想要在图片墙中呈现或近似呈现图片内容,会耗费大量的时间。并且每次想要对新图片生成图片墙时,仍然需要手动进行上述操作,效率低下。
鉴于上述问题,本公开的示例性实施方式提供一种游戏场景中的组件生成方法,能够提高图片墙等组件的生成效率。
本示例性实施方式中,可以通过终端设备显示图形用户界面,终端设备可以是手机、个人电脑、平板电脑、智能穿戴设备、游戏机等,其具有显示功能,可显示图形用户界面。图形用户界面可以包括终端设备运行操作系统的画面,如桌面、系统设置界面、应用程序界面等。当终端设备运行游戏程序时,图形用户界面中可以显示运行游戏程序提供的游戏编辑场景。该游戏程序可以是游戏主程序,游戏主程序中提供游戏场景编辑功能(如游戏程序内置有游戏编辑器),用户使用该功能时,可以进入游戏编辑场景中。或者,该游戏程序也可以是游戏主程序关联的游戏场景编辑程序,如不依赖于游戏主程序而可以独立运行的游戏编辑器。用户可以选择新建一个游戏场景并进行编辑,也可以选择对已有的游戏场景进行编辑。当用户使用游戏程序进行游戏场景编辑时,参考图1所示,图像用户界面中可以显示待编辑的游戏编辑场景以及多个场景组件选择控件。游戏编辑场景可以包括场景的背景和已生成的组件。场景组件选择控件可以包括“方块组件”、“圆柱组件”、“半圆柱组件”等的控件,当用户使用这些控件进行操作时,如用户点击“方块组件”控件,可以在游戏编辑场景中生成对应的方块组件。
本示例性实施方式支持玩家自定义编辑场景,因此,本文中的用户可以指游戏厂商的游戏制作人员(如美术人员),也可以指玩家。
在一种实施方式中,游戏编辑场景中可以设置有虚拟摄像机。虚拟摄像机是游戏程序中模拟真实摄像机,以拍摄游戏场景画面的工具,其可以设置于游戏编辑场景中的任何位置,以任何视角拍摄游戏场景,即虚拟摄像机在游戏场景中可以具有任意位姿,其位姿可以是固定的,也可以是动态变化的。并且,游戏编辑场景中可以设置任意数量的虚拟摄像机,不同的虚拟摄像机可以拍摄出不同的游戏场景画面。
参考图2所示,游戏编辑场景可以呈现两种不同的视角,分别为上帝视角和游戏视角。上帝视角是指以第三人称的视角观察游戏编辑场景,参考图3A所示,在上帝视角下,用户在游戏编辑场景中可以不操控游戏角色,而是直接操控虚拟摄像机以移动视角。游戏视角是指以第一人称的视角观察游戏编辑场景,参考图3B所示,在游戏视角下,用户在游戏编辑场景中可以操控某个游戏角色,该游戏角色可以绑定虚拟摄像机,即该游戏角色与虚拟摄像机的位置关系固定,例如该游戏角色可以位于虚拟摄像机的焦点处,用户操控游戏角色移动时,虚拟摄像机同步移动,由此移动视角。在上帝视角或游戏视角下,游戏编辑场景中可以设置虚拟摇杆、上移或下移的控件等,用户可以通过操作这些控件来移动虚拟摄像机或移动游戏角色。
游戏程序提供多个不同的场景组件,如可以以图1中的场景组件选择控件的方式示出。场景组件是组成游戏场景的虚拟模型,可以是物、人或局部的物或人。游戏程序提供的场景组件可以包括基础场景组件和基础场景组件组合。基础场景组件是指不可分割的场景组件,可视为组成游戏场景的最小单位。例如,在三维游戏场景中,基础场景组件可以包括方块组件、长方体组件、圆柱组件、球体组件等。用户对基础场景组件进行编辑时,会改变整个基础场景组件的信息,而无法仅改变基础场景组件的局部信息。基础场景组件组合是由多个基础场景组件组成的场景组件。例如,可以将方块组件或长方体组件组合到圆柱组件的圆面上,组成一个滚轮形式的场景机关,该场景机关为基础场景组件组合。
在一种实施方式中,游戏程序可以自带多个不同的场景组件,可以是美术人员预先配置并存储在游戏程序中的,使得玩家可以方便地使用这些场景组件进行场景编辑。
在一种实施方式中,可以由玩家预先配置场景组件,玩家可以通过在游戏编辑场景或其他编辑界面中进行建模,得到游戏程序中原本没有的场景组件。玩家配置的场景组件可以包括基础场景组件和基础场景组件组合。例如,若玩家在配置某个场景组件时,将其设置为一个不可分割的整体,则该场景组件为基础场景组件,否则为基础场景组件组合。玩家配置的场景组件可以仅供本人使用,也可以分享给其他玩家使用。
预先配置场景组件时,可以对场景组件的尺寸、位置、方向、颜色、纹理、形态等的一种或多种信息进行配置。这样当用户在游戏编辑场景中使用这些场景组件时,可以直接调用已配置的信息,非常方便与高效。当然,用户也可以对场景组件中的已配置的信息进行调整,如调整上述一种或多种信息,使其更符合自己的需求与偏好。
图4示出了游戏场景中的组件生成方法的示例性流程,可以包括以下步骤S410至S440:
步骤S410,显示运行游戏程序所提供的图形用户界面,在图形用户界面中显示待编辑的游戏编辑场景以及多个场景组件选择控件,场景组件选择控件用于响应并根据操作指令在游戏编辑场景中生成对应场景组件;
步骤S420,在图形用户界面中提供一图像导入入口,并接受基于图像导入入口导入的初始图像;
步骤S430,将初始图像划分为多个图像区域,确定图像区域对应的场景组件和场景组件的信息;
步骤S440,根据图像区域对应的场景组件的信息,在游戏编辑场景中生成图像区域对应的场景组件,形成与初始图像对应的场景组件组合。
其中,场景组件组合是由多个场景组件形成的组合式虚拟模型,可以将场景组件组合本身看作为一个模型。场景组件组合是游戏场景中用于呈现初始图像的虚拟模型。本文中,呈现初始图像(或采样图像、目标图像等其他图像)可以是完全呈现初始图像,也可以是近似呈现初始图像,近似呈现可以指呈现初始图像模糊化后的图案。场景组件组合与初始图像具有对应关系,该对应关系体现为两者在图案上相同或相似,也体现为场景组件组合是响应于导入初始图像的指令而最终生成的组件。
场景组件组合具有至少一个可呈现初始图像的面。在一种实施方式中,场景组件组合可以是墙体或类墙体的模型,如可以是图片墙、像素图像等形式。本公开对场景组件组合的外形不做具体限定。示例性的,场景组件组合的用于呈现初始图像的面可以是平整平面,如场景组件组合可以是长方体,其表面积最大的两个面可用于呈现初始图像。或者,场景组件组合的用于呈现初始图像的面可以是非平整面,如场景组件组合中的各个场景组件在该面的法线轴上的坐标不完全相同,呈现出各个场景组件该面上有一定起伏的效果,这样能够营造出视觉上的立体感。
基于图4的方法,一方面,提供了一种通过导入图像对应生成场景组件组合(即虚拟模型)的方案,根据所导入的初始图像中的图像区域确定对应的场景组件和场景组件的信息,进而自动生成场景组件并形成场景组件组合,无需用户进行手动操作编辑,极大地降低了人力与时间成本,提高了组件生成效率。另一方面,用户可以根据自身的需求与偏好导入初始图像,最终生成对应图案的场景组件组合,即所生成的场景组件组合用于呈现所导入的初始图像,由此得到游戏场景中的图片墙、像素图像等形式的虚拟模型,能够丰富游戏场景,并满足用户的个性化需求。
下面对图4中的每个步骤进行具体说明。
参考图4,在步骤S410中,显示运行游戏程序所提供的图形用户界面,在图形用户界面中显示待编辑的游戏编辑场景以及多个场景组件选择控件,场景组件选择控件用于响应并根据操作指令在游戏编辑场景中生成对应场景组件。
其中,待编辑的游戏编辑场景可以新建的游戏编辑场景,也可以已存储的游戏编辑场景。场景组件选择控件可以如图1所示,但不限于图1所示的场景组件类型。当用户对场景组件选择控件进行操作时,可以在游戏编辑场景中生成对应场景组件。如在图1中,用户可以按住“方块组件”控件,将其拖动到游戏编辑场景中,可以在游戏编辑场景中生成对应的方块组件。然后,用户还可以对方块组件的尺寸、位置、方向、颜色、纹理、形态等进行编辑与调整。
继续参考图4,在步骤S420中,在图形用户界面中提供一图像导入入口,并接受基于图像导入入口导入的初始图像。
其中,图像导入入口可以在相关的游戏编辑界面中提供。例如,在游戏编辑场景中,可以选择生成器的选项,以触发打开生成器界面,该界面可以参考图5所示,其中提供有图像导入入口。用户可以基于图像导入入口选择初始图像,导入到当前的待编辑游戏场景中。或者,用户可以在未打开游戏编辑场景的情况下,通过游戏程序的其他界面中提供的图像导入入口导入初始图像,在导入时可以选择游戏场景,游戏程序还可以打开游戏编辑场景并加载用户选择的游戏场景。或者,可以由游戏程序自动选择初始图像,导入到游戏编辑场景中。
初始图像用于为最终生成的场景组件组合提供图案信息,使得场景组件组合能够呈现初始图像。初始图像可以是导入的原始图像,也可以是原始图像经过处理后的图像,如可以将原始图像处理为规定的尺寸,得到初始图像。本公开对初始图像的来源、格式、内容等不做限定。例如,初始图像可以来源于终端设备的相册,也可以来源于互联网。用户可以根据自己的需求与偏好,选择任意内容的初始图像。
在一种实施方式中,用户导入初始图像后,服务器可以对初始图像进行审核,以确保初始图像的内容符合相关要求。
继续参考图4,在步骤S430中,将初始图像划分为多个图像区域,确定图像区域对应的场景组件和场景组件的信息。
在游戏编辑场景中,以场景组件来代表初始图像的图像区域,从而以场景组件组合的形式对整张初始图像建模。在生成场景组件前,可以先划分图像区域,并确定图像区域对应的场景组件和场景组件的信息。
在划分图像区域时,可以将相邻、颜色相同或相近的像素点划分到一个图像区域内,即每个图像区域呈现出单色或单色系,这样便于为每个图像区域对应的场景组件确定颜色或纹理等信息。或者,也可以根据预先设置的图像区域的尺寸、数量、形状等信息来划分图像区域。
在得到图像区域后,可以确定每个图像区域对应哪个场景组件。示例性的,可以根据图像区域的形状,若图像区域为正方形,则确定图像区域对应的场景组件为方块组件,若图像区域为长方形,则确定图像区域对应的场景组件为长方体组件。进而,可以确定每个图像区域对应的场景组件的信息,包括但不限于尺寸、位置、方向、颜色、纹理、形态等,使得后续基于该信息生成的场景组件能够呈现出图像区域的外观或形态效果。示例性的,可以根据图像区域的尺寸确定图像区域对应的场景组件的尺寸,如可以预先建立图像区域的尺寸与场景组件的尺寸间的映射关系,由该映射关系计算出图像区域的尺寸所对应的场景组件的尺寸。可以根据图像区域在初始图像中的位置确定图像区域对应的场景组件的位置。可以根据图像区域的颜色或纹理确定图像区域对应的场景组件的颜色或纹理,如可以从图像区域的颜色中提取一种主色(可以是图像区域中的所有像素点颜色值计算出的平均色),将该主色作为场景组件的颜色,或者从图像区域提取纹理特征,根据该纹理特征生成场景组件的纹理。
在一种实施方式中,组件生成方法还可以包括以下步骤:
获取场景组件组合的资源量化参数。
其中,资源量化参数表征场景组件组合所使用到的游戏资源的多少,可以通过游戏资源数量进行量化,也可以通过游戏资源的数据量、内存量等进行量化。资源量化参数可以是确切的数值,也可以是数值范围。若资源量化参数是数值范围,则表示场景组件组合所使用到的游戏资源的量化值应当处于该数值范围内。示例性的,资源量化参数可以包括场景组件组合的场景组件数量,其可以是数量值或数量范围,表示场景组件组合所包含的场景组件的数量或数量范围。用户可以为场景组件组合设置资源量化参数,参考上述图5所示,可以设置场景组件组合的场景组件数量最大值(即图5中的最大占用值)为3425,表示场景组件组合所包含的场景组件的数量不超过3425。或者,用户可以为当前的待编辑游戏场景设置资源量化参数,表示该游戏场景所使用到的游戏资源的多少,进而可以根据游戏场景的资源量化参数确定场景组件组合的资源量化参数,如可以将游戏场景的资源量化参数减去已生成的其他模型的资源量化参数,得到场景组件组合的资源量化参数,也可以将游戏场景的资源量化参数乘以一定的比例(表示为场景组件组合分配的资源比例),得到场景组件组合的资源量化参数。当然,也可以由游戏程序自动确定场景组件组合的资源量化参数,如根据用户的权限、游戏程度的缓存数据量、终端设备的资源情况(如内存剩余量)等计算场景组件组合的资源量化参数,或先计算游戏场景的资源量化参数,再由游戏场景的资源量化参数计算场景组件组合的资源量化参数。
一般的,资源量化参数越大,表示允许场景组件组合使用越多的游戏资源,即允许场景组件组合包含越多的场景组件,使得场景组件组合越精细,这样在将初始图像划分图像区域时,可以划分地越精细,图像区域的数量越多。由此,在一种实施方式中,可以基于资源量化参数确定图像区域的数量,进而根据图像区域的数量将初始图像划分为多个图像区域。
在一种实施方式中,参考图6所示,上述将初始图像划分为多个图像区域,确定图像区域对应的场景组件和场景组件的信息,可以包括以下步骤S610和S620:
步骤S610,基于资源量化参数对初始图像进行采样,并基于采样结果得到目标图像;
步骤S620,以目标图像的像素点作为一个图像区域,确定图像区域对应的场景组件和场景组件的信息。
其中,对初始图像进行采样可以是下采样或上采样。若设置相对较大的资源量化参数,其对应的场景组件组合的精细度超过初始图像,则可以对初始图像上采样。若设置相对较小的资源量化参数,其对应的场景组件组合的精细度小于初始图像,则可以对初始图像下采样。根据资源量化参数可以确定图像区域的数量,即确定采样后的像素数量。
在一种实施方式中,场景组件组合的资源量化参数包括场景组件组合的场景组件数量,该场景组件数量可以是确切的数量值。上述基于资源量化参数对初始图像进行采样,并基于采样结果得到目标图像,可以包括以下步骤:
以场景组件组合的场景组件数量作为采样后的像素数量,对初始图像进行采样,并基于采样结果得到目标图像。
其中,采样后的像素数量可以等同于图像区域的数量,将预先设置的场景组件数量作为采样后的像素数量,使得图像区域的数量等于该场景组件数量,由此准确控制场景组件组合中的场景组件数量。
在对初始图像采样后,得到的采样结果为采样图像。若为上采样,则采样图像相较于初始图像更加精细。若为下采样,则采样图像相较于初始图像更加模糊。可以进一步对采样图像进行预处理,如对颜色进行优化或简化等,得到目标图像。也可以将采样图像直接作为目标图像。
目标图像的每个像素点均可以作为一个图像区域,相当于通过采样的方式对初始图像进行了图像区域的划分,划分方式简单、高效。进而,可以根据目标图像的每个像素点的信息确定对应的场景组件以及场景组件的信息。
在一种实施方式中,上述以目标图像的像素点作为一个图像区域,确定图像区域对应的场景组件和场景组件的信息,可以包括以下步骤:
根据目标图像的像素数量和场景组件的初始尺寸,确定场景组件组合的初始尺寸;
若场景组件组合的初始尺寸处于预设尺寸范围内,则保持场景组件的初始尺寸不变;
若场景组件组合的初始尺寸超出预设尺寸范围,则对场景组件的初始尺寸进行调整,使得在调整初始尺寸后场景组件组合的初始尺寸处于预设尺寸范围内。
其中,场景组件具有初始尺寸,可以是游戏程序预先配置的默认尺寸,若不对场景组件的尺寸进行设置或调整,则默认使用该初始尺寸,即在游戏编辑场景中生成场景组件时,场景组件的尺寸等于该初始尺寸。目标图像的像素数量即场景组件组合中的场景组件数量,将该数量乘以场景组件的初始尺寸,可以计算出采用场景组件的初始尺寸形成的场景组件组合的尺寸,记为场景组件组合的初始尺寸。需要说明的是,由于此时尚未生成场景组件与场景组件组合,这里计算的场景组件组合的初始尺寸是一种预计的尺寸。
预设尺寸范围是针对场景组件组合设置的允许的尺寸范围,可以避免场景组件组合过大或过小。用户可以预先设置预设尺寸范围,或者游戏程序可以自动设置预设尺寸范围,如可以根据场景组件组合的类型确定对应的预设尺寸范围,或者根据游戏场景的大小确定场景组件组合的预设尺寸范围。示例性的,可以针对场景组件组合的宽度和高度设置预设尺寸范围为:0~20米,即场景组件组合的宽度和高度均不能超过20米。若场景组件组合的初始尺寸处于预设尺寸范围内,则可以保持场景组件的初始尺寸不变。若场景组件组合的初始尺寸超出预设尺寸范围,则对场景组件的初始尺寸进行调整,如场景组件组合的初始尺寸过大,则下调场景组件的初始尺寸,场景组件组合的初始尺寸过小,则上调场景组件的初始尺寸。在调整初始尺寸后,可以再次计算场景组件组合的初始尺寸,以保证其处于预设尺寸范围内。由此,为场景组件快速、准确地确定尺寸信息,初始尺寸或调整后的尺寸可以作为后续生成的场景组件的尺寸,无需用户每次手动设置尺寸。并且,通过调整初始尺寸的机制,能够保证后续生成的场景组件组合的尺寸处于预设尺寸范围内,由此将场景组件组合的尺寸控制在合适的水平。
在一种实施方式中,组件生成方法还可以包括以下步骤:
获取场景组件组合的目标颜色数量。
其中,目标颜色数量表示场景组件组合具有多少种颜色。由此可以控制场景组件组合的颜色,避免其颜色过于复杂或过于简单。
用户可以为场景组件组合设置目标颜色数量,参考上述图5所示,用户可以在导入初始图像时一并设置目标颜色数量,如设为12,表示场景组件组合具有不超过12种颜色。或者,游戏程序可以自动设置目标颜色数量,如根据用户的权限、游戏场景的资源、精细度等自动为场景组件组合设置合适的目标颜色数量。
在一种实施方式中,上述基于资源量化参数对初始图像进行采样,并基于采样结果得到目标图像,可以包括以下步骤:
基于资源量化参数对初始图像进行采样,得到采样图像;
基于目标颜色数量对采样图像的像素点颜色值进行颜色映射,得到目标图像。
其中,采样图像的颜色数量通常不等于为场景组件组合设置的目标颜色数量,例如,采样图像的颜色分布可能较为复杂,而场景组件组合能够近似呈现采样图像或初始图像即可,其颜色不需要那么复杂,因此目标颜色数量通常少于采样图像的颜色数量。通过对采样图像的像素点颜色值进行颜色映射,可以增加或减少采样图像的颜色数量,使其等于目标颜色数量。
本公开对颜色映射的具体方式不做限定,下面通过两种具体方式进行示例性说明:
方式一:通过对像素点颜色值进行聚类以实现颜色映射。具体地,上述基于目标颜色数量对采样图像的像素点颜色值进行颜色映射,得到目标图像,可以包括以下步骤:
基于目标颜色数量对采样图像的像素点颜色值进行聚类,得到多个颜色类别,颜色类别的数量等于目标颜色数量;
将颜色类别中的像素点颜色值映射为与颜色类别最接近的预设颜色。
其中,预设颜色可以是游戏程序提供的场景组件的可选颜色。例如,游戏程序可以为场景组件提供一组可选颜色,如可以是12或24个色相的主色,作为预设颜色,当确定或编辑场景组件的颜色时,需要在预设颜色中选择。这样场景组件不会出现预设颜色以外的颜色,有利于简化游戏场景的复杂度与资源量,进一步提高组件生成效率。
举例来说,若目标颜色数量为12,则可以将采样图像的像素点颜色值聚类为12个颜色类别,如可以采用K均值(K-Means)算法,以K为12进行聚类。然后在预设颜色中确定每个颜色类别最接近的预设颜色,如可以是与颜色类别的聚类中心颜色距离最小的预设颜色。最后将每个颜色类别中的像素点颜色值映射为与该颜色类别最接近的预设颜色。颜色类别的聚类中心颜色可以是颜色类别的中心颜色(如颜色空间上的中心点颜色),也可以是对颜色类别中的像素点颜色值进行加权(如可以根据像素点颜色值的像素点数量确定权重,利用权重对像素点颜色值加权)所计算出的聚类中心颜色。
方式二:在全部预设颜色中确定与采样图像的颜色分布相匹配的目标颜色数量的预设颜色,将采样图像的像素点颜色值映射至其中最接近的预设颜色。
举例来说,可以预先根据全部预设颜色将颜色空间划分为多个颜色区间,每个预设颜色对应一个颜色区间,如预设颜色可以是颜色区间的中心颜色。统计采样图像的颜色分布,将每个像素点划分到所属的颜色区间内,确定每个颜色区间内的像素点数量。若目标颜色数量为12,则选取像素点数量最多的12个颜色区间内的预设颜色,由此确定了12个预设颜色。将采样图像的每个像素点颜色值映射至12个预设颜色中与其最接近的预设颜色。
颜色映射能够实现由采样图像的颜色到场景组件的颜色之间的转换。进一步的,在一种实施方式中,上述确定图像区域对应的场景组件和场景组件的信息,可以包括以下步骤:
将目标图像的像素点的颜色值作为像素点对应的场景组件的颜色值。
其中,由于目标图像的每个像素点的颜色值已经是场景组件可选的预设颜色,可以直接将每个像素点的颜色值作为每个像素点对应的场景组件的颜色值,而无需对场景组件的颜色值做进一步处理,处理过程较为方便、高效。由此保证了目标图像的颜色、场景组件的颜色与游戏场景本身的颜色风格相协调。
在一种实施方式中,上述多个场景组件选择控件中包括第一场景组件选择控件和第二场景组件选择控件,第二场景组件选择控件对应的第二场景组件的形状与通过预设数量的第一场景组件选择控件对应的第一场景组件拼接成的组件的形状相对应。例如,第一场景组件可以是方块组件或长方体组件,方块组件的形状为立方体,长方体组件的形状为长方体。第二场景组件可以是长方体组件、阶梯形组件、十字组件等,其形状可以是长方体、阶梯形、十字形等,这些形状均可以由多个立方体或长方体拼接而成。上述像素点对应的场景组件可以是第一场景组件。上述确定图像区域对应的场景组件和场景组件的信息,还可以包括以下步骤:
在确定像素点对应的第一场景组件的颜色值后,若存在多个相邻、且颜色值相同的第一场景组件,则将该多个相邻、且颜色值相同的第一场景组件合并为第二场景组件。
举例来说,第一场景组件为方块组件,第二场景组件为长方体组件。多个颜色值相同的方块组件对应于目标图像中的同一行或同一列中的相邻位置,则可以将这些方块组件合并为长方体组件,长方体组件的颜色值与方块组件的颜色值相同。这样能够减少场景组件的数量,有利于简化场景组件组合的生成过程。
在一种实施方式中,上述多个场景组件选择控件中包括第一场景组件选择控件,上述像素点对应的场景组件为第一场景组件选择控件对应的第一场景组件。上述确定图像区域对应的场景组件和场景组件的信息,还可以包括以下步骤:
在确定像素点对应的第一场景组件的颜色值后,若存在多个相邻、且颜色值相同的第一场景组件,则将该多个相邻、且颜色值相同的第一场景组件合并为一个第一场景组件,并根据该多个相邻、且颜色值相同的第一场景组件的数量确定合并后的第一场景组件的尺寸。
其中,第一场景组件的尺寸可调,并可以沿任意方向调整。如第一场景组件为长方体组件,可以对长方体组件的长、宽、高中的任意一种或多种尺寸进行调整。
举例来说,多个颜色值相同的长方体组件对应于目标图像中的同一行或同一列中的相邻位置,则可以将这些长方体组件合并为一个更大的长方体组件,合并后长方体组件的颜色值与合并前长方体组件的颜色值相同,沿合并方向的尺寸是合并前长方体组件的尺寸乘以合并的数量。如,沿目标图像的宽度方向(即长方体组件的宽度方向)将N个相邻、颜色值相同的长方体组件合并,合并后长方体组件的宽度是合并前宽度的N倍,长度与高度可以保持不变。这样同样能够减少场景组件的数量,有利于简化场景组件组合的生成过程。
在一种实施方式中,游戏编辑场景中设置有虚拟摄像机,用于实时拍摄并显示游戏编辑场景的当前画面。上述确定图像区域对应的场景组件和场景组件的信息,可以包括以下步骤:
根据虚拟摄像机的位姿确定场景组件组合的基准点位置;
根据图像区域对应的场景组件在场景组件组合中的相对位置以及基准点位置,确定图像区域对应的场景组件的位置。
其中,场景组件组合具有一定的体积,在确定场景组件组合在游戏编辑场景中的位置时,可以在场景组件组合中选取基准点,通过确定基准点位置,来确定场景组件组合中的各个场景组件的位置。基准点可以是场景组件的中心点,任意一个角点,或任意一条边上的中心点等等。
根据虚拟摄像机的位姿确定场景组件组合的基准点位置,使得基准点位于虚拟摄像机视野画面中的合适位置,这样用户能够看到整个场景组件组合。更具体地,可以根据导入初始图像或确定生成场景组件组合时(如在图5中导入初始图像并点击“生成”)虚拟摄像机的位姿确定场景组件组合的基准点位置。
示例性的,基准点可以是场景组件的中心点,可以根据虚拟摄像机的位姿,确定光轴方向,并确定基准点位置位于光轴方向上。还可以根据场景组件组合的尺寸,确定基准点位置与虚拟摄像机的距离(沿光轴方向的距离),使得整个场景组件组合能够显示在虚拟摄像机的视野画面中。
在基准点位置的基础上,根据每个图像区域对应的场景组件在场景组件组合中的相对位置,可以确定每个场景组件的位置。相对位置可以是相对于基准点的偏移位置,将基准点位置加上相对位置,可以计算出场景组件的位置。由此,为场景组件确定合适的生成位置,这样在生成场景组件与场景组件组合时,使得用户可以在游戏编辑场景中直接看到场景组件与场景组件组合。
继续参考图4,在步骤S440中,根据图像区域对应的场景组件的信息,在游戏编辑场景中生成图像区域对应的场景组件,形成与初始图像对应的场景组件组合。
其中,生成场景组件的过程可以包括:生成场景组件的对象,该对象可以是场景组件的游戏资源、场景组件的信息(如相关的参数)以及相关代码的集合;在游戏编辑场景中加载场景组件的对象,可以表现为渲染出场景组件。在生成全部图像区域对应的场景组件后,由全部场景组件形成场景组件组合。
在一种实施方式中,上述根据图像区域对应的场景组件的信息,在游戏编辑场景中生成图像区域对应的场景组件,形成与初始图像对应的场景组件组合,可以包括以下步骤:
将场景组件组合的生成任务添加到生成队列中;
当执行到场景组件组合的生成任务时,根据图像区域对应的场景组件的信息,在游戏编辑场景中生成图像区域对应的场景组件,形成与初始图像对应的场景组件组合。
其中,生成队列可以参考图7所示,可以包括一个或多个生成任务,这些任务可以是场景组件组合(如图片墙)的生成任务,也可以是其他模型的生成任务。在生成队列中,可以根据各个生成任务的建立时间或添加到生成队列的时间排列各个生成任务,并按照排列的顺序执行。当然,用户也可以指定或调整各个生成任务的排列顺序或执行顺序,例如用户可以对某个生成任务输入优先执行的指令,则游戏程序可以将该生成任务的执行顺序提前,如可以将其设置为下一个任务。生成队列中也可以显示各个生成任务的状态,如等待中、执行中、已完成等。根据生成队列中的执行顺序,执行到场景组件组合的生成任务时,可以执行步骤S430。由此可以保证游戏场景中的各个模型能够有序地生成,这样即使用户在短时间内频繁输入生成组件的指令(如导入初始图像或点击生成的指令),也能够避免游戏程序加载过多内容而导致卡顿。并且,在生成队列中显示生成任务的相关信息,实现组件生成的后台处理过程的可视化,有利于用户感知。
参考图7所示,生成队列中可以示出每个任务的生成时间或完成时间,每个任务中组件的资源量化参数,如第一个图片墙的资源量化参数为3250。用户可以通过操作删除控件(图中垃圾桶图标的控件)删除任务,也可以通过操作“生成至场景”的控件,触发显示相应组件的生成过程。
在一种实施方式中,游戏编辑场景中设置有虚拟摄像机,用于实时拍摄并显示游戏编辑场景的当前画面。上述在游戏编辑场景中生成图像区域对应的场景组件,可以包括以下步骤:
于虚拟摄像机的视野范围内生成图像区域对应的场景组件。
其中,在生成场景组件时,可以同步进行渲染。将场景组件的生成位置置于虚拟摄像机的视野范围内,这样用户能够看到场景组件的生成。
在一种实施方式中,上述于虚拟摄像机的视野范围内生成图像区域对应的场景组件,可以包括以下步骤:
于虚拟摄像机的视野范围内、与虚拟摄像机的光轴垂直、且与虚拟摄像机间的距离为预设距离的平面上,生成图像区域对应的场景组件。
其中,与虚拟摄像机的光轴垂直的平面,即正对虚拟摄像机的视野方向的平面。该平面与虚拟摄像机间的距离(具体可以是与虚拟摄像机的光心间的距离)为预设距离,预设距离可以根据经验或游戏场景的尺寸、场景组件组合的尺寸等确定。示例性的,场景组件组合的宽和高不超过20米,预设距离可以是50米。在确定与虚拟摄像机的光轴垂直、且与虚拟摄像机间的距离为预设距离的平面后,可以在该平面上生成每个场景组件,即每个场景组件均与该平面相切或相交。这样能够将场景组件组合整体放置到虚拟摄像机的视野范围内,并且其在视野画面中的大小合适,不会占满整个画面,也不会显得过小。
在一种实施方式中,上述根据图像区域对应的场景组件的信息,在游戏编辑场景中生成图像区域对应的场景组件,可以包括以下步骤:
确定不同的图像区域对应的场景组件的生成顺序,其中,至少部分图像区域对应的场景组件的生成顺序与其他图像区域对应的场景组件的生成顺序不同;
根据图像区域对应的场景组件的信息,并按照图像区域对应的场景组件的生成顺序,在游戏编辑场景中生成图像区域对应的场景组件。
其中,对于全部图像区域对应的场景组件而言,其生成顺序不是完全相同的,即全部的场景组件存在一定的生成顺序先后之分,并不是在同一时间一起生成的。可以根据游戏程序的处理能力,对不同的图像区域对应的场景组件随机确定生成顺序。例如,游戏程序在生成场景组件时,可以并行运行M个负责生成的线程,这样在同一时间可以生成M个场景组件,可以将各个图像区域对应的场景组件以M个为一组进行划分,每一组设置相同的生成顺序,或者将各个图像区域对应的场景组件划分为M个集合中,每个集合内按照1、2、3、…的次序为场景组件设置生成顺序。
在确定场景组件的生成顺序的情况下,可以按照生成顺序逐渐生成各个场景组件,使得场景组件的生成过程更加有序,避免游戏程序一次性加载过多数据。
在一种实施方式中,上述根据图像区域对应的场景组件的信息,并按照图像区域对应的场景组件的生成顺序,在游戏编辑场景中生成图像区域对应的场景组件,可以包括以下步骤:
在当前视野画面内,动态地显示根据图像区域对应的场景组件的信息,并按照图像区域对应的场景组件的生成顺序,在游戏编辑场景中生成图像区域对应的场景组件的过程;其中,当前视野画面是通过设置于游戏编辑场景中的虚拟摄像机拍摄游戏编辑场景所形成的画面。
参考图8和图9所示,可以将场景组件的生成过程动态地显示在当前视野画面内。示例性的,一开始,显示未生成任何场景组件的画面,该画面内可以仅有游戏编辑场景的背景,也可以有其他已生成的模型;随后,逐渐显示已生成的场景组件,图8示出了已生成部分场景组件的画面;最后,当全部场景组件都已生成时,形成完整的场景组件组合,如图9所示,场景组件组合体现为图片墙、像素图像等形式。这样用户可以观看到完整的生成过程,避免用户在生成过程中无意义地等待,并使用户对生成过程有更强的感知,用户体验更好。
在一种实施方式中,上述在当前视野画面内,动态地显示根据图像区域对应的场景组件的信息,并按照图像区域对应的场景组件的生成顺序,在游戏编辑场景中生成图像区域对应的场景组件的过程,可以包括以下步骤:
响应视野调整指令,控制调整虚拟摄像机的如下至少一种信息:位置、方向、焦距、视场角;
根据调整后的虚拟摄像机采集游戏编辑场景形成调整后的视野画面;
在调整后的视野画面中,动态地显示根据图像区域对应的场景组件的信息,并按照图像区域对应的场景组件的生成顺序,在游戏编辑场景中生成图像区域对应的场景组件的过程。
其中,场景组件的生成位置在游戏编辑场景中是固定的。在场景组件的生成过程中,允许通过视野调整指令调整视野画面。具体地,当产生视野调整指令时,游戏程序可以控制虚拟摄像机进行视野调整,以调整后的视野画面显示场景组件的生成过程,使得用户可以以不同的视角观看生成过程。
视野调整指令可以是用户输入的指令,也可以是游戏程序自动实现的指令。示例性的,在场景组件的生成过程中,用户可以对虚拟摄像机的视野进行调整,包括移动虚拟摄像机位置,转动虚拟摄像机以改变其视野方向,调整虚拟摄像机的焦距或视场角,以改变视野中心位置或视野大小,等等。如用户想要对某个场景组件近距离观察时,可以将虚拟摄像机移动到距离该场景组件更近的位置。或者,游戏程序可以按照预先设置的逻辑,自动调整虚拟摄像机,如控制虚拟摄像机围绕场景组件进行转动,以实现360度观看场景组件的动态显示效果。由此,能够丰富动态显示生成过程的显示效果,进一步提升用户体验。
在一种实施方式中,在当前视野画面内,动态地显示根据图像区域对应的场景组件的信息,并按照图像区域对应的场景组件的生成顺序,在游戏编辑场景中生成图像区域对应的场景组件的过程时,组件生成方法还可以包括以下步骤:
锁定在游戏编辑场景中添加组件或编辑组件的操作,以禁止在游戏编辑场景中添加组件或编辑组件。
其中,添加组件的操作是指在游戏编辑场景中添加新组件的操作,编辑组件的操作是指对游戏编辑场景中已有的组件进行编辑的操作。在场景组件的生成过程中可以锁定这两类操作,即无法添加组件或编辑组件。示例性的,可以将添加组件或编辑组件的控件设置为不可操作的状态,如显示为灰色,或在控件上增加禁止图标,用户无法对控件进行点击等操作,也可以将控件隐藏,使得用户无法操作。或者,可以不改变控件的形态,当用户进行添加组件或编辑组件的操作后,游戏程序不予以执行,如可以将操作信息丢弃,也可以显示相关的提示,如“当前无法进行该操作”等内容。
通过锁定上述两种操作,一方面,能够防止添加组件或编辑组件所产生的信息或信息更新与正在生成的场景组件发生冲突,例如用户在添加组件或编辑组件时,可能占用正在生成的场景组件的位置,锁定两种操作后可以防止这种情况的发生。另一方面,若同时执行生成场景组件以及添加组件或编辑组件,可能导致游戏程序同时加载的数据量过多,处理任务过于繁重,可能导致卡顿,锁定两种操作后可以使游戏程序主要执行生成场景组件的任务,能够保证生成过程的流畅性。
在一种实施方式中,在完成场景组件组合的生成后,可以解除对两种操作的锁定。
在一种实施方式中,场景组件的信息可以包括如下至少一种:尺寸、位置、方向、颜色、纹理、形态。上述根据图像区域对应的场景组件信息,在游戏编辑场景中生成图像区域对应的场景组件,可以包括以下步骤:
根据场景组件的信息调用对应的编辑指令,其中,编辑指令为游戏程序预先提供的指令;
根据上述编辑指令,在游戏编辑场景中生成图像区域对应的场景组件。
其中,在确定图像区域对应的场景组件后,场景组件的上述各种信息可能是空值(如游戏程序不会为场景组件设置默认的位置,若未确定位置,则位置的数值为空值)或默认值(如游戏程序可以为场景组件设置初始尺寸,该初始尺寸为尺寸的默认值),根据各个图像区域进一步确定场景组件的信息后,需要将场景组件的信息赋值给场景组件的对象,即改变原本的空值或默认值,这一过程可以调用编辑指令来实现。
编辑指令可以包括但不限于:缩放指令,用于调整场景组件的尺寸;移动指令,用于改变场景组件的位置;旋转指令,用于改变场景组件的方向;颜色编辑指令,用于调整场景组件的颜色;纹理编辑指令,用于调整场景组件的纹理;形态调整指令,用于调整场景组件的形态,如将场景组件调整为静态形态,或透明度可自动变化的动态形态,或周期性消失与出现的动态形态,或旋转的动态形态等。
编辑指令可以开放给用户使用,即用户可以通过手动操作实现上述一种或多种编辑指令。若用户通过手动操作的编辑指令,生成场景组件,需要进行大量的手动操作。本示例性实施方式中,游戏程序可以根据场景组件的信息自动调用所需的编辑指令并加以执行,以快速实现组件生成。并且,用户手动操作的编辑指令与游戏程序自动执行的编辑指令,可以来自于同一指令集,这样无需为用户的手动操作与游戏程序的自动操作设置两套指令集,有利于降低开销。
本示例性实施方式中,在导入初始图像后,通常仅需要数秒钟至数十秒钟(具体由终端设备或服务器的性能、资源投入情况等决定)即可生成对应的场景组件组合,而人工手动编辑建模则一般需要数个小时。由此可见,本示例性实施方式能够大大降低组件生成时间,提高组件生成效率。
在形成与初始图像对应的场景组件组合之后,可以允许对场景组件组合进行整体性操作,如移动、缩放、旋转操作等。下面分别对三种操作进行说明:
移动操作
在一种实施方式中,在形成与初始图像对应的场景组件组合之后,组件生成方法还可以包括以下步骤:
响应于对场景组件组合的移动操作,移动场景组件组合在游戏编辑场景中的位置。
其中,用户可以对场景组件组合进行整体移动,如可以单击、双击或长按场景组件组合中的任意位置或特定位置以选中整个场景组件组合,然后通过拖动等操作将其移动到游戏编辑场景中的其他位置。
参考图10所示,游戏编辑场景中可以显示世界坐标系的三个轴,分别为x轴、y轴、z轴,可以控制场景组件组合沿任意一个或多个轴进行移动。在移动时,还可以在三个轴上显示场景组件组合的投影位置,如可以高亮显示或显示为其他颜色,或者如图10所示,显示在一个或多个轴上坐标,使用户看到场景组件组合在不同方向上的位置,便于用户将其准确移动到目标位置。
缩放操作
在一种实施方式中,在形成与初始图像对应的场景组件组合之后,组件生成方法还可以包括以下步骤:
响应于对场景组件组合的缩放操作,改变场景组件组合的尺寸。
其中,用户可以对场景组件组合进行整体缩放,如可以单击、双击或长按场景组件组合中的任意位置或特定位置以选中整个场景组件组合,然后通过双指分开或合拢等操作将其缩放到想要的尺寸。
在一种实施方式中,参考图11所示,游戏编辑场景中可以显示场景组件组合的参考坐标系的三个轴,为区分上述世界坐标系的三个轴,将参考坐标系的三个轴记为x'轴、y'轴、z'轴。上述响应于对场景组件组合的缩放操作,改变场景组件组合的尺寸,可以包括以下步骤:
若将场景组件组合设置为三轴缩放,则响应于缩放操作,在三个轴上等比例地改变场景组件组合的尺寸;
若将场景组件组合设置为平面缩放,则响应于沿预设平面的缩放操作,在预设平面内改变场景组件组合的尺寸;预设平面是由三个轴中的两个轴形成的平面;
若将场景组件组合设置为单轴缩放,则响应于沿三个轴中的一个轴的缩放操作,在该轴上改变场景组件组合的尺寸。
其中,三轴缩放、平面缩放(即双轴缩放)、单轴缩放是针对场景组件组合设置的三种缩放方式,可以对场景组件组合单独设置缩放方式,也可以对游戏场景设置缩放方式,则游戏场景中的所有模型都采用该所发方式。
在三轴缩放的方式下,用户沿任一轴进行缩放操作,都会使场景组件组合在三个轴上等比例地缩放,如用户沿x'轴将场景组件组合的尺寸缩小1/2,则会同步地将场景组件组合在y'轴与z'轴上的尺寸也缩小1/2。三轴等比例缩放的方式,能够提高用户进行缩放操作的效率,使得用户无需在不同轴上分别进行缩放操作,而在一个轴上进行缩放操作即可达到缩放目标。
在平面缩放的方式下,用户沿两个轴形成的预设平面(如x'-y'平面)进行缩放操作,会使场景组件组合在预设平面内缩放,而不改变在第三个轴(如z'轴)上的尺寸。在预设平面内的缩放,可以是在预设平面的两个轴上进行等比例地缩放,也可以是非等比例地缩放,如可以将用户进行缩放操作的操作参数映射到预设平面的两个轴上,并量化为两个轴上的缩放比例(两个轴上的缩放比例可以不同),进而控制场景组件组合在两个轴上进行缩放。
应当理解,可以以任意两个轴形成预设平面,则预设平面包括x'-y'平面、x'-z'平面、y'-z'平面,允许场景组件组合在任意预设平面内进行缩放。也可以以固定两个轴形成预设平面,如设置预设平面仅为x'-y'平面,这样仅允许场景组件组合在x'-y'平面内进行缩放,而不能在x'-z'平面、y'-z'平面内进行缩放。在一种实施方式中,可以将场景组件组合的图像平面作为预设平面,图像平面是用于呈现初始图像的一面,如场景组件组合为图片墙时,墙面即为图像平面。可以设置场景组件组合能够在图像平面内缩放,而不能沿第三轴(垂直于图像平面的轴)缩放。这使得场景组件组合的缩放更加符合模型本身的定位。
在单轴缩放的方式下,用户沿一个轴进行缩放操作,仅会使场景组件组合在该轴上进行缩放,而不会在另外两个轴上进行缩放。这样的缩放方式更加灵活,能够改变场景组件组合在三个轴方向上的尺寸比例,以实现更加多样的视觉效果。
需要说明的是,可以设置允许场景组件组合任意轴上进行单轴缩放。也可以设置仅允许场景组件组合在特定的一个轴或两个轴上进行缩放。如设置场景组件组合仅能在x'轴、y'轴上缩放,则无法沿z'轴完成缩放操作,这样可以针对特定类型的场景组件组合进行尺寸限制,以达到特定的游戏场景编辑目的。
旋转操作
在一种实施方式中,在形成与初始图像对应的场景组件组合之后,组件生成方法还可以包括以下步骤:
响应于对场景组件组合的旋转操作,控制场景组件组合进行旋转。
其中,用户可以对场景组件组合进行整体旋转,如可以单击、双击或长按场景组件组合中的任意位置或特定位置以选中整个场景组件组合,然后通过特定轨迹的滑动等操作控制其旋转到想要的方向或角度。
在一种实施方式中,参考图12所示,游戏编辑场景中可以显示用于表示旋转方向的三个弧形,可以记为偏航角弧形、俯仰角弧形、滚转角弧形。上述响应于对场景组件组合的旋转操作,控制场景组件组合进行旋转,可以包括以下步骤:
响应于沿三个弧形中的任一弧形的旋转操作,以该弧形所在平面的法线为旋转轴,控制场景组件组合绕旋转轴旋转。
其中,旋转轴垂直于弧形所在平面,并可以穿过场景组件组合的中心点。示例性的,用户沿偏航角弧形进行旋转操作,则可以以穿过场景组件组合的中心点的z轴为旋转轴,控制场景组件组合绕旋转轴旋转。在旋转过程中,可以保持三个弧形的位置不变,也可以同步旋转其中任意一个或多个弧形。通过显示弧形,可以引导用户沿正确地方向进行旋转操作,以便于准确旋转到想要的方向或角度。
以上对三种整体性操作进行说明。此外,还可以允许对场景组件组合进行局部操作。在一种实施方式中,在形成与初始图像对应的场景组件组合之后,组件生成方法还可以包括以下步骤:
响应于对场景组件组合中的任一场景组件的编辑指令,对场景组件的如下至少一种信息进行调整:尺寸、位置、方向、颜色、纹理、形态。
其中,用户可以对场景组件组合中的单个场景组件进行编辑,如可以单击、双击或长按所要编辑的场景组件以选中该场景组件组合,并通过进一步的手动操作生成编辑指令,以调整场景组件的信息。示例性的,在选中场景组件后,可以通过双指分开或合拢等操作改变其尺寸,可以拖动场景组件以移动其位置,可以沿特定的旋转轨迹进行滑动以控制场景组件改变方向,可以在游戏编辑场景的界面中为场景组件选择另一种颜色、纹理或形态,以改变其颜色、纹理或形态。由此,在生成场景组件组合的基础上,允许用户对场景组件进行灵活地编辑优化,使得场景组件组合能够更加符合用户的需求或偏好。
在一种实施方式中,在形成与初始图像对应的场景组件组合之后,可以为场景组件组合设置关联的游戏事件。如可以设置游戏角色接近场景组件组合时,触发特定的游戏剧情,或者在达到特定的游戏时间时,将场景组件组合隐藏或移除等。
在一种实施方式中,通过终端设备进行游戏场景建立或发布的相关操作(如点击图2中的“发布地图”控件)后,可生成游戏编辑场景对应的游戏场景信息,该游戏场景信息可保存在预设位置,该预设位置可以是地图文件中,该地图文件不仅可保存游戏场景信息,还可保存其他的地图信息(包括但不限于截图、地图名、日志等信息)。地图文件保存游戏场景信息后可以被上传到服务器。服务器审核通过后可将游戏场景信息生成的游戏场景发布至于预设地图池中,从而与服务器连接的终端设备可从服务器上下载相应的游戏场景信息,并通过游戏程序根据所下载的游戏场景信息生成对应的游戏场景,然后在该游戏场景中进行游戏体验。该方式可将游戏编辑器中的游戏场景信息进行发布,并被其他玩家体验,从而实现快速的UGC(User Generated Content,用户生成内容)功能。
图13示出了本示例性实施方式运行环境的系统架构图。该系统架构1300可以包括终端设备1310和服务器1320。服务器1320可以是提供游戏服务的后台系统,其可以是一台服务器,也可以是多台服务器的集群。设备1310和服务器1320之间可以通过有线或无线链路形成连接,以进行数据传输与交互。本示例性实施方式中的组件生成方法,可以完全由终端设备1310执行,也可以部分由终端设备1310执行,部分由服务器1320执行。例如,用户在终端设备1310上操作导入初始图像后,终端设备1310将初始图像发送至服务器1320,服务器1320可以通过预先配置的逻辑规则或人工智能引擎等对初始图像以及相关的用户指令(如生成组件的指令)进行处理,以划分图像区域,确定图像区域对应的场景组件和场景组件的信息,将图像区域、场景组件和场景组件的信息返回终端设备1310,终端设备1310基于这些信息生成场景组件,并形成场景组件组合。
本公开的示例性实施方式还提供一种游戏场景中的组件生成装置。参考图14所示,游戏场景中的组件生成装置1400可以包括以下程序模块:
图形用户界面处理模块1410,被配置为显示运行游戏程序所提供的图形用户界面,在图形用户界面中显示待编辑的游戏编辑场景以及多个场景组件选择控件,场景组件选择控件用于响应并根据操作指令在游戏编辑场景中生成对应场景组件;
信息获取模块1420,被配置为在图形用户界面中提供一图像导入入口,并接受基于图像导入入口导入的初始图像;
场景组件确定模块1430,被配置为将初始图像划分为多个图像区域,确定图像区域对应的场景组件和场景组件的信息;
组件生成模块1440,被配置为根据图像区域对应的场景组件的信息,在游戏编辑场景中生成图像区域对应的场景组件,形成与初始图像对应的场景组件组合。
在一种实施方式中,上述根据图像区域对应的场景组件的信息,在游戏编辑场景中生成图像区域对应的场景组件,包括:
确定不同的图像区域对应的场景组件的生成顺序,其中,至少部分图像区域对应的场景组件的生成顺序与其他图像区域对应的场景组件的生成顺序不同;
根据图像区域对应的场景组件的信息,并按照图像区域对应的场景组件的生成顺序,在游戏编辑场景中生成图像区域对应的场景组件。
在一种实施方式中,上述根据图像区域对应的场景组件的信息,并按照图像区域对应的场景组件的生成顺序,在游戏编辑场景中生成图像区域对应的场景组件,包括:
在当前视野画面内,动态地显示根据图像区域对应的场景组件的信息,并按照图像区域对应的场景组件的生成顺序,在游戏编辑场景中生成图像区域对应的场景组件的过程;其中,当前视野画面是通过设置于游戏编辑场景中的虚拟摄像机拍摄游戏编辑场景所形成的画面。
在一种实施方式中,上述在当前视野画面内,动态地显示根据图像区域对应的场景组件的信息,并按照图像区域对应的场景组件的生成顺序,在游戏编辑场景中生成图像区域对应的场景组件的过程,包括:
响应视野调整指令,控制调整虚拟摄像机的如下至少一种信息:位置、方向、焦距、视场角;
根据调整后的虚拟摄像机采集游戏编辑场景形成调整后的视野画面;
在调整后的视野画面中,动态地显示根据图像区域对应的场景组件的信息,并按照图像区域对应的场景组件的生成顺序,在游戏编辑场景中生成图像区域对应的场景组件的过程。
在一种实施方式中,组件生成模块1440,还被配置为:
在当前视野画面内,动态地显示根据图像区域对应的场景组件的信息,并按照图像区域对应的场景组件的生成顺序,在游戏编辑场景中生成图像区域对应的场景组件的过程时,锁定在游戏编辑场景中添加模型或编辑模型的操作,以禁止在游戏编辑场景中添加模型或编辑模型。
在一种实施方式中,场景组件的信息包括如下至少一种:尺寸、位置、方向、颜色、纹理、形态。上述根据图像区域对应的场景组件信息,在游戏编辑场景中生成图像区域对应的场景组件,包括:
根据场景组件的信息调用对应的编辑指令,其中,编辑指令为游戏程序预先提供的指令;
根据编辑指令,在游戏编辑场景中生成图像区域对应的场景组件。
在一种实施方式中,信息获取模块1420,还被配置为:
获取场景组件组合的资源量化参数;
上述将初始图像划分为多个图像区域,确定图像区域对应的场景组件和场景组件的信息,包括:
基于资源量化参数对初始图像进行采样,并基于采样结果得到目标图像;
以目标图像的像素点作为一个图像区域,确定图像区域对应的场景组件和场景组件的信息。
在一种实施方式中,资源量化参数包括场景组件组合的场景组件数量。上述基于资源量化参数对初始图像进行采样,并基于采样结果得到目标图像,包括:
以场景组件组合的场景组件数量作为采样后的像素数量,对初始图像进行采样,并基于采样结果得到目标图像。
在一种实施方式中,上述以目标图像的像素点作为一个图像区域,确定图像区域对应的场景组件和场景组件的信息,包括:
根据目标图像的像素数量和场景组件的初始尺寸,确定场景组件组合的初始尺寸;
若场景组件组合的初始尺寸处于预设尺寸范围内,则保持场景组件的初始尺寸不变;
若场景组件组合的初始尺寸超出预设尺寸范围,则对场景组件的初始尺寸进行调整,使得在调整初始尺寸后场景组件组合的初始尺寸处于预设尺寸范围内。
在一种实施方式中,信息获取模块1420,还被配置为:
获取场景组件组合的目标颜色数量。
上述基于资源量化参数对初始图像进行采样,并基于采样结果得到目标图像,包括:
基于资源量化参数对初始图像进行采样,得到采样图像;
基于目标颜色数量对采样图像的像素点颜色值进行颜色映射,得到目标图像;
上述确定图像区域对应的场景组件和场景组件的信息,包括:
将目标图像的像素点的颜色值作为像素点对应的场景组件的颜色值。
在一种实施方式中,上述基于目标颜色数量对采样图像的像素点颜色值进行颜色映射,得到目标图像,包括:
基于目标颜色数量对采样图像的像素点颜色值进行聚类,得到多个颜色类别,颜色类别的数量等于目标颜色数量;
将颜色类别中的像素点颜色值映射为与颜色类别最接近的预设颜色。
在一种实施方式中,上述多个场景组件选择控件中包括第一场景组件选择控件和第二场景组件选择控件,第二场景组件选择控件对应的第二场景组件的形状与通过预设数量的第一场景组件选择控件对应的第一场景组件拼接成的组件的形状相对应;上述像素点对应的场景组件为第一场景组件。
上述确定图像区域对应的场景组件和场景组件的信息,还包括:
在确定像素点对应的第一场景组件的颜色值后,若存在多个相邻、且颜色值相同的第一场景组件,则将多个相邻、且颜色值相同的第一场景组件合并为第二场景组件。
在一种实施方式中,上述多个场景组件选择控件中包括第一场景组件选择控件,上述像素点对应的场景组件为第一场景组件选择控件对应的第一场景组件。
上述确定图像区域对应的场景组件和场景组件的信息,还包括:
在确定像素点对应的第一场景组件的颜色值后,若存在多个相邻、且颜色值相同的第一场景组件,则将多个相邻、且颜色值相同的第一场景组件合并为一个第一场景组件,并根据多个相邻、且颜色值相同的第一场景组件的数量确定合并后的第一场景组件的尺寸。
在一种实施方式中,第一场景组件为方块组件,方块组件的形状为立方体。
在一种实施方式中,游戏编辑场景中设置有虚拟摄像机,用于实时拍摄并显示游戏编辑场景的当前画面。
上述在游戏编辑场景中生成图像区域对应的场景组件,包括:
于虚拟摄像机的视野范围内生成图像区域对应的场景组件。
在一种实施方式中,上述于虚拟摄像机的视野范围内生成图像区域对应的场景组件,包括:
于虚拟摄像机的视野范围内、与虚拟摄像机的光轴垂直、且与虚拟摄像机间的距离为预设距离的平面上,生成图像区域对应的场景组件。
在一种实施方式中,上述确定图像区域对应的场景组件和场景组件的信息,包括:
根据虚拟摄像机的位姿确定场景组件组合的基准点位置;
根据图像区域对应的场景组件在场景组件组合中的相对位置以及基准点位置,确定图像区域对应的场景组件的位置。
在一种实施方式中,上述根据图像区域对应的场景组件的信息,在游戏编辑场景中生成图像区域对应的场景组件,形成与初始图像对应的场景组件组合,包括:
将场景组件组合的生成任务添加到生成队列中;
当执行到场景组件组合的生成任务时,根据图像区域对应的场景组件的信息,在游戏编辑场景中生成图像区域对应的场景组件,形成与初始图像对应的场景组件组合。
在一种实施方式中,游戏场景中的组件生成装置1400还可以包括模型编辑模块,被配置为:
在组件生成模块1440形成与初始图像对应的场景组件组合之后,响应于对场景组件组合的移动操作,移动场景组件组合在游戏编辑场景中的位置。
在一种实施方式中,游戏场景中的组件生成装置1400还可以包括模型编辑模块,被配置为:
在组件生成模块1440形成与初始图像对应的场景组件组合之后,响应于对场景组件组合的缩放操作,改变场景组件组合的尺寸。
在一种实施方式中,游戏编辑场景中显示场景组件组合的参考坐标系的三个轴。
上述响应于对场景组件组合的缩放操作,改变场景组件组合的尺寸,包括:
若将场景组件组合设置为三轴缩放,则响应于缩放操作,在三个轴上等比例地改变场景组件组合的尺寸;
若将场景组件组合设置为平面缩放,则响应于沿预设平面的缩放操作,在预设平面内改变场景组件组合的尺寸;预设平面是由三个轴中的两个轴形成的平面;
若将场景组件组合设置为单轴缩放,则响应于沿三个轴中的一个轴的缩放操作,在该轴上改变场景组件组合的尺寸。
在一种实施方式中,游戏场景中的组件生成装置1400还可以包括模型编辑模块,被配置为:
在组件生成模块1440形成与初始图像对应的场景组件组合之后,响应于对场景组件组合的旋转操作,控制场景组件组合进行旋转。
在一种实施方式中,游戏编辑场景中显示用于表示旋转方向的三个弧形。
上述响应于对场景组件组合的旋转操作,控制场景组件组合进行旋转,包括:
响应于沿三个弧形中的任一弧形的旋转操作,以任一弧形所在平面的法线为旋转轴,控制场景组件组合绕旋转轴旋转。
在一种实施方式中,游戏场景中的组件生成装置1400还可以包括模型编辑模块,被配置为:
在组件生成模块1440形成与初始图像对应的场景组件组合之后,响应于对场景组件组合中的任一场景组件的编辑指令,对场景组件的如下至少一种信息进行调整:尺寸、位置、方向、颜色、纹理、形态。
上述装置中各部分的具体细节在方法部分实施方式中已经详细说明,未披露的细节内容可以参见方法部分的实施方式内容,因而不再赘述。
本公开的示例性实施方式还提供了一种计算机可读存储介质,可以实现为一种程序产品的形式,其包括程序代码,当程序产品在电子设备上运行时,程序代码用于使电子设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。在一种可选的实施方式中,该程序产品可以实现为便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在电子设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
本公开的示例性实施方式还提供一种电子设备,如可以是上述终端设备1310或服务器1320。该电子设备可以包括处理器与存储器。存储器存储有处理器的可执行指令,如可以是程序代码。处理器通过执行该可执行指令来执行本示例性实施方式中的方法。此外,该电子设备还可以包括显示器,以用于显示图形用户界面。
下面参考图15,以通用计算设备的形式对电子设备进行示例性说明。应当理解,图15显示的电子设备1500仅仅是一个示例,不应对本公开实施方式的功能和使用范围带来限制。
如图15所示,电子设备1500可以包括:处理器1510、存储器1520、总线1530、I/O(输入/输出)接口1540、网络适配器1550、显示器1560。
存储器1520可以包括易失性存储器,例如RAM 1521、缓存单元1522,还可以包括非易失性存储器,例如ROM 1523。存储器1520还可以包括一个或多个程序模块1524,这样的程序模块1524包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。例如,程序模块1524可以包括上述装置中的各模块。
总线1530用于实现电子设备1500的不同组件之间的连接,可以包括数据总线、地址总线和控制总线。
电子设备1500可以通过I/O接口1540与一个或多个外部设备1600(例如键盘、鼠标、外置控制器等)进行通信。
电子设备1500可以通过网络适配器1550与一个或者多个网络通信,例如网络适配器1550可以提供如3G/4G/5G等移动通信解决方案,或者提供如无线局域网、蓝牙、近场通信等无线通信解决方案。网络适配器1550可以通过总线1530与电子设备1500的其它模块通信。
电子设备1500可以通过显示器1560显示图形用户界面,如显示游戏编辑场景等。
尽管图15中未示出,还可以在电子设备1500中设置其它硬件和/或软件模块,包括但不限于:显示器、微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的示例性实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
本领域技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施方式。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施方式仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限定。
Claims (27)
1.一种游戏场景中的组件生成方法,其特征在于,所述方法包括:
显示运行游戏程序所提供的图形用户界面,在所述图形用户界面中显示待编辑的游戏编辑场景以及多个场景组件选择控件,所述场景组件选择控件用于响应并根据操作指令在所述游戏编辑场景中生成对应场景组件;
在所述图形用户界面中提供一图像导入入口,并接受基于所述图像导入入口导入的初始图像;
将所述初始图像划分为多个图像区域,确定图像区域对应的场景组件和所述场景组件的信息;
根据所述图像区域对应的场景组件的信息,在所述游戏编辑场景中生成所述图像区域对应的场景组件,形成与所述初始图像对应的场景组件组合。
2.根据权利要求1所述的方法,其特征在于,所述根据所述图像区域对应的场景组件的信息,在所述游戏编辑场景中生成所述图像区域对应的场景组件,包括:
确定不同的所述图像区域对应的场景组件的生成顺序,其中,至少部分图像区域对应的场景组件的生成顺序与其他图像区域对应的场景组件的生成顺序不同;
根据所述图像区域对应的场景组件的信息,并按照所述图像区域对应的场景组件的生成顺序,在所述游戏编辑场景中生成所述图像区域对应的场景组件。
3.根据权利要求2所述的方法,其特征在于,所述根据所述图像区域对应的场景组件的信息,并按照所述图像区域对应的场景组件的生成顺序,在所述游戏编辑场景中生成所述图像区域对应的场景组件,包括:
在当前视野画面内,动态地显示根据所述图像区域对应的场景组件的信息,并按照所述图像区域对应的场景组件的生成顺序,在所述游戏编辑场景中生成所述图像区域对应的场景组件的过程;其中,所述当前视野画面是通过设置于所述游戏编辑场景中的虚拟摄像机拍摄所述游戏编辑场景所形成的画面。
4.根据权利要求3所述的方法,其特征在于,所述在当前视野画面内,动态地显示根据所述图像区域对应的场景组件的信息,并按照所述图像区域对应的场景组件的生成顺序,在所述游戏编辑场景中生成所述图像区域对应的场景组件的过程,包括:
响应视野调整指令,控制调整所述虚拟摄像机的如下至少一种信息:位置、方向、焦距、视场角;
根据调整后的所述虚拟摄像机采集所述游戏编辑场景形成调整后的视野画面;
在所述调整后的视野画面中,动态地显示根据所述图像区域对应的场景组件的信息,并按照所述图像区域对应的场景组件的生成顺序,在所述游戏编辑场景中生成所述图像区域对应的场景组件的过程。
5.根据权利要求3所述的方法,其特征在于,在当前视野画面内,动态地显示根据所述图像区域对应的场景组件的信息,并按照所述图像区域对应的场景组件的生成顺序,在所述游戏编辑场景中生成所述图像区域对应的场景组件的过程时,所述方法还包括:
锁定在所述游戏编辑场景中添加组件或编辑组件的操作,以禁止在所述游戏编辑场景中添加组件或编辑组件。
6.根据权利要求1所述的方法,其特征在于,所述场景组件的信息包括如下至少一种:尺寸、位置、方向、颜色、纹理、形态;
所述根据所述图像区域对应的场景组件信息,在所述游戏编辑场景中生成所述图像区域对应的场景组件,包括:
根据所述场景组件的信息调用对应的编辑指令,其中,所述编辑指令为所述游戏程序预先提供的指令;
根据所述编辑指令,在所述游戏编辑场景中生成所述图像区域对应的场景组件。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述场景组件组合的资源量化参数;
所述将所述初始图像划分为多个图像区域,确定图像区域对应的场景组件和所述场景组件的信息,包括:
基于所述资源量化参数对所述初始图像进行采样,并基于采样结果得到目标图像;
以所述目标图像的像素点作为一个图像区域,确定图像区域对应的场景组件和所述场景组件的信息。
8.根据权利要求7所述的方法,其特征在于,所述场景组件组合的资源量化参数包括所述场景组件组合的场景组件数量;所述基于所述资源量化参数对所述初始图像进行采样,并基于采样结果得到目标图像,包括:
以所述场景组件组合的场景组件数量作为采样后的像素数量,对所述初始图像进行采样,并基于采样结果得到所述目标图像。
9.根据权利要求7所述的方法,其特征在于,所述以所述目标图像的像素点作为一个图像区域,确定图像区域对应的场景组件和所述场景组件的信息,包括:
根据所述目标图像的像素数量和所述场景组件的初始尺寸,确定所述场景组件组合的初始尺寸;
若所述场景组件组合的初始尺寸处于预设尺寸范围内,则保持所述场景组件的初始尺寸不变;
若所述场景组件组合的初始尺寸超出所述预设尺寸范围,则对所述场景组件的初始尺寸进行调整,使得在调整所述初始尺寸后所述场景组件组合的初始尺寸处于所述预设尺寸范围内。
10.根据权利要求7所述的方法,其特征在于,所述方法还包括:
获取所述场景组件组合的目标颜色数量;
所述基于所述资源量化参数对所述初始图像进行采样,并基于采样结果得到目标图像,包括:
基于所述资源量化参数对所述初始图像进行采样,得到采样图像;
基于所述目标颜色数量对所述采样图像的像素点颜色值进行颜色映射,得到所述目标图像;
所述确定图像区域对应的场景组件和所述场景组件的信息,包括:
将所述目标图像的像素点的颜色值作为所述像素点对应的场景组件的颜色值。
11.根据权利要求10所述的方法,其特征在于,所述基于所述目标颜色数量对所述采样图像的像素点颜色值进行颜色映射,得到所述目标图像,包括:
基于所述目标颜色数量对所述采样图像的像素点颜色值进行聚类,得到多个颜色类别,所述颜色类别的数量等于所述目标颜色数量;
将所述颜色类别中的像素点颜色值映射为与所述颜色类别最接近的预设颜色。
12.根据权利要求10所述的方法,其特征在于,所述多个场景组件选择控件中包括第一场景组件选择控件和第二场景组件选择控件,所述第二场景组件选择控件对应的第二场景组件的形状与通过预设数量的所述第一场景组件选择控件对应的第一场景组件拼接成的组件的形状相对应;所述像素点对应的场景组件为第一场景组件;
所述确定图像区域对应的场景组件和所述场景组件的信息,还包括:
在确定所述像素点对应的颜色值后,若存在多个相邻、且颜色值相同的像素点,则将所述多个相邻、且颜色值相同的像素点对应的第一场景组件合并为第二场景组件。
13.根据权利要求10所述的方法,其特征在于,所述多个场景组件选择控件中包括第一场景组件选择控件,所述像素点对应的场景组件为所述第一场景组件选择控件对应的第一场景组件;
所述确定图像区域对应的场景组件和所述场景组件的信息,还包括:
在确定所述像素点对应的颜色值后,若存在多个相邻、且颜色值相同的像素点,则将所述多个相邻、且颜色值相同的像素点对应的第一场景组件合并为一个第一场景组件,并根据所述多个相邻、且颜色值相同的像素点的数量确定合并后的第一场景组件的尺寸。
14.根据权利要求12或13所述的方法,其特征在于,所述第一场景组件为方块组件,所述方块组件的形状为立方体。
15.根据权利要求1所述的方法,其特征在于,所述游戏编辑场景中设置有虚拟摄像机,用于实时拍摄并显示所述游戏编辑场景的当前画面;
所述在所述游戏编辑场景中生成所述图像区域对应的场景组件,包括:
于所述虚拟摄像机的视野范围内生成所述图像区域对应的场景组件。
16.根据权利要求15所述的方法,其特征在于,所述于所述虚拟摄像机的视野范围内生成所述图像区域对应的场景组件,包括:
于所述虚拟摄像机的视野范围内、与所述虚拟摄像机的光轴垂直、且与所述虚拟摄像机间的距离为预设距离的平面上,生成所述图像区域对应的场景组件。
17.根据权利要求15或16所述的方法,其特征在于,所述确定图像区域对应的场景组件和所述场景组件的信息,包括:
根据所述虚拟摄像机的位姿确定所述场景组件组合的基准点位置;
根据所述图像区域对应的场景组件在所述场景组件组合中的相对位置以及所述基准点位置,确定所述图像区域对应的场景组件的位置。
18.根据权利要求1所述的方法,其特征在于,所述根据所述图像区域对应的场景组件的信息,在所述游戏编辑场景中生成所述图像区域对应的场景组件,形成与所述初始图像对应的场景组件组合,包括:
将所述场景组件组合的生成任务添加到生成队列中;
当执行到所述场景组件组合的生成任务时,根据所述图像区域对应的场景组件的信息,在所述游戏编辑场景中生成所述图像区域对应的场景组件,形成与所述初始图像对应的场景组件组合。
19.根据权利要求1所述的方法,其特征在于,在形成与所述初始图像对应的场景组件组合之后,所述方法还包括:
响应于对所述场景组件组合的移动操作,移动所述场景组件组合在所述游戏编辑场景中的位置。
20.根据权利要求1所述的方法,其特征在于,在形成与所述初始图像对应的场景组件组合之后,所述方法还包括:
响应于对所述场景组件组合的缩放操作,改变所述场景组件组合的尺寸。
21.根据权利要求20所述的方法,其特征在于,所述游戏编辑场景中显示所述场景组件组合的参考坐标系的三个轴;所述响应于对所述场景组件组合的缩放操作,改变所述场景组件组合的尺寸,包括:
若将所述场景组件组合设置为三轴缩放,则响应于所述缩放操作,在所述三个轴上等比例地改变所述场景组件组合的尺寸;
若将所述场景组件组合设置为平面缩放,则响应于沿预设平面的所述缩放操作,在所述预设平面内改变所述场景组件组合的尺寸;所述预设平面是由所述三个轴中的两个轴形成的平面;
若将所述场景组件组合设置为单轴缩放,则响应于沿所述三个轴中的一个轴的所述缩放操作,在所述一个轴上改变所述场景组件组合的尺寸。
22.根据权利要求1所述的方法,其特征在于,在形成与所述初始图像对应的场景组件组合之后,所述方法还包括:
响应于对所述场景组件组合的旋转操作,控制所述场景组件组合进行旋转。
23.根据权利要求22所述的方法,其特征在于,所述游戏编辑场景中显示用于表示旋转方向的三个弧形;所述响应于对所述场景组件组合的旋转操作,控制所述场景组件组合进行旋转,包括:
响应于沿所述三个弧形中的任一弧形的所述旋转操作,以所述任一弧形所在平面的法线为旋转轴,控制所述场景组件组合绕所述旋转轴旋转。
24.根据权利要求1所述的方法,其特征在于,在形成与所述初始图像对应的场景组件组合之后,所述方法还包括:
响应于对所述场景组件组合中的任一场景组件的编辑指令,对所述场景组件的如下至少一种信息进行调整:尺寸、位置、方向、颜色、纹理、形态。
25.一种游戏场景中的组件生成装置,其特征在于,所述装置包括:
图形用户界面处理模块,被配置为显示运行游戏程序所提供的图形用户界面,在所述图形用户界面中显示待编辑的游戏编辑场景以及多个场景组件选择控件,所述场景组件选择控件用于响应并根据操作指令在所述游戏编辑场景中生成对应场景组件;
信息获取模块,被配置为在所述图形用户界面中提供一图像导入入口,并接受基于所述图像导入入口导入的初始图像;
场景组件确定模块,被配置为将所述初始图像划分为多个图像区域,确定图像区域对应的场景组件和所述场景组件的信息;
组件生成模块,被配置为根据所述图像区域对应的场景组件的信息,在所述游戏编辑场景中生成所述图像区域对应的场景组件,形成与所述初始图像对应的场景组件组合。
26.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至24任一项所述的方法。
27.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1至24任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310718159.6A CN116672720A (zh) | 2023-06-15 | 2023-06-15 | 游戏场景中的组件生成方法、装置、存储介质与电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310718159.6A CN116672720A (zh) | 2023-06-15 | 2023-06-15 | 游戏场景中的组件生成方法、装置、存储介质与电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116672720A true CN116672720A (zh) | 2023-09-01 |
Family
ID=87781932
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310718159.6A Pending CN116672720A (zh) | 2023-06-15 | 2023-06-15 | 游戏场景中的组件生成方法、装置、存储介质与电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116672720A (zh) |
-
2023
- 2023-06-15 CN CN202310718159.6A patent/CN116672720A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220249949A1 (en) | Method and apparatus for displaying virtual scene, device, and storage medium | |
US9098647B2 (en) | Dynamic viewing of a three dimensional space | |
CN109151540A (zh) | 视频图像的交互处理方法及装置 | |
CN111476910B (zh) | 智能建筑bim的3d模型显示方法、系统、介质及显示终端 | |
JP2022545598A (ja) | 仮想対象の調整方法、装置、電子機器、コンピュータ記憶媒体及びプログラム | |
US11539932B2 (en) | Dynamically generating and changing view-specific-filter parameters for 360-degree videos | |
GB2400290A (en) | Multidimensional image data processing in a hierarchical dat structure | |
CN114928718A (zh) | 视频监控方法、装置、电子设备及存储介质 | |
CN108256072B (zh) | 相册显示方法、装置、存储介质以及电子设备 | |
CN117274475A (zh) | 光晕效果的渲染方法、装置、电子设备和可读存储介质 | |
CN112612463A (zh) | 一种图形化编程控制方法、系统及装置 | |
CN112686939A (zh) | 景深图像的渲染方法、装置、设备及计算机可读存储介质 | |
CN116672720A (zh) | 游戏场景中的组件生成方法、装置、存储介质与电子设备 | |
CN114428573B (zh) | 特效图像处理方法、装置、电子设备及存储介质 | |
CN116688516A (zh) | 游戏场景中的组件生成方法、装置、存储介质与电子设备 | |
CN115526976A (zh) | 虚拟场景渲染方法、装置、存储介质和电子设备 | |
CN114663560A (zh) | 目标模型的动画实现方法、装置、存储介质及电子设备 | |
CN116672719A (zh) | 游戏场景中的组件生成方法、装置、存储介质与电子设备 | |
KR102579463B1 (ko) | 확장현실 기술 기반 미디어아트 시스템 | |
US11302074B2 (en) | Mobile device 3-dimensional modeling | |
WO2024109357A1 (zh) | 图像处理方法、装置、设备、存储介质及程序产品 | |
CN116980690A (zh) | 多媒体数据的处理方法、装置、存储介质及计算机设备 | |
CN116578226A (zh) | 图像处理方法、装置、设备、存储介质和程序产品 | |
CN118105709A (zh) | 游戏场景组件编辑方法、装置、程序产品与电子设备 | |
CN117351126A (zh) | 虚拟场景中雨雪特效的生成方法、装置及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |