掌桥专利:专业的专利平台
掌桥专利
首页

一种家装影视动画方法、装置、电子设备及存储介质

文献发布时间:2023-06-19 11:29:13


一种家装影视动画方法、装置、电子设备及存储介质

技术领域

本申请涉及家居设计技术领域,具体而言,涉及一种家装影视动画方法、装置、电子设备及存储介质。

背景技术

利用现有技术在制作动画时,只能够对相机的行进路线设置起点和终点,然后在预览没问题之后提交生成动画。该技术不能够对场景中的各类模型进行动画设置,生成的动画模式单一,不具有多样性;在制作动画的时候不能够实时预览到生成的动画光线等渲染问题,只能在上一次的结果上进行再次调整之后再次提交生成新的动画,步骤繁杂,增加渲染服务器的资源压力。

发明内容

本申请实施例的目的在于提供一种家装影视动画方法、装置、电子设备及存储介质,对家装设计场景中的各类模型进行动画设置,无需提交渲染服务器进行渲染,解决了现有方法动画模式单一、步骤繁杂、增加了渲染服务器的资源压力的问题。

本申请实施例提供了一种家装影视动画方法,所述方法包括:

获取待生成动画的所有模型数据,并使用唯一身份标识对所述模型数据分别进行标记;

对所述模型数据通过所述唯一身份标识添加动画模板,并确定动画模板的模板属性;

利用所述模板属性对绑定的所述模型属性根据时间进行逐帧计算,以生成模型数据信息;

收集所述模型数据信息,并提交至实时光线追踪器,以生成渲染动画。

在上述实现过程中,家居场景中的模型均可以添加特定的动画模板实现其动画效果,动画模板具有多样性;不需要提交数据至渲染服务器等待云端渲染,可以直接在实时光线追踪渲染器上预览动画效果,所以节省了制作渲染动画的时间和成本,从而解决了现有方法动画模式单一、步骤繁杂、增加了渲染服务器的资源压力的问题。

进一步地,所述获取待生成动画的所有模型数据,并使用唯一身份标识对所述模型数据分别进行标记,包括:

利用字符串标记每一个所述模型数据,所述模型数据对应的模型包括成品模型、定制参数化柜体、定制板件、台面和脚线;

通过JSON格式对所述模型数据进行编码存储。

在上述实现过程中,唯一身份标识可以是一组十六进制的字符串,用于标记每一个模型对应的模型数据并通过JSON格式对所述模型数据进行编码存储至方案中,可以随时访问该方案中的之前做好的影视动画方案进行修改和生成追光动画,节省制作时间和制作成本。

进一步地,所述对所述模型数据通过所述唯一身份标识添加动画模板,并确定动画模板的模板属性,包括:

将动画模板的模板属性与模型数据的模型属性进行绑定;

接收用户自定义的数据值,并添加至任意时刻的模板属性中,以确定或修改所述动画模板的模板属性,所述模板属性包括动画的初始值、结束值、动画时长以及任意时间节点的动画的运动方式。

在上述实现过程中,将动画模板的模板属性与模型数据的模型属性进行绑定,即不同模型添加不同的动画和运动方式分别绑定模型的不同属性,在时间节点中可根据当前时间改变模型的相应属性来达到动画效果。

进一步地,所述利用所述模板属性对绑定的所述模型属性根据时间进行逐帧计算,以生成模型数据信息,包括:

根据当前偏移值、初始值、结束值、动画时长计算当前时刻的运动方式对应的模型属性值;

基于任意时刻的所述模型属性值生成模型属性随时间变化的数据信息。

在上述实现过程中,利用当前偏移值、初始值、结束值、动画时长可计算模型在某一时刻的属性值,如匀速移动、先慢后快等运动方式对应的模型属性值的计算方法也不相同,但可基于上述参数进行计算。

本申请实施例还提供一种家装影视动画装置,所述装置包括:

标记模块,用于获取待生成动画的所有模型数据,并使用唯一身份标识对所述模型数据分别进行标记;

模板选取模块,用于对所述模型数据通过所述唯一身份标识添加动画模板,并确定动画模板的模板属性;

计算模块,用于利用所述模板属性对绑定的所述模型属性根据时间进行逐帧计算,以生成模型数据信息;

渲染模块,用于收集所述模型数据信息,并提交至实时光线追踪器,以生成渲染动画。

在上述实现过程中,可覆盖所有家居场景中的动画模式,针对不同的模型添加不同的动画模板并以不同的动画方式展现,且无需提交数据至渲染服务器,提高了影视动画的制作效率,解决了现有方法动画模式单一、步骤繁杂、增加了渲染服务器的资源压力的问题。

进一步地,所述标记模块包括:

字符串标记模块,用于利用字符串标记每一个所述模型数据,所述模型数据对应的模型包括成品模型、定制参数化柜体、定制板件、台面和脚线;

存储模块,用于通过JSON格式对所述模型数据进行编码存储。

