CN117392307A - 高光贴图的生成方法、装置、电子设备及存储介质 - Google Patents
高光贴图的生成方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN117392307A CN117392307A CN202311132237.0A CN202311132237A CN117392307A CN 117392307 A CN117392307 A CN 117392307A CN 202311132237 A CN202311132237 A CN 202311132237A CN 117392307 A CN117392307 A CN 117392307A
- Authority
- CN
- China
- Prior art keywords
- specified shape
- specified
- target
- highlight
- shape
- 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 68
- 238000003860 storage Methods 0.000 title claims abstract description 30
- 238000005070 sampling Methods 0.000 claims abstract description 134
- 238000009877 rendering Methods 0.000 claims abstract description 31
- 230000001276 controlling effect Effects 0.000 claims abstract description 15
- 230000001105 regulatory effect Effects 0.000 claims abstract description 11
- 230000004044 response Effects 0.000 claims description 22
- 230000000694 effects Effects 0.000 claims description 15
- 239000013598 vector Substances 0.000 claims description 14
- 230000008859 change Effects 0.000 claims description 6
- 230000004048 modification Effects 0.000 description 14
- 238000012986 modification Methods 0.000 description 14
- 230000003993 interaction Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000009499 grossing Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000007704 transition Effects 0.000 description 4
- 230000001680 brushing effect Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 3
- 238000009826 distribution Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 239000002184 metal Substances 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000005452 bending Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/50—Lighting effects
- G06T15/506—Illumination models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/04—Texture mapping
Landscapes
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
本公开涉及计算机技术领域,提供一种高光贴图的生成方法、装置、电子设备及存储介质;其中,该方法包括:响应于针对指定形状的高光贴图生成指令,获取基于绘制轨迹的路径点集,各路径点记录有对应的缩放值,缩放值用于调整对应位置的形状;基于路径点集生成多个面片;基于各路径点记录的缩放值对多个面片进行调控,得到指定形状对应的曲面;对预置的纹理贴图进行采样得到采样后的纹理信息,通过指定形状对应的曲面和采样后的纹理信息进行渲染,得到指定形状的高光贴图。该方法,能够实现图形中各位置的宽窄随意调整,还保证了高光部分的连续均匀的特性,实现了特定形状高光贴图的平滑均匀特性,进而能够高效生成高质量的特定形状高光贴图。
Description
技术领域
本公开涉及计算机技术领域,尤其是涉及一种高光贴图的生成方法、装置、电子设备及存储介质。
背景技术
渲染中,在一些特定的场景或者角色需要实现特定形状的高光效果,例如,H形高光(H-shaped highlight),H形高光指的是在卡通渲染中金属上表现出来的形似“H”形状的高光现象。对于指定形状的高光贴图的制作,目前,一般都是使用人工使用绘制工具拉出对应的形状,分别在拉出的形状的纹理坐标UV方向上使用渐变工具填充红绿通道,然后通过人工调整形状的宽窄和位置。
上述方法,只能实现方向固定的指定形状高光效果,即高光的方向只能分布在一条直线上,对于曲线和宽窄各异的需求无法满足;手工绘制除了无法保证连续均匀的特性外,还耗费大量人力,效率极低,且达不到预期的渲染效果,导致了一些绘制技巧和软件操作功底成为了决定H形高光贴图质量的唯一因素,进而导致了无法高效生成高质量的特定形状高光贴图。
发明内容
有鉴于此,本公开的目的在于提供一种高光贴图的生成方法、装置、电子设备及存储介质,通过基于绘制轨迹和缩放值生成对应的曲面,根据该曲面输出对应的指定形状的高光贴图,能够实现图形中各位置的宽窄随意调整,还保证了高光部分的连续均匀的特性,实现了特定形状高光贴图的平滑均匀特性,进而能够高效生成高质量的特定形状高光贴图。
第一方面,本公开实施例提供了一种高光贴图的生成方法,所述高光贴图的生成方法包括:
响应于针对指定形状的高光贴图生成指令,获取基于绘制轨迹的路径点集;其中,所述路径点集中的各路径点记录有对应的缩放值,所述缩放值用于调整对应位置的形状;
基于所述路径点集生成与所述绘制轨迹对应的曲线,得到目标轨迹曲线,基于所述目标轨迹曲线生成多个面片;
基于各路径点记录的缩放值对所述多个面片中对应的面片进行调控,得到指定形状对应的曲面;
对预置的纹理贴图进行采样得到采样后的纹理信息,通过所述指定形状对应的曲面和所述采样后的纹理信息进行渲染,得到所述指定形状的高光贴图。
第二方面,本公开实施例提供了一种高光贴图的生成装置,所述高光贴图的生成装置包括:
第一获取模块,用于响应于针对指定形状的高光贴图生成指令,获取基于绘制轨迹的路径点集;其中,所述路径点集中的各路径点记录有对应的缩放值,所述缩放值用于调整对应位置的形状;
生成模块,用于基于所述路径点集生成与所述绘制轨迹对应的曲线,得到目标轨迹曲线,基于所述目标轨迹曲线生成多个面片;
调控模块,用于基于各路径点记录的缩放值对所述多个面片中对应的面片进行调控,得到指定形状对应的曲面;
渲染模块,用于对预置的纹理贴图进行采样得到采样后的纹理信息,通过所述指定形状对应的曲面和所述采样后的纹理信息进行渲染,得到所述指定形状的高光贴图。
第三方面,本公开实施例提供了一种电子设备,包括处理器和存储器,存储器存储有能够被处理器执行的机器可执行指令,处理器执行机器可执行指令以实现上述高光贴图的生成方法。
第四方面,本公开实施例提供了一种计算机可读存储介质,计算机可读存储介质存储有机器可执行指令,机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现上述高光贴图的生成方法。
本公开实施例带来了以下有益效果:
上述高光贴图的生成方法、装置、电子设备及存储介质,响应于针对指定形状的高光贴图生成指令,获取基于绘制轨迹的路径点集;其中,所述路径点集中的各路径点记录有对应的缩放值,所述缩放值用于调整对应位置的形状;基于所述路径点集生成与所述绘制轨迹对应的曲线,得到目标轨迹曲线,基于所述目标轨迹曲线生成多个面片;基于各路径点记录的缩放值对所述多个面片中对应的面片进行调控,得到指定形状对应的曲面;对预置的纹理贴图进行采样得到采样后的纹理信息,通过所述指定形状对应的曲面和所述采样后的纹理信息进行渲染,得到所述指定形状的高光贴图。该方法中,通过基于绘制轨迹和缩放值生成对应的曲面,根据该曲面输出对应的指定形状的高光贴图,能够实现图形中各位置的宽窄随意调整,还保证了高光部分的连续均匀的特性,实现了特定形状高光贴图的平滑均匀特性,进而能够高效生成高质量的特定形状高光贴图。
本公开的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本公开而了解。本公开的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本公开具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施方式,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例提供的高光贴图的生成方法的一个实施例示意图;
图2为本公开实施例提供的高光贴图的生成方法的另一个实施例示意图;
图3为本公开实施例提供的一种高光贴图的生成装置的示意图;
图4为本公开实施例提供的一种电子设备的示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合附图对本公开的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
基于上述,本公开实施例提供了一种高光贴图的生成方法、装置、电子设备及存储介质。主要应用在游戏中。
在本公开其中一种实施例中的高光贴图的生成方法,可以运行于终端设备或者是服务器。其中,终端设备可以为本地终端设备。当高光贴图的生成方法运行于服务器时,该方法则可以基于云交互系统来实现与执行,其中,云交互系统包括服务器和客户端设备。
在一可选的实时方式中,云交互系统下可以运行各种云应用,例如:云游戏。以云游戏为例,云游戏是指以云计算为基础的游戏方式。在云游戏的运行模式下,游戏程序的运行主体和游戏画面呈现主体是分离的,信息交互方法的储存与运行是在云游戏服务器上完成的,客户端设备的作用用于数据的接收、发送以及游戏画面的呈现,举例而言,客户端设备可以是靠近用户侧的具有数据传输功能的显示设备,如,移动终端、电视机、计算机、掌上电脑等;但是进行信息处理的终端设备为云端的云游戏服务器。在进行游戏时,玩家操作客户端设备向云游戏服务器发送操作指令,云游戏服务器根据操作指令运行游戏,将游戏画面等数据进行编码压缩,通过网络返回客户端设备,最后,通过客户端设备进行解码并输出游戏画面。
在一可选的实施方式中,终端设备可以为本地终端设备。以游戏为例,本地终端设备存储有游戏程序并用于呈现游戏画面。本地终端设备用于通过图形用户界面与玩家进行交互,即,常规的通过电子设备下载安装游戏程序并运行。该本地终端设备将图形用户界面提供给玩家的方式可以包括多种,例如,可以渲染显示在终端的显示屏上,或者,通过全息投影提供给玩家。举例而言,本地终端设备可以包括显示屏和处理器,该显示屏用于呈现图形用户界面,该图形用户界面包括游戏画面,该处理器用于运行该游戏、生成图形用户界面以及控制图形用户界面在显示屏上的显示。
为便于理解,下面对本公开实施例的具体流程进行描述,请参阅图1,本公开实施例中高光贴图的生成方法的一个实施例包括如下步骤:
步骤101,响应于针对指定形状的高光贴图生成指令,获取基于绘制轨迹的路径点集;其中,路径点集中的各路径点记录有对应的缩放值,缩放值用于调整对应位置的形状;
上述指定形状可为H-shaped highlight H形高光、圆形、方形、椭圆形或者其他自定义形状,具体在此不做限定。作为示例而非限定的是,上述绘制轨迹可理解为画布上触控操作对应的轨迹,上述触控操作可为触控工具对应的触控事件,上述触控工具可为鼠标、笔刷,在此不做具体限定,上述触控事件可理解为按下事件、移动事件或释放事件,在此不做具体限定;上述绘制轨迹对应的形状可为一条直线或者一条曲线,在此不做具体限定。进一步,上述缩放值可理解为用于调整指定形状对应的图形中各位置的宽窄(即形状,尺寸)。
可选的,上述获取基于绘制轨迹的路径点集的实现步骤可包括:监听画布上的触控操作,并记录触控操作对应的坐标信息,得到绘制轨迹对应的数据;对绘制轨迹对应的数据进行采样,得到绘制轨迹对应的采样点;获取各采样点对应的数据,将各采样点对应的数据添加到预置的路径点列表中,得到基于绘制轨迹的路径点集,其中,各采样点对应的数据包括采样点的坐标信息和对应的缩放值。其中,作为示例而非限定的是,上述缩放值可为预先配置的。
步骤102,基于路径点集生成与绘制轨迹对应的曲线,得到目标轨迹曲线,基于目标轨迹曲线生成多个面片;
上述基于路径点集生成与绘制轨迹对应的曲线,得到目标轨迹曲线可理解为通过路径点集构建具有平滑过渡、没有角点或明显的连接缝隙的曲线,即可理解为:上述目标轨迹曲线为与绘制轨迹对应的平滑的曲线,作为示例而非限定的是,上述目标轨迹曲线可为B-样条曲线(B-spline Curve)、贝塞尔曲线、非均匀有理B样条(Non-Uniform Rational B-Spline,NURBS)曲线、埃尔米特(Hermite)曲线或Catmull-Rom曲线,具体在此不做限定。上述目标轨迹曲线由多个直线段(或者曲线段)拼接而成。
可选的,上述基于路径点集生成与绘制轨迹对应的曲线,得到目标轨迹曲线的实现步骤包括:从路径点集中确定关键点,其中,关键点包括起始点、中间点和终点;确定关键点对应的至少一个控制点;基于至少一个控制点对应配置曲线段的距离和角度,得到配置参数;基于至少一个控制点和配置参数进行曲线段连接,得到目标轨迹曲线,其中,目标轨迹曲线为贝塞尔曲线。
其中,上述基于目标轨迹曲线生成多个面片的执行方式为动态生成,即根据实际需求灵活生成,而非预先静态定义的。可选的,上述基于目标轨迹曲线生成多个面片的实现步骤具体包括:对目标轨迹曲线进行采样,得到目标轨迹曲线上的多个采样点;基于预置的横截面参数,在目标轨迹曲线上的各采样点上生成对应的横截面,其中,上述横截面参数为几何形状的面的配置参数,上述几何形状可为圆形、方形或者自定义形状;对生成的相邻两个横截面进行连接,得到连接后的多个面,其中,连接的方式可为通过三角形或四边形或者其他形状的方式进行连接;基于预设的平滑算法对连接后的多个面进行平滑,得到多个面片,其中,上述平滑算法可为拉普拉斯平滑算法或基于曲率的平滑算法,在此不做具体限定。
步骤103,基于各路径点记录的缩放值对多个面片中对应的面片进行调控,得到指定形状对应的曲面;
通过缩放值对多个面片进行调控以使得多个面片转变为指定形状对应的曲面。
可选的,上述步骤103的实现步骤包括:通过各路径点记录的缩放值确定多个面片中各面片对应的缩放值;获取各面片对应的原始顶点坐标,将各面片对应的原始顶点坐标分别与各面片对应的缩放值相乘,得到各面片缩放后对应的顶点坐标;将各面片对应的原始顶点坐标更新为各面片缩放后对应的顶点坐标,得到指定形状对应的曲面。
步骤104,对预置的纹理贴图进行采样得到采样后的纹理信息,通过指定形状对应的曲面和采样后的纹理信息进行渲染,得到指定形状的高光贴图。
上述采样后的纹理信息包括但不限于纹理坐标、颜色信息、透明度信息、法线信息、光照信息、环境信息和视差信息。
可选的,按照预设的存储策略对指定形状对应的曲面和采样后的纹理信息进行分类和存储,得到存储的数据,其中,上述存储策略用于将数据分类后存储到对应的存储空间,上述存储策略包括分类类型,数据对应的存储方式和存储位置;调用存储方式对应的渲染引擎或图形渲染器,基于存储的数据进行渲染输出,得到指定形状的高光贴图。
上述高光贴图的生成方法,通过基于绘制轨迹和缩放值生成对应的曲面,根据该曲面输出对应的指定形状的高光贴图,能够实现图形中各位置的宽窄随意调整,还保证了高光部分的连续均匀的特性,实现了特定形状高光贴图的平滑均匀特性,进而能够高效生成高质量的特定形状高光贴图。
本实施例以包括前端和后端的架构对一种高光贴图的生成方法的另一实施例进行说明,其中,前端用于指定形状的绘制、指定形状绘制所相关的数据的采集和显示,前端提供超文本标记语言(Hyper Text Markup Language,HTML)页面,前端提供图像处理软件(Adobe Photoshop)、矢量图形编辑软件(CorelDRAW)和矢量图形编辑软件AdobeIllustrator中的至少一种;后端用于指定形状绘制所相关的数据的处理、保存和导出等,即后端能够避开网页无法读写本地文件的限制的问题,能够间接把前端的指定形状绘制所相关的数据(例如,指定形状的高光贴图、(Photoshop Document,PSD)文件、工程文件)存储到用户的本地计算机上,后端可对应终端设备或者是服务器;本实施例以指定形状为H形状,本实施例实现的渲染效果为H形高光(H-shaped highlight)效果,上述H形高光可理解为在卡通渲染中金属上表现出来的形似“H”形状的高光现象。
参见图2所示的一种高光贴图的生成方法的另一实施例示意图,该高光贴图的生成包括如下步骤:
步骤201,响应于针对指定形状的高光贴图生成指令,获取基于绘制轨迹的路径点集;其中,路径点集中的各路径点记录有对应的缩放值,缩放值用于调整对应位置的形状;
在一种实现方式中,上述步骤201具体包括:响应于针对指定形状的高光贴图生成指令,获取画布上绘制工具移动的位置信息;对画布上绘制工具移动的位置信息进行采样,得到基于绘制轨迹的路径点集。
前端提供一用户界面,用户界面通过图像处理软件(Adobe Photoshop)、矢量图形编辑软件(CorelDRAW)和矢量图形编辑软件Adobe Illustrator中的至少一种显示对应的画布数据,用户通过使用电容笔或鼠标或其他工具在用户界面显示的画布上进行绘制,画布上笔刷随着电容笔或鼠标或其他工具在用户界面移动而对应移动,前端实时采集画布上笔刷移动操作对应的位置信息,上述绘制轨迹可理解为画布上笔刷移动操作对应的位置信息,服务器响应于针对指定形状的高光贴图生成指令,会实时获取前端实时采集画布上笔刷移动操作对应的位置信息(该位置信息可为坐标信息),从而得到画布上绘制工具移动的位置信息,其中,上述绘制工具可为上述的电容笔或鼠标或其他工具,也可为上述的画布上的笔刷。
服务器获得画布上绘制工具移动的位置信息后,基于预设的采样间隔对画布上绘制工具移动的位置信息进行采样,得到基于绘制轨迹的采样点,其中,上述采样间隔可根据需求而设定;响应于采样点的编辑操作(编辑操作对应编辑采样点的位置和缩放值),基于绘制轨迹的采样点的坐标进行调整,得到基于绘制轨迹的路径点集,并记录各目标采样点对应的缩放值。或者,响应于采样点的编辑操作(编辑操作对应编辑采样点的位置和缩放值),对画布上绘制工具移动的位置信息进行采样,并记录各采样点的缩放值,从而得到基于绘制轨迹的路径点集。其中,上述绘制轨迹对应为一条直线或一条曲线。
通过采样得到基于绘制轨迹的路径点集,以控制后续目标轨迹曲线上的点密度,实现了目标轨迹曲线的平滑、简化路径、控制形状以及满足特定笔刷效果。
步骤202,基于路径点集生成与绘制轨迹对应的曲线,得到目标轨迹曲线;
可选的,上述步骤202的实现步骤具体包括:根据路径点集中路径点的数量和分布确定节点向量(可通过在两路径点之间均匀采样得到节点向量),其中,上述节点向量为一个递增的参数序列,用于指示B样条曲线在参数空间中的分布;通过配置的锚点的位置以及与锚点相关联的控制手柄的位置计算得到控制点的位置,其中,锚点用于定义B样条曲线的曲线形状的点,锚点为B样条曲线经过的点,为B样条曲线上的固定点,每个锚点都对应有一个关联的控制手柄,控制手柄用于调整B样条曲线在相应区域的方向、形状和弯曲程度。锚点和控制手柄一起共同决定了曲线的形状;配置参数值,其中,参数值一般为0到1之间的值;通过预置的B样条曲线插值的计算公式,基于控制点的位置、锚点和参数值进行运算,得到曲线点集;将曲线点集的曲线点连接组合成目标轨迹曲线。目标轨迹曲线可理解为由多个无限小的直线段拼接而成,但是在计算机中,数值是离散的,不存在无限小,因而,目标轨迹曲线实际为由多个曲线段组成的光滑曲线,各曲线段的长度相同。
步骤203,对目标轨迹曲线进行采样,得到目标轨迹曲线上的多个第一采样点;
可选的,上述步骤203包括:响应于采样点数据的输入操作,基于采样点数据和目标轨迹曲线的长度确定采样间隔;基于采样间隔对目标轨迹曲线进行采样,得到目标轨迹曲线对应的多个第一采样点。
由于目标轨迹曲线是有多个曲线段组成的光滑曲线,因而,可通过获取单个曲线段的长度,以及曲线段的总数量,计算曲线段和曲线段的总数量的乘积,得到目标轨迹曲线的长度;将目标轨迹曲线的长度除以采样点数据,得到采样间隔;基于采样间隔对目标轨迹曲线进行采样,得到目标轨迹曲线对应的多个第一采样点。相邻两个第一采样点之间的距离均相同。
通过对目标轨迹曲线进行采样,以便于控制构建的面片的曲线路径和弯曲程度,以便于确定面片的形状、均匀性和细节。
步骤204,针对每个第一采样点,经过第一采样点,且沿目标轨迹曲线上第一采样点的法向量的方向或/或反方向,生成指定长度的目标线段;
可选的,针对每个目标第一采样点,经过目标第一采样点,且沿目标轨迹曲线上目标第一采样点的法向量的方向或反方向生成指定长度的目标线段。
在一种实现方式中,上述步骤204具体包括:针对每个第一采样点,经过第一采样点,且沿目标轨迹曲线上第一采样点的法向量的方向和反方向,生成每个第一采样点的第一线段和第二线段;将每个第一采样点的第一线段和第二线段进行组合,得到每个第一采样点对应的指定长度的线段;对每个第一采样点对应的指定长度的线段进行采样,得到每个第一采样点对应的目标线段;其中,每个第一采样点对应的目标线段上均匀分布有指定数量的第二采样点。
作为示例而非限定的是,上述第一线段和第二线段的长度可相等,也可不相等;上述目标线段的长度作为mesh面片的宽度,每个目标线段的长度可相同,也可不相同。
对每个第一采样点对应的指定长度的线段进行均匀采样,以使得每个第一采样点对应的目标线段上均匀分布有指定数量的第二采样点,其中,上述指定数量可由设定的均匀采样的采样间隔而定。
通过生成经过每个第一采样点对应的目标线段,以能够将目标轨迹曲线扩展成同样形状的具有宽度的mesh面片,以及后续便于对通过经过每个第一采样点对应的目标线段构建的面片进行各位置的宽窄的随意调整。
步骤205,基于每个第一采样点对应的目标线段生成多个面片;
通过目标轨迹曲线上的多个第一采样点生成多个目标线段,以及基于多个目标线段生成多个面片,实现了跟随笔刷轨迹动态生成一个平面的多个mesh面片,能够实现实时交互以及根据需求进行对应形状或图案的修改和调整。
在一种实现方式中,上述步骤205具体包括:获取各目标线段上的第二采样点对应的索引,得到点索引集,其中,第二采样点为目标线段上均匀分布的采样点;从点索引集中确定目标点索引组集;其中,目标点索引组集中的每个目标点索引组为构成三角形的点索引;将目标点索引组集添加至预先创建的三角形索引列表,基于添加目标点索引组集的三角形索引列表构建多个面片。
其中,上述每个目标点索引组包括三个构成三角形的点索引。可选的,上述从点索引集中确定目标点索引组集的实现步骤包括:将相邻两个目标线段上的第二采样点的点索引按照顺序进行组合,得到多个点索引组合,每个点索引组合均包括三个索引;计算每个点索引组合中任意两个第二采样点之间的距离,得到边长度;判断每个点索引组合是否符合指定条件,上述指定条件为点索引指向的点存在且不重复、点索引按逆时针(或顺时针)排列且不共线以及边长度均为正数;若是,则将对应的点索引组合确定为目标点索引组,从而得到目标点索引组集;若否,则不处理或者将对应的点索引删除。将目标点索引组集添加至预先创建的三角形索引列表vertices index list,基于添加目标点索引组集的三角形索引列表构建多个面片。
具体的,作为示例而非限定的是,添加目标点索引组集的三角形索引列表包括构成的各三角形对应的目标顶点数组和目标顶点索引数组,上述目标顶点数组包括构成三角形的所有顶点的顶点坐标,上述目标顶点索引数组包括构成三角形的每个顶点对应的索引;通过预置的图形库或者编程语言,基于对应的数据结构创建多个面片对象,其中,每个面片对象包括但不限于顶点数组和顶点索引数组;将各目标顶点数组中的每个顶点坐标按照对应的顺序依次添加到对应面片对象的顶点数组中,以及根据各顶点索引数组,将对应的索引添加到对应网格对象的顶点索引数组中,得到添加后的多个面片对象;调用预置的图形库和渲染引擎,基于添加后的各面片对象生成对应的面片,得到多个面片。
通过目标点索引组集构建面片,提高了面片构建的准确性,以及以便于确定了面片的形状、均匀性和细节,使得面片平滑和均匀。
步骤206,基于各路径点记录的缩放值对多个面片中对应的面片进行调控,得到指定形状对应的曲面;
在一种实现方式中,上述步骤206具体包括:基于各路径点对应的缩放值创建各路径点对应的坐标;基于所有路径点对应的坐标构建待处理曲线;对待处理曲线上任意两个路径点之间的指定轴的坐标值进行等距离采样,得到各面片对应的缩放值;通过各面片对应的缩放值对对应的面片进行缩放,得到指定形状对应的曲面。
作为示例而非限定的是,将所有路径点对应的缩放值整合成一个列表,该列表包括各缩放值对应的索引值,将各路径点对应的缩放值对应的索引值作为B样条曲线的横坐标,以及将各路径点对应的缩放值作为B样条曲线的纵坐标,从而得到各路径点对应的坐标,基于所有路径点对应的坐标构建B样条曲线(即待处理曲线),具体的构建B样条曲线的执行过程可与上述步骤202的执行过程类似,在此不再赘述,其中,需要说明的是,该步骤中的B样条曲线与上述步骤202中的B样条曲线不是同一个B样条曲线。其中,对构建的B样条曲线进行插值处理,以得到待处理曲线,以使得待处理曲线经过每个缩放值点。
由于是路径点上记录有对应的缩放值scale,但是两个路径点之间的面片并没有定义缩放值scale,因而,需要对待处理曲线上任意两个路径点之间的指定轴的坐标值进行等距离采样以获取两个路径点之间任意一点的y值(即指定轴的坐标值,也即缩放值),即各面片对应的缩放值。
获取各面片对应的原始顶点坐标,将各面片对应的原始顶点坐标分别与各面片对应的缩放值相乘,得到各面片缩放后对应的顶点坐标;将各面片对应的原始顶点坐标更新为各面片缩放后对应的顶点坐标,得到指定形状对应的曲面。
通过等距离采样得到的缩放值对对应的面片进行缩放,实现了能够随意调整图形各个位置的宽窄且保证其平滑过渡的效果,进而提高了指定形状对应的曲面的质量。
步骤207,对预置的纹理贴图进行采样得到采样后的纹理信息,通过指定形状对应的曲面和采样后的纹理信息进行渲染,得到指定形状的高光贴图;
在一种实现方式中,上述步骤207具体包括:确定指定形状对应的曲面和采样后的纹理信息中的目标数据;其中,目标数据用于指示存在明亮效果变化区域的纹理数据;将目标数据存储至绿蓝通道,将采样后的纹理信息中除了目标数据之外的纹理数据存储至红通道,得到存储的数据;基于存储的数据进行渲染,得到指定形状的高光贴图。
上述目标数据可通俗地理解为长距离(指定方向)的渐变方向(存在明亮效果变化区域)的纹理数据,上述指定方向可理解为距离较长的一边所在的方向,例如,当H形高光形状(指定形状)呈长条状时,长条状对应的所在的横轴方向。
将上述目标数据对半分成第一数据和第二数据,即第一数据的占比和第二数据的占比相同。将第一数据和第二数据分别存储至输出贴图的GB绿蓝通道,相当于分类的数据占用了16比特(bit)的存储空间,精度会翻倍,进而解决了渐变会由于精度不够呈现出阶梯状的条带问题。后续在指定形状的高光贴图导出时,可按照此格式重新解码还原成标准的RGB高动态范围贴图(High dynamic range,HDR)。
调用基于网页前端的3D图形引擎threejs中的图形渲染器WebGLRender,即基于存储的数据进行渲染输出,得到指定形状的高光贴图。前端的用户界面响应于指定形状的高光贴图的显示指令,在画布上显示指定形状的高光贴图。
进一步的,可在确定指定形状对应的曲面和采样后的纹理信息中的目标数据之前,判断指定形状(即H形状)的高光形状是否为长条状。若指定形状的高光形状为长条状,则确定采样后的纹理信息中的目标数据,即响应于指定形状的高光形状为长条状,确定采样后的纹理信息中的目标数据。
对目标数据进行分类、多通道存储,解决了渐变会由于精度不够呈现出阶梯状的条带问题,以及能够高效完成项目所需的高质量指定形状的高光贴图。
步骤208,响应于指定形状的高光贴图的保存指令,获取指定形状的高光贴图对应的指定形状绘制数据;
生成H形状(即指定形状)的高光贴图后,响应于指定形状的高光贴图的保存指令,指定形状的高光贴图对应的指定形状绘制数据。其中,指定形状绘制数据包括指定形状绘制时所用的背景图片(背景参考图)的base64编码、绘制工程的用户界面UI配置参数和H形高光参数(即指定形状高光参数),上述背景参考图置于画布的最底层,上述背景参考图用于对指定形状绘制的指引,上述H形高光参数(即指定形状高光参数)包括指定形状的高光贴图的关键点、各顶点的位置、各路径点或各面片对应的缩放值以及纹理坐标(U、V)方向。
步骤209,将指定形状绘制数据存储至指定工程文件中的指定位置;
作为示例而非限定的是,将指定形状绘制数据中的指定形状绘制时所用的背景图片(背景参考图)的base64编码以字符串的形式存储至指定工程文件中的第一行;将指定形状绘制数据中的绘制工程的用户界面UI配置参数存储至指定工程文件中的第二行;将指定形状绘制数据中的H形高光参数(即指定形状高光参数)存储至指定工程文件中的第三行。
通过指定工程文件存储指定形状绘制数据,能够间接把指定形状绘制数据存储到用户的本地计算机上,以便于在指定形状的高光贴图的基础上进行修改或二次绘制。
步骤210,响应于针对指定形状的编辑操作,加载指定工程文件得到指定形状的高光贴图;
在一种实现方式中,上述步骤211具体包括:响应于针对指定形状的编辑操作,读取指定工程文件中的指定形状绘制数据;对指定形状绘制数据进行反序列化,得到目标数据结构对象;基于目标数据结构对象进行绘制,得到画布显示内容;其中,画布显示内容包括指定形状的高光图形。
当需要对指定形状的高光贴图的修改或二次绘制(针对指定形状的编辑操作)时,加载指定工程文件,从而得到指定形状的高光图形。
其中,作为示例而非限定的是,上述目标数据结构对象为JavaScript对象。上述对指定形状绘制数据进行反序列化为:以指定工程文件中的存储位置为顺序,依次对指定形状绘制数据进行反序列化,即先对指定形状绘制数据中的指定形状绘制时所用的背景图片(背景参考图)的base64编码进行反序列化,得到第一数据结构对象,然后对指定形状绘制数据中的绘制工程的用户界面UI配置参数进行反序列化,得到第二数据结构对象,再对指定形状绘制数据中的H形高光参数(即指定形状高光参数)进行反序列化,得到第三数据结构对象。上述基于目标数据结构对象进行绘制,得到指定形状的高光图形的执行过程为:基于第一数据结构对象、第二数据结构对象和第三数据结构对象进行绘制,得到画布显示内容,其中,画布显示内容包括背景参考图和指定形状的高光图形。
通过反序列化的指定工程文件加载,能够避开网页无法读写本地文件的限制的问题,进而能够在指定形状的高光贴图的基础上进行修改或二次绘制。
步骤211,对指定形状的高光贴图进行修改更新,得到修改更新后的高光贴图。
对指定形状的高光贴图进行修改更新,得到修改更新后的高光贴图后。可将修改更新后的高光贴图对应的H形高光参数(即指定形状高光参数)对指定工程文件中存储的H形高光参数(即指定形状高光参数)进行替换,或者将修改更新后的高光贴图对应的H形高光参数(即指定形状高光参数)存储至指定工程文件中对应的位置,以将修改更新后的高光贴图存储至指定工程文件。
通过加载指定工程文件进行指定形状的高光贴图的修改更新,能够便捷地读取指定形状的高光贴图的绘制数据,在指定形状的高光贴图的基础上进行修改或二次绘制,高效完成项目所需的高质量指定形状的高光贴图。
需要说明的是,本实施例提供的高光贴图的生成方法,能够大幅度降低H形高光的绘制难度和成本,可以自由分发对应的软件来协同完成绘制任务,工具是运行在浏览器上和.NET Core上,平台兼容性良好,几乎不存在由于硬件环境的差异而导致最终输出的指定形状的高光贴图效果不一的问题,工具采用后端动态解压前端的方式来制作,包体很小(只有3MB),方便版本的分发和便携。
上述高光贴图的生成方法,通过基于绘制轨迹和缩放值生成对应的曲面,根据该曲面输出对应的指定形状的高光贴图,能够实现图形中各位置的宽窄随意调整,还保证了高光部分的连续均匀的特性,实现了特定形状高光贴图的平滑均匀特性,进而能够高效生成高质量的特定形状高光贴图,以及通过加载指定工程文件进行指定形状的高光贴图的修改更新,能够便捷地读取指定形状的高光贴图的绘制数据,在指定形状的高光贴图的基础上进行修改或二次绘制,高效完成项目所需的高质量指定形状的高光贴图。
对应于上述方法实施例,参见图3所示的一种高光贴图的生成装置的示意图,该装置包括:
第一获取模块301,用于响应于针对指定形状的高光贴图生成指令,获取基于绘制轨迹的路径点集;其中,路径点集中的各路径点记录有对应的缩放值,缩放值用于调整对应位置的形状;
生成模块302,用于基于路径点集生成与绘制轨迹对应的曲线,得到目标轨迹曲线,基于目标轨迹曲线生成多个面片;
调控模块303,用于基于各路径点记录的缩放值对多个面片中对应的面片进行调控,得到指定形状对应的曲面;
渲染模块304,用于对预置的纹理贴图进行采样得到采样后的纹理信息,通过指定形状对应的曲面和采样后的纹理信息进行渲染,得到指定形状的高光贴图。
上述高光贴图的生成装置,通过基于绘制轨迹和缩放值生成对应的曲面,根据该曲面输出对应的指定形状的高光贴图,能够实现图形中各位置的宽窄随意调整,还保证了高光部分的连续均匀的特性,实现了特定形状高光贴图的平滑均匀特性,进而能够高效生成高质量的特定形状高光贴图。
可选的,生成模块302还用于:
对目标轨迹曲线进行采样,得到目标轨迹曲线上的多个第一采样点;
针对每个第一采样点,经过第一采样点,且沿目标轨迹曲线上第一采样点的法向量的方向和/或反方向,生成指定长度的目标线段;
基于每个第一采样点对应的目标线段生成多个面片。
可选的,生成模块302还用于:
获取各目标线段上的第二采样点对应的索引,得到点索引集,其中,第二采样点为目标线段上均匀分布的采样点;
从点索引集中确定目标点索引组集;其中,目标点索引组集中的每个目标点索引组为构成三角形的点索引;
将目标点索引组集添加至预先创建的三角形索引列表,基于添加目标点索引组集的三角形索引列表构建多个面片。
可选的,调控模块303还用于:
基于各路径点对应的缩放值创建各路径点对应的坐标;
基于所有路径点对应的坐标构建待处理曲线;
对待处理曲线上任意两个路径点之间的指定轴的坐标值进行等距离采样,得到各面片对应的缩放值;
通过各面片对应的缩放值对对应的面片进行缩放,得到指定形状对应的曲面。
可选的,渲染模块304还用于:
确定指定形状对应的曲面和采样后的纹理信息中的目标数据;其中,目标数据用于指示存在明亮效果变化区域的纹理数据;
将目标数据存储至绿蓝通道,将采样后的纹理信息中除了目标数据之外的纹理数据存储至红通道,得到存储的数据;
基于存储的数据进行渲染,得到指定形状的高光贴图。
可选的,高光贴图的生成装置还包括:
第二获取模块305,用于响应于指定形状的高光贴图的保存指令,获取指定形状的高光贴图对应的指定形状绘制数据;
存储模块306,用于将指定形状绘制数据存储至指定工程文件中的指定位置。
可选的,高光贴图的生成装置还包括:
加载模块307,用于响应于针对指定形状的编辑操作,加载指定工程文件得到指定形状的高光贴图;
修改更新模块308,用于对指定形状的高光贴图进行修改更新,得到修改更新后的高光贴图。
可选的,加载模块307还用于:
响应于针对指定形状的编辑操作,读取指定工程文件中的指定形状绘制数据;
对指定形状绘制数据进行反序列化,得到目标数据结构对象;
基于目标数据结构对象进行绘制,得到画布显示内容;其中,画布显示内容包括指定形状的高光图形。
本实施例还提供一种电子设备,包括处理器和存储器,存储器存储有能够被处理器执行的机器可执行指令,处理器执行机器可执行指令以实现上述高光贴图的生成方法。该电子设备可以是服务器,也可以是终端设备。
参见图4所示,该电子设备包括处理器400和存储器401,该存储器401存储有能够被处理器400执行的机器可执行指令,该处理器400执行机器可执行指令以实现上述高光贴图的生成方法。
进一步地,图4所示的电子设备还包括总线402和通信接口403,处理器400、通信接口403和存储器401通过总线402连接。
其中,存储器401可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口403(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。总线402可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
处理器400可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器400中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器400可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DigitalSignal Processor,简称DSP)、专用集成电路(Application Specific IntegratedCircuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本公开实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本公开实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器401,处理器400读取存储器401中的信息,结合其硬件完成如下步骤:
响应于针对指定形状的高光贴图生成指令,获取基于绘制轨迹的路径点集;其中,路径点集中的各路径点记录有对应的缩放值,缩放值用于调整对应位置的形状;
基于路径点集生成与绘制轨迹对应的曲线,得到目标轨迹曲线,基于目标轨迹曲线生成多个面片;
基于各路径点记录的缩放值对多个面片中对应的面片进行调控,得到指定形状对应的曲面;
对预置的纹理贴图进行采样得到采样后的纹理信息,通过指定形状对应的曲面和采样后的纹理信息进行渲染,得到指定形状的高光贴图。
通过基于绘制轨迹和缩放值生成对应的曲面,根据该曲面输出对应的指定形状的高光贴图,能够实现图形中各位置的宽窄随意调整,还保证了高光部分的连续均匀的特性,实现了特定形状高光贴图的平滑均匀特性,进而能够高效生成高质量的特定形状高光贴图。
上述基于目标轨迹曲线生成多个面片的步骤,包括:
对目标轨迹曲线进行采样,得到目标轨迹曲线上的多个第一采样点;
针对每个第一采样点,经过第一采样点,且沿目标轨迹曲线上第一采样点的法向量的方向和/或反方向,生成指定长度的目标线段;
基于每个第一采样点对应的目标线段生成多个面片。
通过目标轨迹曲线上的多个第一采样点生成多个目标线段,以及基于多个目标线段生成多个面片,实现了跟随笔刷轨迹动态生成一个平面的多个mesh面片,能够实现实时交互以及根据需求进行对应形状或图案的修改和调整。
上述基于每个第一采样点对应的目标线段生成多个面片的步骤,包括:
获取各目标线段上的第二采样点对应的索引,得到点索引集,其中,第二采样点为目标线段上均匀分布的采样点;
从点索引集中确定目标点索引组集;其中,目标点索引组集中的每个目标点索引组为构成三角形的点索引;
将目标点索引组集添加至预先创建的三角形索引列表,基于添加目标点索引组集的三角形索引列表构建多个面片。
通过目标点索引组集构建面片,提高了面片构建的准确性,以及以便于确定了面片的形状、均匀性和细节,使得面片平滑和均匀。
上述基于各路径点记录的缩放值对多个面片中对应的面片进行调控,得到指定形状对应的曲面的步骤,包括:
基于各路径点对应的缩放值创建各路径点对应的坐标;
基于所有路径点对应的坐标构建待处理曲线;
对待处理曲线上任意两个路径点之间的指定轴的坐标值进行等距离采样,得到各面片对应的缩放值;
通过各面片对应的缩放值对对应的面片进行缩放,得到指定形状对应的曲面。
通过等距离采样得到的缩放值对对应的面片进行缩放,实现了能够随意调整图形各个位置的宽窄且保证其平滑过渡的效果,进而提高了指定形状对应的曲面的质量。
上述通过指定形状对应的曲面和采样后的纹理信息进行渲染,得到指定形状的高光贴图的步骤,包括:
确定指定形状对应的曲面和采样后的纹理信息中的目标数据;其中,目标数据用于指示存在明亮效果变化区域的纹理数据;
将目标数据存储至绿蓝通道,将采样后的纹理信息中除了目标数据之外的纹理数据存储至红通道,得到存储的数据;
基于存储的数据进行渲染,得到指定形状的高光贴图。
对目标数据进行分类、多通道存储,解决了渐变会由于精度不够呈现出阶梯状的条带问题,以及能够高效完成项目所需的高质量指定形状的高光贴图。
上述高光贴图的生成方法还包括:
响应于指定形状的高光贴图的保存指令,获取指定形状的高光贴图对应的指定形状绘制数据;
将指定形状绘制数据存储至指定工程文件中的指定位置。
通过指定工程文件存储指定形状绘制数据,能够间接把指定形状绘制数据存储到用户的本地计算机上,以便于在指定形状的高光贴图的基础上进行修改或二次绘制。
上述高光贴图的生成方法还包括:
响应于针对指定形状的编辑操作,加载指定工程文件得到指定形状的高光贴图;
对指定形状的高光贴图进行修改更新,得到修改更新后的高光贴图。
通过加载指定工程文件进行指定形状的高光贴图的修改更新,能够便捷地读取指定形状的高光贴图的绘制数据,在指定形状的高光贴图的基础上进行修改或二次绘制,高效完成项目所需的高质量指定形状的高光贴图。
上述响应于针对指定形状的编辑操作,加载指定工程文件得到指定形状的高光贴图的步骤,包括:
响应于针对指定形状的编辑操作,读取指定工程文件中的指定形状绘制数据;
对指定形状绘制数据进行反序列化,得到目标数据结构对象;
基于目标数据结构对象进行绘制,得到画布显示内容;其中,画布显示内容包括指定形状的高光图形。
通过反序列化的指定工程文件加载,能够避开网页无法读写本地文件的限制的问题,进而能够在指定形状的高光贴图的基础上进行修改或二次绘制。
上述响应于针对指定形状的高光贴图生成指令,获取基于绘制轨迹的路径点集的步骤,包括:
响应于针对指定形状的高光贴图生成指令,获取画布上绘制工具移动的位置信息;
对画布上绘制工具移动的位置信息进行采样,得到基于绘制轨迹的路径点集。
通过采样得到基于绘制轨迹的路径点集,以控制后续目标轨迹曲线上的点密度,实现了目标轨迹曲线的平滑、简化路径、控制形状以及满足特定笔刷效果。
本实施例还提供一种机器可读存储介质,机器可读存储介质存储有机器可执行指令,机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现上述高光贴图的生成方法的如下步骤:
响应于针对指定形状的高光贴图生成指令,获取基于绘制轨迹的路径点集;其中,路径点集中的各路径点记录有对应的缩放值,缩放值用于调整对应位置的形状;
基于路径点集生成与绘制轨迹对应的曲线,得到目标轨迹曲线,基于目标轨迹曲线生成多个面片;
基于各路径点记录的缩放值对多个面片中对应的面片进行调控,得到指定形状对应的曲面;
对预置的纹理贴图进行采样得到采样后的纹理信息,通过指定形状对应的曲面和采样后的纹理信息进行渲染,得到指定形状的高光贴图。
通过基于绘制轨迹和缩放值生成对应的曲面,根据该曲面输出对应的指定形状的高光贴图,能够实现图形中各位置的宽窄随意调整,还保证了高光部分的连续均匀的特性,实现了特定形状高光贴图的平滑均匀特性,进而能够高效生成高质量的特定形状高光贴图。
上述基于目标轨迹曲线生成多个面片的步骤,包括:
对目标轨迹曲线进行采样,得到目标轨迹曲线上的多个第一采样点;
针对每个第一采样点,经过第一采样点,且沿目标轨迹曲线上第一采样点的法向量的方向和/或反方向,生成指定长度的目标线段;
基于每个第一采样点对应的目标线段生成多个面片。
通过目标轨迹曲线上的多个第一采样点生成多个目标线段,以及基于多个目标线段生成多个面片,实现了跟随笔刷轨迹动态生成一个平面的多个mesh面片,能够实现实时交互以及根据需求进行对应形状或图案的修改和调整。
上述基于每个第一采样点对应的目标线段生成多个面片的步骤,包括:
获取各目标线段上的第二采样点对应的索引,得到点索引集,其中,第二采样点为目标线段上均匀分布的采样点;
从点索引集中确定目标点索引组集;其中,目标点索引组集中的每个目标点索引组为构成三角形的点索引;
将目标点索引组集添加至预先创建的三角形索引列表,基于添加目标点索引组集的三角形索引列表构建多个面片。
通过目标点索引组集构建面片,提高了面片构建的准确性,以及以便于确定了面片的形状、均匀性和细节,使得面片平滑和均匀。
上述基于各路径点记录的缩放值对多个面片中对应的面片进行调控,得到指定形状对应的曲面的步骤,包括:
基于各路径点对应的缩放值创建各路径点对应的坐标;
基于所有路径点对应的坐标构建待处理曲线;
对待处理曲线上任意两个路径点之间的指定轴的坐标值进行等距离采样,得到各面片对应的缩放值;
通过各面片对应的缩放值对对应的面片进行缩放,得到指定形状对应的曲面。
通过等距离采样得到的缩放值对对应的面片进行缩放,实现了能够随意调整图形各个位置的宽窄且保证其平滑过渡的效果,进而提高了指定形状对应的曲面的质量。
上述通过指定形状对应的曲面和采样后的纹理信息进行渲染,得到指定形状的高光贴图的步骤,包括:
确定指定形状对应的曲面和采样后的纹理信息中的目标数据;其中,目标数据用于指示存在明亮效果变化区域的纹理数据;
将目标数据存储至绿蓝通道,将采样后的纹理信息中除了目标数据之外的纹理数据存储至红通道,得到存储的数据;
基于存储的数据进行渲染,得到指定形状的高光贴图。
对目标数据进行分类、多通道存储,解决了渐变会由于精度不够呈现出阶梯状的条带问题,以及能够高效完成项目所需的高质量指定形状的高光贴图。
上述高光贴图的生成方法还包括:
响应于指定形状的高光贴图的保存指令,获取指定形状的高光贴图对应的指定形状绘制数据;
将指定形状绘制数据存储至指定工程文件中的指定位置。
通过指定工程文件存储指定形状绘制数据,能够间接把指定形状绘制数据存储到用户的本地计算机上,以便于在指定形状的高光贴图的基础上进行修改或二次绘制。
上述高光贴图的生成方法还包括:
响应于针对指定形状的编辑操作,加载指定工程文件得到指定形状的高光贴图;
对指定形状的高光贴图进行修改更新,得到修改更新后的高光贴图。
通过加载指定工程文件进行指定形状的高光贴图的修改更新,能够便捷地读取指定形状的高光贴图的绘制数据,在指定形状的高光贴图的基础上进行修改或二次绘制,高效完成项目所需的高质量指定形状的高光贴图。
上述响应于针对指定形状的编辑操作,加载指定工程文件得到指定形状的高光贴图的步骤,包括:
响应于针对指定形状的编辑操作,读取指定工程文件中的指定形状绘制数据;
对指定形状绘制数据进行反序列化,得到目标数据结构对象;
基于目标数据结构对象进行绘制,得到画布显示内容;其中,画布显示内容包括指定形状的高光图形。
通过反序列化的指定工程文件加载,能够避开网页无法读写本地文件的限制的问题,进而能够在指定形状的高光贴图的基础上进行修改或二次绘制。
上述响应于针对指定形状的高光贴图生成指令,获取基于绘制轨迹的路径点集的步骤,包括:
响应于针对指定形状的高光贴图生成指令,获取画布上绘制工具移动的位置信息;
对画布上绘制工具移动的位置信息进行采样,得到基于绘制轨迹的路径点集。
通过采样得到基于绘制轨迹的路径点集,以控制后续目标轨迹曲线上的点密度,实现了目标轨迹曲线的平滑、简化路径、控制形状以及满足特定笔刷效果。
本公开实施例所提供的高光贴图的生成方法、装置、电子设备及存储介质的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
另外,在本公开实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域技术人员而言,可以具体情况理解上述术语在本公开中的具体含义。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在本公开的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本公开和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本公开的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以权利要求的保护范围为准。
Claims (12)
1.一种高光贴图的生成方法,其特征在于,所述方法包括:
响应于针对指定形状的高光贴图生成指令,获取基于绘制轨迹的路径点集;其中,所述路径点集中的各路径点记录有对应的缩放值,所述缩放值用于调整对应位置的形状;
基于所述路径点集生成与所述绘制轨迹对应的曲线,得到目标轨迹曲线,基于所述目标轨迹曲线生成多个面片;
基于各路径点记录的缩放值对所述多个面片中对应的面片进行调控,得到指定形状对应的曲面;
对预置的纹理贴图进行采样得到采样后的纹理信息,通过所述指定形状对应的曲面和所述采样后的纹理信息进行渲染,得到所述指定形状的高光贴图。
2.根据权利要求1所述的方法,其特征在于,所述基于所述目标轨迹曲线生成多个面片的步骤,包括:
对所述目标轨迹曲线进行采样,得到所述目标轨迹曲线上的多个第一采样点;
针对每个所述第一采样点,经过所述第一采样点,且沿所述目标轨迹曲线上所述第一采样点的法向量的方向和/或反方向,生成指定长度的目标线段;
基于每个所述第一采样点对应的目标线段生成多个面片。
3.根据权利要求2所述的方法,其特征在于,所述基于每个所述第一采样点对应的目标线段生成多个面片的步骤,包括:
获取各所述目标线段上的第二采样点对应的索引,得到点索引集,其中,所述第二采样点为所述目标线段上均匀分布的采样点;
从所述点索引集中确定目标点索引组集;其中,所述目标点索引组集中的每个目标点索引组为构成三角形的点索引;
将所述目标点索引组集添加至预先创建的三角形索引列表,基于添加所述目标点索引组集的三角形索引列表构建多个面片。
4.根据权利要求1所述的方法,其特征在于,所述基于各路径点记录的缩放值对所述多个面片中对应的面片进行调控,得到指定形状对应的曲面的步骤,包括:
基于各路径点对应的缩放值创建各路径点对应的坐标;
基于所有路径点对应的坐标构建待处理曲线;
对所述待处理曲线上任意两个路径点之间的指定轴的坐标值进行等距离采样,得到各面片对应的缩放值;
通过各面片对应的缩放值对对应的面片进行缩放,得到指定形状对应的曲面。
5.根据权利要求1所述的方法,其特征在于,所述通过所述指定形状对应的曲面和所述采样后的纹理信息进行渲染,得到所述指定形状的高光贴图的步骤,包括:
确定所述指定形状对应的曲面和所述采样后的纹理信息中的目标数据;其中,所述目标数据用于指示存在明亮效果变化区域的纹理数据;
将所述目标数据存储至绿蓝通道,将所述采样后的纹理信息中除了目标数据之外的纹理数据存储至红通道,得到存储的数据;
基于所述存储的数据进行渲染,得到所述指定形状的高光贴图。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于所述指定形状的高光贴图的保存指令,获取所述指定形状的高光贴图对应的指定形状绘制数据;
将所述指定形状绘制数据存储至指定工程文件中的指定位置。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
响应于针对所述指定形状的编辑操作,加载所述指定工程文件得到所述指定形状的高光贴图;
对所述指定形状的高光贴图进行修改更新,得到修改更新后的高光贴图。
8.根据权利要求7所述的方法,其特征在于,所述响应于针对所述指定形状的编辑操作,加载所述指定工程文件得到所述指定形状的高光贴图的步骤,包括:
响应于针对所述指定形状的编辑操作,读取所述指定工程文件中的所述指定形状绘制数据;
对所述指定形状绘制数据进行反序列化,得到目标数据结构对象;
基于所述目标数据结构对象进行绘制,得到画布显示内容;其中,所述画布显示内容包括所述指定形状的高光图形。
9.根据权利要求1所述的方法,其特征在于,所述响应于针对指定形状的高光贴图生成指令,获取基于绘制轨迹的路径点集的步骤,包括:
响应于针对指定形状的高光贴图生成指令,获取画布上绘制工具移动的位置信息;
对所述画布上绘制工具移动的位置信息进行采样,得到基于绘制轨迹的路径点集。
10.一种高光贴图的生成装置,其特征在于,所述高光贴图的生成装置包括:
第一获取模块,用于响应于针对指定形状的高光贴图生成指令,获取基于绘制轨迹的路径点集;其中,所述路径点集中的各路径点记录有对应的缩放值,所述缩放值用于调整对应位置的形状;
生成模块,用于基于所述路径点集生成与所述绘制轨迹对应的曲线,得到目标轨迹曲线,基于所述目标轨迹曲线生成多个面片;
调控模块,用于基于各路径点记录的缩放值对所述多个面片中对应的面片进行调控,得到指定形状对应的曲面;
渲染模块,用于对预置的纹理贴图进行采样得到采样后的纹理信息,通过所述指定形状对应的曲面和所述采样后的纹理信息进行渲染,得到所述指定形状的高光贴图。
11.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器执行所述机器可执行指令以实现权利要求1-9任一项所述的高光贴图的生成方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有机器可执行指令,所述机器可执行指令在被处理器调用和执行时,所述机器可执行指令促使所述处理器实现权利要求1-9任一项所述的高光贴图的生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311132237.0A CN117392307A (zh) | 2023-09-04 | 2023-09-04 | 高光贴图的生成方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311132237.0A CN117392307A (zh) | 2023-09-04 | 2023-09-04 | 高光贴图的生成方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117392307A true CN117392307A (zh) | 2024-01-12 |
Family
ID=89469076
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311132237.0A Pending CN117392307A (zh) | 2023-09-04 | 2023-09-04 | 高光贴图的生成方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117392307A (zh) |
-
2023
- 2023-09-04 CN CN202311132237.0A patent/CN117392307A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5611036A (en) | Apparatus and method for defining the form and attributes of an object in an image | |
JP6869249B2 (ja) | 2つのタイプのインクベクトルデータを生成して選択的に出力する方法及びシステム | |
US11049307B2 (en) | Transferring vector style properties to a vector artwork | |
US10282867B2 (en) | Shading for variable opacity stroke rendering | |
CN104933749B (zh) | 图形图元的裁剪 | |
CN112233215A (zh) | 轮廓渲染方法、装置、设备及存储介质 | |
US10832376B2 (en) | Generating enhanced digital content using piecewise parametric patch deformations | |
US9955065B2 (en) | Dynamic motion path blur user interface | |
US20170109906A1 (en) | Contour gradients using three-dimensional models | |
US11087511B1 (en) | Automated vectorization of a raster image using a gradient mesh with arbitrary topology | |
CN111260750B (zh) | openFL绘制矢量图形的处理方法、装置及电子设备 | |
US9779484B2 (en) | Dynamic motion path blur techniques | |
US10706500B2 (en) | Generating enhanced digital content using piecewise parametric patch deformations | |
US10628918B2 (en) | Generating enhanced digital content using piecewise parametric patch deformations | |
CN110033507B (zh) | 模型贴图的内描线绘制方法、装置、设备及可读存储介质 | |
CN117392307A (zh) | 高光贴图的生成方法、装置、电子设备及存储介质 | |
JP2023178274A (ja) | メッシュ頂点位置についての求根および反復を用いて表面を近似するポリゴンメッシュを生成する方法およびシステム | |
Talgorn et al. | Real-time sketch-based terrain generation | |
CN114119821A (zh) | 虚拟对象的毛发渲染方法、装置及设备 | |
US11392806B2 (en) | Differentiable rasterizer for vector font generation and editing | |
CN108876932B (zh) | 用于三维形状数据的编辑装置和编辑三维形状数据的方法 | |
CN111402366A (zh) | 一种文字渲染方法、装置、电子设备及存储介质 | |
US20140354627A1 (en) | Rendering a 3d shape | |
CN117744187B (zh) | Cad绘图方法、装置、计算机设备和存储介质 | |
CN113345048B (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 |