CN110060341A - 一种游戏模型渲染的方法和装置 - Google Patents

一种游戏模型渲染的方法和装置 Download PDF

Info

Publication number
CN110060341A
CN110060341A CN201910357587.4A CN201910357587A CN110060341A CN 110060341 A CN110060341 A CN 110060341A CN 201910357587 A CN201910357587 A CN 201910357587A CN 110060341 A CN110060341 A CN 110060341A
Authority
CN
China
Prior art keywords
model
location information
rendered
game
scene
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.)
Granted
Application number
CN201910357587.4A
Other languages
English (en)
Other versions
CN110060341B (zh
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.)
Netease Hangzhou Network Co Ltd
Original Assignee
Netease Hangzhou Network 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 Netease Hangzhou Network Co Ltd filed Critical Netease Hangzhou Network Co Ltd
Priority to CN201910357587.4A priority Critical patent/CN110060341B/zh
Publication of CN110060341A publication Critical patent/CN110060341A/zh
Application granted granted Critical
Publication of CN110060341B publication Critical patent/CN110060341B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Architecture (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本发明实施例提供了一种游戏模型渲染的方法及装置,通过获取三维制作软件生成的第一场景文件,其中,第一场景文件包含模型,以及模型在第一空间坐标系下的第一位置信息,接着根据第一场景文件生成用于预置游戏引擎进行模型渲染的第二场景文件,其中,第二场景文件包含模型的第二位置信息,第二位置信息为对第一位置信息进行转换后,获得的针对游戏引擎的第二空间坐标系下的位置信息,解决了三维制作软件与游戏引擎之间由于坐标系不同导致的位置信息无法互动的问题,提高了三维制作软件与游戏引擎之间文件的兼容性,同时,避免了美工人员重复对场景模型进行搭建,提高了美工人员的工作效率。

Description

一种游戏模型渲染的方法和装置
技术领域
本发明涉及游戏技术领域,特别是涉及一种游戏模型渲染的方法和一种游戏模型渲染的装置。
背景技术
对于网络游戏特别是3D网络游戏,游戏场景的渲染是一块非常重要的内容。在进行游戏场景制作时,美工人员首先通过三维制作软件(如3D Max)进行游戏场景制作,并将该游戏场景导入到游戏引擎中进行渲染。由于美工人员使用的三维制作软件和游戏引擎所采用的坐标系可能不同,从而容易导致三维制作软件导出场景模型时,场景模型的位置无法在游戏引擎中直接还原。
然而,当前从三维制作软件中导出适配游戏引擎的场景文件,需要美工人员通过手动导出gim模型,容易出错,且进行场景摆放时,需要进行大量重复的工作,效率低下。此外,由于游戏引擎的视图操作与三维制作软件不同,增加了美工人员对游戏场景处理的难度,进一步降低了美工人员的效率,容易影响游戏的开发进度。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种游戏模型渲染的方法和相应的一种游戏模型渲染的装置。
为了解决上述问题,本发明实施例公开了一种游戏模型渲染的方法,包括:
获取三维制作软件生成的第一场景文件,其中,所述第一场景文件包含模型,以及所述模型在第一空间坐标系下的第一位置信息;
根据所述第一场景文件生成用于预置游戏引擎进行模型渲染的第二场景文件,其中,所述第二场景文件包含所述模型的第二位置信息,所述第二位置信息为对所述第一位置信息进行转换后,获得的针对所述游戏引擎的第二空间坐标系的位置信息。
可选的,所述方法还包括:
获取所述三维制作软件中与待渲染模型对应的模型名称;
根据所述模型名称,对所述三维制作软件导出的与所述待渲染模型对应的模型文件进行命名。
可选的,所述根据所述第一场景文件生成用于预置游戏引擎进行模型渲染的第二场景文件,包括:
从所述第一场景文件中提取所述待渲染模型的第一位置信息;
对所述待渲染模型的第一位置信息进行转换,得到所述待渲染模型在所述预置游戏引擎的第二空间坐标系下的第二位置信息;
根据所述待渲染模型的模型名称,获取与所述待渲染模型的模型名称匹配的模型文件;
根据所述第二位置信息以及与所述待渲染模型对应的模型文件,生成用于所述游戏引擎对所述待渲染模型进行渲染的第二场景文件。
可选的,所述第一位置信息和所述第二位置信息均包括用于表征缩放的缩放三维向量、用于表征位移的位移三维向量以及用于表征旋转的旋转四元数,所述对所述待渲染模型的第一位置信息进行转换,得到所述待渲染模型在所述预置游戏引擎的第二空间坐标系下的第二位置信息,包括:
将所述第一位置信息的缩放三维向量中的y轴数值与z轴数值进行调换,得到所述第二位置信息的缩放三维向量;
将所述第一位置信息的位移三维向量中的y轴数值与z轴数值进行调换,得到所述第二位置信息的位移三维向量;
将所述第一位置信息的旋转四元数中的y轴数值与z轴数值进行调换,以及对所述第一位置信息的旋转四元数的实数部分取负值,得到所述第二位置信息的旋转四元数;
其中,所述y轴与所述z轴相互垂直,且所述y轴与z轴构成的平面与水平面垂直。
本发明实施例还公开了一种游戏模型渲染的装置,包括:
第一获取模块,用于获取三维制作软件生成的第一场景文件,其中,所述第一场景文件包含模型,以及所述模型在第一空间坐标系下的第一位置信息;
生成模块,用于根据所述第一场景文件生成用于预置游戏引擎进行模型渲染的第二场景文件,其中,所述第二场景文件包含所述模型的第二位置信息,所述第二位置信息为对所述第一位置信息进行转换后,获得的针对所述游戏引擎的第二空间坐标系下的位置信息。
可选的,所述装置还包括:
第二获取模块,用于获取所述三维制作软件中与待渲染模型对应的模型名称;
命名模块,用于根据所述第二获取模块获取的所述模型名称,对所述三维制作软件导出的与所述待渲染模型对应的模型文件进行命名。
可选的,所述第二场景文件生成模块包括:
提取子模块,用于从所述第一场景文件中提取所述待渲染模型的第一位置信息;
转换子模块,用于对所述待渲染模型的第一位置信息进行转换,得到所述待渲染模型在所述预置游戏引擎的第二空间坐标系下的第二位置信息;
获取子模块,用于根据所述待渲染模型的模型名称,获取与所述待渲染模型的模型名称匹配的模型文件;
生成子模块,用于根据所述第二位置信息以及与所述待渲染模型对应的模型文件,生成用于所述游戏引擎对所述待渲染模型进行渲染的第二场景文件。
可选的,
所述第一位置信息和所述第二位置信息均包括用于表征缩放的缩放三维向量、用于表征位移的位移三维向量以及用于表征旋转的旋转四元数,所述位置信转换子模块具体用于:
将所述第一位置信息的缩放三维向量中的y轴数值与z轴数值进行调换,得到所述第二位置信息的缩放三维向量;
将所述第一位置信息的位移三维向量中的y轴数值与z轴数值进行调换,得到所述第二位置信息的位移三维向量;
将所述第一位置信息的旋转四元数中的y轴数值与z轴数值进行调换,以及对所述第一位置信息的旋转四元数的实数部分取负值,得到所述第二位置信息的旋转四元数;
其中,所述y轴与所述z轴相互垂直,且所述y轴与z轴构成的平面与水平面垂直。
本发明实施例还公开了一种装置,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述装置执行如上任一项所述的游戏模型渲染的方法。
本发明实施例还公开了一种机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如上任一项所述的游戏模型渲染的方法。
本发明实施例包括以下优点:
在本发明实施例中,通过获取三维制作软件生成的第一场景文件,其中,第一场景文件包含模型,以及模型在第一空间坐标系下的第一位置信息,根据第一场景文件生成用于预置游戏引擎进行模型渲染的第二场景文件,其中,第二场景文件包含模型的第二位置信息,第二位置信息为对第一位置信息进行转换后,获得的针对游戏引擎的第二空间坐标系下的位置信息,解决了三维制作软件与游戏引擎之间由于坐标系不同导致的位置无法直接还原的问题,提高了三维制作软件与游戏引擎之间文件的兼容性,同时,避免了美工人员重复对场景模型进行搭建,提高了美工人员的工作效率。
附图说明
图1是本发明的一种游戏模型渲染的方法实施例一的步骤流程图;
图2是本发明的一种游戏模型渲染的方法实施例提供的坐标系转换示意图;
图3是本发明的一种游戏模型渲染的方法实施例二的步骤流程图;
图4是本发明的一种游戏模型渲染的装置实施例的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
参照图1,示出了本发明的一种游戏模型渲染的方法实施例一的步骤流程图,具体可以包括如下步骤:
步骤101,获取三维制作软件生成的第一场景文件,其中,第一场景文件包含模型,以及模型在第一空间坐标系下的第一位置信息;
作为一种示例,游戏场景可以是游戏中的室内场景,也可以是室外场景。对于游戏场景,其可以由各种不同的模型组成,如建筑、树木、花草以及地形等模型,可以通过将各模型进行空间位置的组合,可以形成一个完整的游戏场景。
其中,对于单个模型而言,可以添加“挂接点”,“挂接点”用于标识其他“子”模型在此“父”模型下的位置,“挂接”在父模型下的子模型可以是任意模型,也可以不挂任何模型只标记一个位置,通过程序可以在游戏内部动态决定具体的“挂接”模型。
美工人员可以通过三维制作软件对游戏场景中的各个模型进行设计,并将设计完成的模型进行组合,生成对应的游戏场景,以及存储为第一场景文件,接着将制作完成的游戏场景导入相应的游戏引擎进行渲染。
其中,第一场景文件中可以包括游戏场景中所有的模型、模型在第一空间坐标系下的第一位置信息,第一空间坐标系为适配于三维制作软件的空间坐标系,第一位置信息可以包括模型在空间坐标系中的位移、缩放以及旋转信息。
在本发明实施例中,由于三维制作软件与游戏引擎采用的坐标系不同,需要将基于三维制作软件的坐标系转换为基于游戏引擎的坐标系,从而使得三维制作软件导出的游戏场景模型的空间位置信息可以在游戏引擎中还原。
在具体实现中,当美工人员在三维制作软件中完成对游戏场景的设计后,可以导出针对预置游戏引擎的模型文件,其中,游戏场景中每一个模型均可以对应模型文件,在导出的过程中,只有被选中的模型才会导出对应的模型文件。在具体实现中,模型文件可以包括后缀为“.gim”的模型文件、后缀为“.mesh”的模型文件,以及后缀为“.mtg”的模型文件,其中,“.gim”文件记录了模型在游戏场景中的位置信息;“.mesh”文件为包含模型网格信息的二进制文件;“.mtg”文件为材质文件。“.gim”文件、“.mesh”文件以及“.mtg”文件为可扩展标记语言文件。
需要说明的是,第一场景文件中记录的第一位置信息为模型在空间坐标系下的空间位置信息(三维空间向量,或四元数等),如模型的位移、缩放以及旋转信息等。而“.gim”文件记录的是模型在游戏场景中的位置信息,则为模型(“子”模型)挂接于“父”模型的挂接点信息,如在一块矩形场景中的四个顶角分别对应四个防御塔模型,则防御塔模型(“子”模型)挂接于矩形场景(“父”模型)的四个顶角,即“.gim”文件中记录的位置信息为矩形场景的顶角,而第一位置信息为该防御塔模型在空间坐标系下的坐标信息。
在具体实现中,当美工人员在三维制作软件中完成对游戏场景的设计后,可以导出适配于游戏引擎的模型文件,用于生成针对游戏引擎的第二场景文件。
在本发明实施例的一种可选实施例中,当美工人员在三维制作软件中完成游戏场景的设计后,可以获取三维制作软件中所有模型的模型名称,并根据模型名称对三维制作软件导出的与模型适配的模型文件进行命名。
在具体实现中,可以根据游戏场景的场景名称以及模型的模型名称和标识信息,对导出的模型文件进行命名,从而可以依据命名格式,确定模型与模型文件之间的映射关系,游戏场景可以对应一个或多个模型,每一个模型对应一组模型文件,一个游戏场景对应一组或多组模型文件,从而通过统一化的命名保证了模型文件夹结构、美术资源的规范性,同时,有利于游戏引擎对模型文件的读取,进一步提高了场景构建的效率。
具体的,模型文件可以以游戏场景的场景名称以及模型的模型名称和标识信息加下划线加数字命名,如游戏场景的场景名称为资源地,资源地包括树木模型(ziyuandi_tree)、岩石模型(ziyuandi_stone)等,则第一个树木模型对应的模型文件的命名格式可以为“ziyuandi_tree_01.gim”、“ziyuandi_tree_01.mesh”以及“ziyuandi_tree_01.mtg”,第二个树木模型对应的模型文件的命名格式可以为“ziyuandi_tree_02.gim”、“ziyuandi_tree_02.mesh”以及“ziyuandi_tree_02.mtg”,岩石模型对应的模型文件的命名格式可以为“ziyuandi_stone_01.gim”、“ziyuandi_stone_01.mesh”、“ziyuandi_stone_01.mtg”等。
步骤102,根据所述第一场景文件生成用于预置游戏引擎进行模型渲染的第二场景文件。
在本发明实施例中,可以根据第一场景文件生成用于预置游戏引擎进行模型渲染的第二场景文件,其中,第二场景文件包含模型的第二位置信息,第二位置信息为对第一位置信息进行转换后,获得的针对游戏引擎的第二空间坐标系下的位置信息。
其中,第二场景文件中可以包括游戏场景中所有的模型,以及模型在第二空间坐标系下的第二位置信息,第二空间坐标系为适配于游戏引擎的空间坐标系,第二位置信息可以包括模型在第二空间坐标系中的位移、缩放以及旋转信息。
在本发明实施例的一种可选实施例中,步骤102可以包括如下子步骤:
子步骤S11,从第一场景文件中提取待渲染模型的第一位置信息;
在具体实现中,可以获取待渲染模型的模型名称,然后根据该模型名称,从第一场景文件中提取与待渲染模型对应的第一位置信息,从而可以对第一位置信息进行转换。
子步骤S12,对待渲染模型的第一位置信息进行转换,得到待渲染模型在预置游戏引擎的第二空间坐标系下的第二位置信息;
在本发明实施例中,当提取了待渲染模型对应的第一位置信息后,可以对第一位置信息进行转换,从而得到待渲染模型在游戏引擎的第二空间坐标系下的第二位置信息。
在具体实现中,第一场景文件中记录了模型在游戏场景的第一位置信息,如模型相对于坐标系的位移信息、缩放信息以及转换信息等,模型文件中记录了模型在游戏场景中的挂接点信息。当导出第一场景文件后,可以从第一场景文件中获取模型在游戏场景的第一位置信息,接着对第一位置信息进行转换,从而将基于三维制作软件的第一空间坐标系下的第一位置信息转换为基于游戏引擎的第二空间坐标系下的第二位置信息,然后采用模型文件以及第二位置信息生成用于游戏引擎进行模型渲染的第二场景文件。
在本发明实施例的一种示例中,第一位置信息和第二位置信息均包括用于表征缩放的缩放三维向量、用于表征位移的位移三维向量以及用于表征旋转的旋转四元数,将第一位置信息转换为第二位置信息的过程可以为:
将所述第一位置信息的缩放三维向量中的y轴数值与z轴数值进行调换,得到所述第二位置信息的缩放三维向量;将所述第一位置信息的位移三维向量中的y轴数值与z轴数值进行调换,得到所述第二位置信息的位移三维向量;将所述第一位置信息的旋转四元数中的y轴数值与z轴数值进行调换,以及对所述第一位置信息的旋转四元数的实数部分取负值,得到所述第二位置信息的旋转四元数。
其中,y轴与z轴相互垂直,且所述y轴与z轴构成的平面与水平面垂直。并且第一空间坐标系的x轴垂直于所述y轴与z轴构成的平面。
在具体实现中,在第一场景文件中,采用一个三维向量表示模型在第一空间坐标系下的位移信息,以及采用一个三维向量表示模型在第一空间坐标系下的缩放信息,采用一个四元数表示模型在第一空间坐标系下的旋转信息。游戏插件可以通过从第一场景文件中提取与待渲染模型对应的第一位置信息后,对模型进行第一位置信息的转换,将第一位置信息转换为待渲染模型在游戏引擎的第二空间坐标系下的第二位置信息,从而提高了三维制作软件和游戏引擎之间游戏场景中模型位置信息的兼容性。
其中,第一位置信息为与三维制作软件适配的模型在第一空间坐标系下的位置信息,而第二位置信息为与游戏引擎适配的模型在第二空间坐标系下的位置信息。其中,第一位置信息可以包括缩放信息、位移信息以及旋转信息等,第二空间信息也可以包括缩放信息、位移信息以及旋转信息等,两者区别在于,第一位置信息为适配于三维制作软件中第一空间坐标系下的位置信息,而第二位置信息为适配于游戏引擎中第二空间坐标系下的位置信息,可以通过对与三维制作软件适配的第一位置信息进行转换,得到与游戏引擎适配的第二位置信息。
在具体实现中,可以从第一场景文件中记录的待渲染模型的第一位置信息,提取针对待渲染模型用于表征位移信息的位移三维向量(x,y,z)、用于表征缩放信息的缩放三维向量(x,y,z)以及用于表征旋转信息的四元数(x,y,z,w)。其中,在四元数(x,y,z,w),x、y、z表示空间坐标轴数值,w表示四元数的实数部分。
在具体实现中,可以将缩放三维向量的y轴数值与z轴数值进行调换,将位移三维向量中的y轴数值与z轴数值进行调换,以及提取四元数中的y轴数值、z轴数值与实数部分,接着将y轴数值与z轴数值进行调换,并对实数部分取负值,从而完成对待渲染模型的第一位置信息的转换,得到第二位置信息。
其中,采用一个四元数(x,y,z,w)表示原始坐标系的旋转信息,则进行坐标系旋转后,转换坐标系后的四元数为(x,z,y,-w);而对于坐标系的缩放信息以及位移信息,只需要进行y轴和z轴的数值对调即可。
从而可以将基于三维制作软件由z轴向上的坐标系,转换为基于游戏引擎y轴向上的坐标系,从而可以通过场景转换工具以编程语言的方式将基于三维制作软件的第一位置信息转换为适配于游戏引擎的第二位置信息,实现了三维制作软件与游戏引擎之间模型位置信息的互通,避免了美工人员重复在游戏引擎中搭建场景,提高了美工人员的工作效率,进而节约了人力和时间成本。
子步骤S13,根据待渲染模型的模型名称,获取与待渲染模型的模型名称匹配的模型文件;
子步骤S14,根据第二位置信息以及与待渲染模型对应的模型文件,生成用于游戏引擎对待渲染模型进行渲染的第二场景文件。
在本发明实施例中,当将待渲染模型的第一位置信息转换为第二位置信息后,可以采用第二位置信息以及与待渲染模型对应的模型文件,生成用于游戏引擎对待渲染模型进行渲染的第二场景文件。
在具体实现中,参考图2示出了本发明实施例提供的坐标系转换示意图,其中,左边对应的是三维制作软件的坐标系,右边对应的是游戏引擎的坐标系,将第一场景文件中记录的待渲染模型的第一位置信息进行转换得到第二位置信息后,可以获取“.gim”文件中采用4×4的矩阵记录的位移、旋转以及缩放信息三维数组,如“1,0,0,0,0,1,0,0,0,01,0,7.9676,-1,-13.9597,1”,并将第二位置信息乘以该三维数组,得到包括转换后的位移、旋转以及缩放信息的目标矩阵,从而可以将该目标矩阵写入适配于游戏引擎的第二场景文件中,进而将第二位置信息写入第二场景文件。
在具体实现中,第二场景文件本质上为可扩展编程语言文件。则可以将从第一场景文件中获取待渲染模型的位移、旋转以及缩放信息,并进行转换后,得到第二位置信息,并写入第二场景文件。
其中,在第二场景文件中,位移信息以及缩放信息采用的是三维数组的方式表示,而旋转信息则采用的是一个4×4的矩阵表示,转换过程如上所述,在此不再赘述。
在具体实现中,可以通过读取第一场景文件中记录的待渲染模型在游戏场景的第一位置信息,并将待渲染模型基于三维制作软件的第一位置信息转换为与游戏引擎适配的第二位置信息,从而将模型文件中原始记录的第一位置信息转换为适配于游戏引擎的第二位置信息。接着可以根据模型与游戏场景之间的映射关系,将第二位置信息写入与游戏引擎适配的场景文件中。
具体地,可以将同一文件夹中所有的模型文件(“.gim”文件)作为“键”,将模型名作为“值”,通过键值对的方式将“.gim”文件记录的挂接点信息和第一场景文件记录的第一位置信息关联在一起引用到“.scn”文件中,并读取其余模型文件(如“.mesh”文件、“.mtg”文件等),从而生成用于游戏引擎进行模型渲染的第二场景文件,从而避免了美工人员对场景模型进行繁琐且机械性的文件导出,保护了美工人员的工作积极性。
在本发明实施例中,通过获取三维制作软件生成的第一场景文件,其中,第一场景文件包含模型,以及模型在第一空间坐标系下的第一位置信息,接着根据第一场景文件生成用于预置游戏引擎进行模型渲染的第二场景文件,其中,第二场景文件包含模型的第二位置信息,第二位置信息为对第一位置信息进行转换后,获得的针对游戏引擎的第二空间坐标系下的位置信息,解决了三维制作软件与游戏引擎之间由于坐标系不同导致的位置信息无法互动的问题,提高了三维制作软件与游戏引擎之间文件的兼容性,同时,避免了美工人员重复对场景模型进行搭建,提高了美工人员的工作效率。
参考图3,示出了本发明的一种游戏模型渲染的方法实施例二的步骤流程图,具体可以包括如下步骤:
步骤301,获取三维制作软件中与待渲染模型对应的模型名称;
在具体实现中,当美工人员在三维制作软件中完成游戏场景的设计后,可以获取三维制作软件中所有待渲染模型的模型名称,并采用该模型名称对三维制作软件导出的与待渲染模型适配的模型文件进行命名。
步骤302,根据模型名称,对三维制作软件导出的与待渲染模型对应的模型文件进行命名;
在具体实现中,可以根据游戏场景的场景名称以及模型的标识信息,对模型文件进行命名,从而可以依据命名格式,确定模型与模型文件之间的映射关系,游戏场景可以对应一个或多个模型,每一个模型对应一个模型文件,一个游戏场景对应一个或多个模型文件,从而通过统一化的命名保证了模型文件夹结构、美术资源的规范性,同时,有利于游戏引擎对模型文件的读取,进一步提高了场景构建的效率。
具体的,模型文件可以以游戏场景的场景名称以及模型的标识信息加下划线加数字命名,如游戏场景的场景名称为资源地,在资源地包括树木模型、岩石模型等,则模型文件的命名格式可以为“ziyuandi_tree_01.gim”、“ziyuandi_tree_02.gim”以及“ziyuandi_stone_01.gim”等。
步骤303,获取三维制作软件生成的第一场景文件;
美工人员可以通过三维制作软件对游戏场景中的各个模型进行设计,并将设计完成的模型进行组合,生成对应的游戏场景,以及存储为第一场景文件,对第一场景文件进行位置转化后即可导入相应的游戏引擎进行渲染。
其中,第一场景文件中可以包括游戏场景中所有的模型,以及模型在第一空间坐标系下的第一位置信息,第一空间坐标系为适配于三维制作软件的空间坐标系,第一位置信息可以包括模型在空间坐标系中的位移、缩放以及旋转信息。
步骤304,根据待渲染模型的模型名称,从第一场景文件中提取与待渲染模型对应的第一位置信息;
在具体实现中,可以获取待渲染模型的模型名称,然后采用该模型名称,从第一场景文件中提取与待渲染模型对应的第一位置信息,从而可以对第一位置信息进行转换。
步骤305,对待渲染模型的第一位置信息进行转换,得到待渲染模型在预置游戏引擎的第二空间坐标系下的第二位置信息;
在具体实现中,第一场景文件中记录了模型在游戏场景的第一位置信息,如模型相对于坐标系的位移信息、缩放信息以及转换信息等,模型文件中记录了模型在游戏场景中的挂接点信息。当导出针对游戏引擎的模型文件后,可以从第一场景文件中获取模型在游戏场景的第一位置信息,接着对第一位置信息的转换,从而将基于三维制作软件的第一空间坐标系下的第一位置信息转换为基于游戏引擎的第二空间坐标系下的第二位置信息,然后采用模型文件以及第二位置信息生成用于游戏引起进行模型渲染的第二场景文件。
步骤306,根据待渲染模型的模型名称,获取与待渲染模型的模型名称匹配的模型文件;
步骤307,根据第二位置信息以及与待渲染模型对应的模型文件,生成用于游戏引擎对待渲染模型进行渲染的第二场景文件。
在本发明实施例中,当将待渲染模型的第一位置信息转换为第二位置信息后,可以采用第二位置信息以及与待渲染模型对应的模型文件,生成用于游戏引擎对待渲染模型进行渲染的第二场景文件。
在具体实现中,由于三维制作软件采用的坐标系与游戏引擎采用的坐标系为不同的坐标系,则需要将游戏场景中模型基于三维制作软件的第一空间坐标系下的第一位置信息转换为基于游戏引擎的第二空间坐标系下的第二位置信息,从而使得三维制作软件导出的游戏场景模型的空间位置信息可以在游戏引擎中进行还原。
在具体实现中,可以通过场景转换工具从三维制作软件中导出针对游戏引擎的模型文件,并对第一场景文件中记录的第一位置信息转换第二位置信息。其中,场景转换工具可以适配于三维制作软件的插件工具。
在本发明实施例的一种示例中,可以通过场景转换工具从三维制作软件导出适配游戏引擎的模型文件,并采用模型文件以及第二位置信息生成针对游戏引擎的第二场景文件。其中,场景转换工具具有资源设置接口、场景转换接口、预览接口、模型导出接口以及模型处理接口。
在本发明实施例中,资源设置接口可以用于设置游戏引擎模型文件资源匹配的文件夹目录;预览接口可以用于带蒙皮的模型文件;批量导出接口可以用于对与游戏场景对应的若干个模型文件进行批量导出;场景转换接口可以用于采用模型文件以及第二位置信息,生成用于游戏引擎进行模型渲染的第二场景文件;模型处理接口可以用于对模型文件进行挂接点处理,将子模型文件挂接到父模型文件中。
在具体实现中,可以通过对场景转换工具的资源设置接口对游戏引擎模型文件资源的文件夹目录进行设置,选择与模型文件对应的文件夹目录,接着通过预览接口导出带蒙皮的模型文件,并设置对应的文件夹目录,然后通过批量导出接口在预设文件夹中,批量导出与三维制作软件中游戏场景的模型对应的模型文件,并进行统一化命名。
在具体实现中,批量导出模型文件后,可以通过场景转换接口读取第一场景文件中记录的第一位置信息,并将模型基于三维制作软件的第一位置信息转换为基于游戏引擎的第二位置信息,进而可以采用模型文件以及第二位置信息,生成第二场景文件。
此外,还可以通过模型处理接口对模型文件进行挂接点处理。具体的,对于单个模型而言,可以添加“挂接点”,“挂接点”用于标识其他“子”模型在此“父”模型下的位置,“挂接”在父模型下的子模型可以是任意模型,也可以不挂任何模型只标记一个位置,通过程序可以在游戏内部动态决定具体的“挂接”模型,从而当通过三维制作软件对原始游戏场景模型进行编辑时,通过“父”模型与“子”模型之间的关系,可以保持三维制作软件中游戏场景模型原来的空间信息,仅需要进行简单的更新,即可在游戏引擎中还原编辑后的游戏场景模型,有利于美工人员对游戏场景进行更新和维护,提高了美工人员的工作效率。
在本发明实施例中,通过获取三维制作软件生成的第一场景文件,其中,第一场景文件包含模型,以及模型在第一空间坐标系下的第一位置信息,接着根据第一场景文件生成用于预置游戏引擎进行模型渲染的第二场景文件,其中,第二场景文件包含模型的第二位置信息,第二位置信息为对第一位置信息进行转换后,获得的针对游戏引擎的第二空间坐标系下的位置信息,解决了三维制作软件与游戏引擎之间由于坐标系不同导致的位置信息无法互动的问题,提高了三维制作软件与游戏引擎之间文件的兼容性,同时,避免了美工人员重复对场景模型进行搭建,提高了美工人员的工作效率。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图4,示出了本发明的一种游戏模型渲染的装置实施例的结构框图,具体可以包括如下模块:
第一获取模块401,用于获取三维制作软件生成的第一场景文件,其中,所述第一场景文件包含模型,以及所述模型在第一空间坐标系下的第一位置信息;
生成模块402,用于根据所述第一场景文件生成用于预置游戏引擎进行模型渲染的第二场景文件,其中,所述第二场景文件包含所述模型的第二位置信息,所述第二位置信息为对所述第一位置信息进行转换后,获得的针对所述游戏引擎的第二空间坐标系下的位置信息。
在本发明实施例的一种可选实施例中,所述装置还包括:
第二获取模块,用于获取所述三维制作软件中与待渲染模型对应的模型名称;
命名模块,用于根据所述第二获取模块获取的所述模型名称,对所述三维制作软件导出的与所述待渲染模型对应的模型文件进行命名。
在本发明实施例的一种可选实施例中,所述生成模块包括:
提取子模块,用于从所述第一场景文件中提取所述待渲染模型的第一位置信息;
转换子模块,用于对所述待渲染模型的第一位置信息进行转换,得到所述待渲染模型在所述预置游戏引擎的第二空间坐标系下的第二位置信息;
获取子模块,用于根据所述待渲染模型的模型名称,获取与所述待渲染模型的模型名称匹配的模型文件;
生成子模块,用于根据所述第二位置信息以及与所述待渲染模型对应的模型文件,生成用于所述游戏引擎对所述待渲染模型进行渲染的第二场景文件。
在本发明实施例的一种可选实施例中,所述第一位置信息和所述第二位置信息均包括用于表征缩放的缩放三维向量、用于表征位移的位移三维向量以及用于表征旋转的旋转四元数,所述位置信转换子模块具体用于:
将所述第一位置信息的缩放三维向量中的y轴数值与z轴数值进行调换,得到所述第二位置信息的缩放三维向量;
将所述第一位置信息的位移三维向量中的y轴数值与z轴数值进行调换,得到所述第二位置信息的位移三维向量;
将所述第一位置信息的四元数中的y轴数值与z轴数值进行调换,以及对所述第一位置信息的四元数的实数部分取负值,得到所述第二位置信息的旋转四元数;
其中,所述y轴与所述z轴相互垂直,且所述y轴与z轴构成的平面与水平面垂直。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本发明实施例还提供了一种装置,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述装置执行本发明实施例所述的方法。
本发明实施例还提供了一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行本发明实施例所述的方法。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种游戏模型渲染的方法和一种游戏模型渲染的装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种游戏模型渲染的方法,其特征在于,包括:
获取三维制作软件生成的第一场景文件,其中,所述第一场景文件包含模型,以及所述模型在第一空间坐标系下的第一位置信息;
根据所述第一场景文件生成用于预置游戏引擎进行模型渲染的第二场景文件,其中,所述第二场景文件包含所述模型的第二位置信息,所述第二位置信息为对所述第一位置信息进行转换后,获得的针对所述游戏引擎的第二空间坐标系的位置信息。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述三维制作软件中与待渲染模型对应的模型名称;
根据所述模型名称,对所述三维制作软件导出的与所述待渲染模型对应的模型文件进行命名。
3.根据权利要求2所述的方法,其特征在于,所述根据所述第一场景文件生成用于预置游戏引擎进行模型渲染的第二场景文件,包括:
从所述第一场景文件中提取所述待渲染模型的第一位置信息;
对所述待渲染模型的第一位置信息进行转换,得到所述待渲染模型在所述预置游戏引擎的第二空间坐标系下的第二位置信息;
根据所述待渲染模型的模型名称,获取与所述待渲染模型的模型名称匹配的模型文件;
根据所述第二位置信息以及与所述待渲染模型对应的模型文件,生成用于所述游戏引擎对所述待渲染模型进行渲染的第二场景文件。
4.根据权利要求3所述的方法,其特征在于,所述第一位置信息和所述第二位置信息均包括用于表征缩放的缩放三维向量、用于表征位移的位移三维向量以及用于表征旋转的旋转四元数,所述对所述待渲染模型的第一位置信息进行转换,得到所述待渲染模型在所述预置游戏引擎的第二空间坐标系下的第二位置信息,包括:
将所述第一位置信息的缩放三维向量中的y轴数值与z轴数值进行调换,得到所述第二位置信息的缩放三维向量;
将所述第一位置信息的位移三维向量中的y轴数值与z轴数值进行调换,得到所述第二位置信息的位移三维向量;
将所述第一位置信息的旋转四元数中的y轴数值与z轴数值进行调换,以及对所述第一位置信息的旋转四元数的实数部分取负值,得到所述第二位置信息的旋转四元数;
其中,所述y轴与所述z轴相互垂直,且所述y轴与z轴构成的平面与水平面垂直。
5.一种游戏模型渲染的装置,其特征在于,包括:
第一获取模块,用于获取三维制作软件生成的第一场景文件,其中,所述第一场景文件包含模型,以及所述模型在第一空间坐标系下的第一位置信息;
生成模块,用于根据所述第一场景文件生成用于预置游戏引擎进行模型渲染的第二场景文件,其中,所述第二场景文件包含所述模型的第二位置信息,所述第二位置信息为对所述第一位置信息进行转换后,获得的针对所述游戏引擎的第二空间坐标系下的位置信息。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括:
第二获取模块,用于获取所述三维制作软件中与待渲染模型对应的模型名称;
命名模块,用于根据所述第二获取模块获取的所述模型名称,对所述三维制作软件导出的与所述待渲染模型对应的模型文件进行命名。
7.根据权利要求6所述的装置,其特征在于,所述生成模块包括:
提取子模块,用于从所述第一场景文件中提取所述待渲染模型的第一位置信息;
转换子模块,用于对所述待渲染模型的第一位置信息进行转换,得到所述待渲染模型在所述预置游戏引擎的第二空间坐标系下的第二位置信息;
获取子模块,用于根据所述待渲染模型的模型名称,获取与所述待渲染模型的模型名称匹配的模型文件;
生成子模块,用于根据所述第二位置信息以及与所述待渲染模型对应的模型文件,生成用于所述游戏引擎对所述待渲染模型进行渲染的第二场景文件。
8.根据权利要求7所述的装置,其特征在于,所述第一位置信息和所述第二位置信息均包括用于表征缩放的缩放三维向量、用于表征位移的位移三维向量以及用于表征旋转的旋转四元数,所述位置信转换子模块具体用于:
将所述第一位置信息的缩放三维向量中的y轴数值与z轴数值进行调换,得到所述第二位置信息的缩放三维向量;
将所述第一位置信息的位移三维向量中的y轴数值与z轴数值进行调换,得到所述第二位置信息的位移三维向量;
将所述第一位置信息的旋转四元数中的y轴数值与z轴数值进行调换,以及对所述第一位置信息的旋转四元数的实数部分取负值,得到所述第二位置信息的旋转四元数;
其中,所述y轴与所述z轴相互垂直,且所述y轴与z轴构成的平面与水平面垂直。
9.一种装置,其特征在于,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述装置执行如权利要求1-4任一项所述的游戏模型渲染的方法。
10.一种机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如权利要求1-4任一项所述的游戏模型渲染的方法。
CN201910357587.4A 2019-04-29 2019-04-29 一种游戏模型渲染的方法和装置 Active CN110060341B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910357587.4A CN110060341B (zh) 2019-04-29 2019-04-29 一种游戏模型渲染的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910357587.4A CN110060341B (zh) 2019-04-29 2019-04-29 一种游戏模型渲染的方法和装置

Publications (2)

Publication Number Publication Date
CN110060341A true CN110060341A (zh) 2019-07-26
CN110060341B CN110060341B (zh) 2023-11-17

Family

ID=67321595

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910357587.4A Active CN110060341B (zh) 2019-04-29 2019-04-29 一种游戏模型渲染的方法和装置

Country Status (1)

Country Link
CN (1) CN110060341B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111352670A (zh) * 2020-03-10 2020-06-30 简吉波 虚拟现实场景加载方法、装置、虚拟现实系统及设备
CN111563031A (zh) * 2020-03-24 2020-08-21 完美世界(北京)软件科技发展有限公司 一种游戏资源查验方法、系统、存储介质以及计算设备
CN111882636A (zh) * 2020-07-24 2020-11-03 上海米哈游天命科技有限公司 一种画面渲染方法、装置、设备和介质
CN112007361A (zh) * 2020-08-31 2020-12-01 四川易利数字城市科技有限公司 一种基于三维游戏引擎进行空间模型可视化渲染的方法
CN112634446A (zh) * 2020-12-11 2021-04-09 北方信息控制研究院集团有限公司 一种基于时空一致性的多引擎三维场景数据转换方法
CN115393524A (zh) * 2022-09-02 2022-11-25 广东国地规划科技股份有限公司 一种基于三维游戏引擎的三维模型渲染方法及系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107909541A (zh) * 2017-11-13 2018-04-13 杭州电魂网络科技股份有限公司 地图转换方法及装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107909541A (zh) * 2017-11-13 2018-04-13 杭州电魂网络科技股份有限公司 地图转换方法及装置

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111352670A (zh) * 2020-03-10 2020-06-30 简吉波 虚拟现实场景加载方法、装置、虚拟现实系统及设备
CN111563031A (zh) * 2020-03-24 2020-08-21 完美世界(北京)软件科技发展有限公司 一种游戏资源查验方法、系统、存储介质以及计算设备
CN111882636A (zh) * 2020-07-24 2020-11-03 上海米哈游天命科技有限公司 一种画面渲染方法、装置、设备和介质
CN112007361A (zh) * 2020-08-31 2020-12-01 四川易利数字城市科技有限公司 一种基于三维游戏引擎进行空间模型可视化渲染的方法
CN112007361B (zh) * 2020-08-31 2023-05-30 四川易利数字城市科技有限公司 一种基于三维游戏引擎进行空间模型可视化渲染的方法
CN112634446A (zh) * 2020-12-11 2021-04-09 北方信息控制研究院集团有限公司 一种基于时空一致性的多引擎三维场景数据转换方法
CN112634446B (zh) * 2020-12-11 2023-09-26 北方信息控制研究院集团有限公司 一种基于时空一致性的多引擎三维场景数据转换方法
CN115393524A (zh) * 2022-09-02 2022-11-25 广东国地规划科技股份有限公司 一种基于三维游戏引擎的三维模型渲染方法及系统
CN115393524B (zh) * 2022-09-02 2023-06-23 广东国地规划科技股份有限公司 一种基于三维游戏引擎的三维模型渲染方法及系统

Also Published As

Publication number Publication date
CN110060341B (zh) 2023-11-17

Similar Documents

Publication Publication Date Title
CN110060341A (zh) 一种游戏模型渲染的方法和装置
CN106200983B (zh) 一种结合虚拟现实与bim实现虚拟现实场景建筑设计的系统
US20220080318A1 (en) Method and system of automatic animation generation
CN110929310A (zh) 一种云端图纸智能生成及编辑方法
CN110245368A (zh) 一种bim数据的结构化处理与存储方法
CN109816762A (zh) 一种图像渲染方法、装置、电子设备和存储介质
CN104216961B (zh) 一种数据处理方法和装置
CN105528418B (zh) 一种设计文档生成方法及装置
CN102819861A (zh) 电力系统三维设备场景建模方法
WO2013155603A1 (en) Systems and methods for displaying animations on a mobile device
CN109559384A (zh) 一种基于WebGL的网页端三维模型编辑方法
CN105094774A (zh) 一种终端系统界面的展示方法和装置
CN109145055A (zh) 一种基于Flink的数据同步方法和系统
CN112308910B (zh) 一种数据生成方法、装置及存储介质
JP4676630B2 (ja) 三次元解析モデル生成方法、装置、三次元解析モデル生成プログラム及びその記録媒体
CN109961516A (zh) 表面获取方法、装置及非暂态电脑可读取记录媒体
CN109766123A (zh) 应用程序封装方法及装置
CN114022616B (zh) 模型处理方法及装置、电子设备及存储介质
CN110297958A (zh) 数据可视化处理方法及装置
CN105824608B (zh) 处理对象的处理、插件生成方法及装置
KR20130017697A (ko) 로봇의 시뮬레이션 모델 추출 방법 및 장치
JP2005084780A (ja) データ圧縮装置、データ圧縮方法、データ伸張装置、データ伸張方法、データ構造、n次元形状モデル処理装置並びにプログラムおよび記録媒体
CN110852035A (zh) 可自主学习的pcb设计平台
CN113378334B (zh) 地下管线参数化建模方法、系统及计算机可读存储介质
CN114596393B (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
GR01 Patent grant
GR01 Patent grant