在上述实现过程中,对场景中的每个模型和定制板件添加动画模板时做到一一对应,不会对同一个素材id的模型添加不同动画时产生混淆。

进一步地,所述模板选取模块包括:

绑定模块,用于将动画模板的模板属性与模型数据的模型属性进行绑定;

自定义模块,用于接收用户自定义的数据值,并添加至任意时刻的模板属性中,以确定或修改所述动画模板的模板属性,所述模板属性包括动画的初始值、结束值、动画时长以及任意时间节点的动画的运动方式。

在上述实现过程中,通过绑定的模型ID对应添加选择的动画模板,从而使得不同模型添加的不同的动画模板和运动方式绑定对应的模型属性。

进一步地,所述计算模块包括:

模型属性值计算模块,用于根据当前偏移值、初始值、结束值、动画时长计算当前时刻的运动方式对应的模型属性值;

数据信息生成模块,用于基于任意时刻的所述模型属性值生成模型属性随时间变化的数据信息。

在上述实现过程中,利用运动方式相关参数如当前偏移值、初始值、结束值、动画时长计算当前时刻的运动方式对应的模型属性值。

本申请实施例还提供一种电子设备,所述电子设备包括存储器以及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述电子设备执行上述中任一项所述的家装影视动画方法。

本申请实施例还提供一种可读存储介质,所述可读存储介质中存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行上述中任一项所述的家装影视动画方法。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本申请实施例提供的一种家装影视动画方法的流程图;

图2为本申请实施例提供的标记流程图;

图3为本申请实施例提供的影视动画的制作流程图;

图4为本申请实施例提供的模板属性确定流程图;

图5为本申请实施例提供的生成模型属性信息的流程图;

图6为本申请实施例提供的家装影视动画装置的结构框图;

图7为本申请实施例提供的家装影视动画装置的整体结构框图。

图标:

100-标记模块;101-字符串标记模块;102-存储模块;200-模板选取模块;201-绑定模块;202-自定义模块;300-计算模块;301-模型属性值计算模块;302-数据信息生成模块;400-渲染模块。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

实施例1

请参看图1,图1为本申请实施例提供的一种家装影视动画方法的流程图。该方法应用于家居场景中的所有模型的动画模式,可对成品模型、定制柜、定制板件、台面以及脚线等进行多种动画设置,该方法具体包括以下步骤:

步骤S100:获取待生成动画的所有模型数据,并使用唯一身份标识对所述模型数据分别进行标记;

如图2所示,为标记流程图,该步骤具体可以包括:

步骤S101:利用字符串标记每一个所述模型数据,所述模型数据对应的模型包括成品模型、定制参数化柜体、定制板件、台面和脚线;

步骤S102:通过JSON格式对所述模型数据进行编码存储。

具体地,如图3所示,为影视动画的制作流程图,在主页面打开影视动画界面,判断是否有历史影视动画数据,若有,则解析历史动画数据,添加相机视角动画,若无,则收集场景模型数据,点击想要添加动画的模型,给模型添加动画。示例地,在做好的方案中进入影视动画模块时,需要收集模型数据并绑定唯一UID(用户身份证明,User Identification),其目的在于对场景中的每个模型和定制板件添加动画时做到一一对应,避免对同一素材id的模型添加不同动画时产生混淆。

收集待生成动画的所有模型数据,并将唯一UID标记到模型数据中。该UID可以是一组十六进制字符串,用来标记每一个模型的模型数据,如“7E66B8D5-D424-A30F-C0FD-6AAE87241EAC”;并通过JSON格式对每一个模型数据进行编码存入方案中,可以在随时访问该方案时都能够拿到之前制作好的影视动画方案进行修改和生成光追动画。

步骤S200:对所述模型数据通过所述唯一身份标识添加动画模板,并确定动画模板的模板属性;

如图4所示,为模板属性确定流程图,该步骤具体可以包括:

步骤S201:将动画模板的模板属性与模型数据的模型属性进行绑定;

步骤S202:接收用户自定义的数据值,并添加至任意时刻的模板属性中,以确定或修改所述动画模板的模板属性,所述模板属性包括动画的初始值、结束值、动画时长以及任意时间节点的动画的运动方式。

可添加的动画模板有掉落、缩放、旋转、平移、生长动画等,对于参数化定制柜体有开门动画、板件飞入动画、关门动画等,运动方式有匀速移动、先慢后快、中间加速等7种不同的满足物理运动规律的运动方式。

不同模型添加的不同的动画和运动方式分别绑定了模型的不同属性,如掉落动画绑定了模型的z轴高度,缩放动画绑定了模型的scaleXYZ的值等,在时间节点中根据当前时间改变模型的相应属性来达到效果。

在不同的动画模板附带的模板属性与添加模型的模型属性绑定之后,可通过自定义属性值来影响动画过程。因为实现了每一时刻的模型状态的可视化,从而可以在任意时刻添加模型的动画模板和修改动画模板中的数据值,包括不同动画的初始和结束值,动画的时长以及动画的运动方式模式。

步骤S300:利用所述模板属性对绑定的所述模型属性根据时间进行逐帧计算,以生成模型数据信息;

如图5所示,为生成模型属性信息的流程图,该步骤具体可以包括:

步骤S301:根据当前偏移值、初始值、结束值、动画时长计算当前时刻的运动方式对应的模型属性值;

步骤S302:基于任意时刻的所述模型属性值生成模型网格数据或模型属性随时间变化的数据信息。

在预览制作效果时,运行动画需通过模板附带的模板属性值对绑定的模型属性值根据时间进行逐帧计算从而实现动画效果。

示例地,某一模型在某一时刻的状态为(curveName,offsetX,start,end,duration),其中curveName为运动方式名称,offsetX为当前偏移值,start为起始点时间,end为终点时间,duration为运动时长,那么该模型在某一时刻基于运动方式的属性值可表示为:

匀速移动:end*offsetX/duration+start;

先慢后快:end*(offsetX/=duration)*offsetX*offsetX+start;

先快后慢:end*((offsetX=offsetX/duration-1)*offsetX*offsetX+1)+start;

中间加速:

起始摆动,先慢后快:

end*(offsetX/=duration)*offsetX*((1.70158+1)*offsetX-1.70158)+start;

先快后慢,结尾摆动:

end*((offsetX=offsetX/duration-1)*offsetX*((1.70158+1)*offsetX+1.70158)+1)+start;

起始结尾均摆动:

if((offsetX/=duration/2)<1)

{

return end/2*(offsetX*offsetX*(((s*=(1.525))+1)*offsetX-s))+start;

}

else

{

return end/2*((offsetX-=2)*t*(((s*=(1.525))+1)*offsetX+s)+2)+start;

};

可根据每种运动方式的不同,进行具体计算。

步骤S400:收集所述模型数据信息,并提交至实时光线追踪器,以生成渲染动画。

可将每一个时间节点的模型对每一帧的模型mesh数据进行收集,汇总后将相机数据和模型mesh数据转换为Float32Array数据便于传输和保存。最后提交至光追渲染器来生成渲染动画。

将生成的渲染动画数据跟随方案数据一起保存,可以随时打开并进行编辑或修改已经制作好的影视动画。

此外,利用该方法还可以根据模型的大小以及距离相机的位置一键自动智能生成所有模型动画,大大提高了影视动画制作的效率;在视频制作时还支持光线追踪同步渲染技术,可以即刻预览制作的动画效果,对于布光的修改可以更加随意便捷,无需提交数据至渲染服务器,减少了存储动画数据的网络空间,通过光追渲染技术能够节省制作动画的时间和成本;另外,相对于利用渲染服务器来说,生成的渲染视频帧率提高到了30-60帧,使动画效果更加流畅,更加逼真。

实施例2

本申请实施例提供一种家装影视动画装置,如图6所示,为家装影视动画装置的结构框图,所述装置包括:

标记模块100,用于获取待生成动画的所有模型数据,并使用唯一身份标识对所述模型数据分别进行标记;

模板选取模块200,用于对所述模型数据通过所述唯一身份标识添加动画模板,并确定动画模板的模板属性;

计算模块300,用于利用所述模板属性对绑定的所述模型属性根据时间进行逐帧计算,以生成模型数据信息;

渲染模块400,用于收集所述模型数据信息,并提交至实时光线追踪器,以生成渲染动画。

其中,如图7所示,为家装影视动画装置的整体结构框图,所述标记模块100包括:

字符串标记模块101,用于利用字符串标记每一个所述模型数据,所述模型数据对应的模型包括成品模型、定制参数化柜体、定制板件、台面和脚线;

存储模块102,用于通过JSON格式对所述模型数据进行编码存储。

所述模板选取模块200包括:

绑定模块201,用于将动画模板的模板属性与模型数据的模型属性进行绑定;

自定义模块202,用于接收用户自定义的数据值,并添加至任意时刻的模板属性中,以确定或修改所述动画模板的模板属性,所述模板属性包括动画的初始值、结束值、动画时长以及任意时间节点的动画的运动方式。

所述计算模块300包括:

模型属性值计算模块301,用于根据当前偏移值、初始值、结束值、动画时长计算当前时刻的运动方式对应的模型属性值;

数据信息生成模块302,用于基于任意时刻的所述模型属性值生成模型网格数据或模型属性随时间变化的数据信息。

本申请实施例还提供一种电子设备,所述电子设备包括存储器以及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述电子设备执行实施例1中所述的家装影视动画方法。

本申请实施例还提供一种可读存储介质,所述可读存储介质中存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行实施例1中所述的家装影视动画方法。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

相关技术
  • 一种家装影视动画方法、装置、电子设备及存储介质
  • 一种家装素材移动方法、装置、计算机设备和存储介质
技术分类

06120112939049