技术特征:
1.一种热力图渲染方法,其特征在于,所述方法包括:热力点叠加渲染步骤:构建待渲染模型及所述待渲染模型所需的多种资源,将所述待渲染模型采用实例化绘制模式在热力点叠加渲染管线中进行渲染,将所述热力点的热力值基于预设光滑函数进行渐变光滑处理,并采用离屏渲染技术,将所述热力点的灰度叠加结果缓存在共享纹理内存中;用户终端渲染步骤:构建渐变色带纹理图,依据渲染需要选择不同的渲染材质,在用户终端渲染管线中基于所述渐变色带纹理图对所述热力点的灰度叠加结果进行渲染,并将最终的热力图处理结果输出至用户展示页面。2.根据权利要求1所述热力图渲染方法,其特征在于,所述热力点叠加渲染步骤还包括:构建光滑渲染步骤:热力点数据准备,并构建第一场景、第一相机、第一几何体、第一渲染材质,构建第一渲染队列,将所述第一相机、第一几何体添加至第一场景中;光滑渲染参数传入步骤:将渲染材质所需的多种参数通过uniforms形式传入着色器,将热力点热力值数据及热力点的旋转缩放平移矩阵作为顶点数据通过attributes形式传递至所述顶点着色器中;光滑步骤:将绘制热力点的大小设置为预定尺寸,将所述热力数据经顶点着色器处理后传入片元着色器,在所述片元着色器中采用所述预设光滑函数对所述热力点的热力值由圆中心向四周径向渐变光滑处理,并采用三角形绘制模式完成光滑渲染;输出光滑结果步骤:所述片元着色器将所述热力点的灰度叠加处理结果输出至帧缓存中,再输出至所述共享纹理内存。3.根据权利要求1所述热力图渲染方法,其特征在于,所述用户终端渲染步骤还包括:构建着色渲染步骤:构建第二场景、第二相机、第二几何体、第二渲染材质,构建第二渲染队列,将所述第二相机、第二几何体添加至第二场景中,并构建所述渐变色带纹理图;着色渲染参数传入步骤:根据需要从2d普通、3d、马赛克中选择一种渲染材质;通过uniforms纹理形式,将所述渐变色带纹理图、所述热力点的光滑处理结果传入着色器;着色渲染步骤:将所述热力点的顶点坐标由所述顶点着色器传递至所述片元着色器中处理,采用三角绘制模式完成着色渲染;输出着色结果步骤:所述片元着色器将所述热力点的用户终端处理结果输出至用户页面。4.根据权利要求3所述热力图渲染方法,其特征在于,所述着色渲染步骤进一步包括:3d材质渲染步骤:将第二几何体进行3d几何体构造,并将所述灰度叠加结果传入顶点着色器,采样取出灰度叠加结果的alpha值作为起伏高度值,并对几何体进行拉伸处理及投影后,实现几何体3d起伏效果,并在所述片元着色器中,完成渐变色带纹理图采样,实现3d材质着色;马赛克材质渲染步骤:在所述片元着色器中,依据马赛克尺寸,计算马赛克uv坐标,从马赛克中心向边缘算出一个渐变比重系数,分别采用所述马赛克uv坐标及纹理坐标对所述渐变色带纹理图进行采样,并将两次采样结果使用所述比重系数进行混合处理,并将所述混合结果输出。2d普通热力图材质渲染步骤:通过uniforms纹理形式,将所述渐变色带纹理图、所述热
力点的光滑处理结果传入片元着色器,并通过attributes形式将热力点及所述热力点的坐标传入所述着色器,将纹理坐标以varyings形式从所述顶点着色器传递到所述片元着色器,最终在片元着色器中,使用热力点叠加后光滑处理结果的alpha值构建采样坐标(alpha,0.5),对渐变色进行着色采样,输出最终热力图结果。5.根据权利要求1所述热力图渲染方法,其特征在于,所述预设光滑函数为:其中z(x,y)为热力点光滑函数在平面点(x,y)对应高度值,x为所述热力点的横坐标轴,y为所述热力点的竖坐标轴,(x,y)为光滑函数的自变量。6.一种热力图渲染系统,采用如权利要求1-5中任意一项所述热力图渲染方法,其特征在于,所述系统包括:热力点叠加渲染模块:构建待渲染模型及所述待渲染模型所需的多种资源,将所述待渲染模型采用实例化绘制模式在热力点叠加渲染管线中进行渲染,将所述热力点的热力值基于预设光滑函数进行渐变光滑处理,并采用离屏渲染技术,将所述热力点的灰度叠加结果缓存在共享纹理内存中;用户终端渲染模块:构建渐变色带纹理图,依据渲染需要选择不同的渲染材质,在用户终端渲染管线中基于所述渐变色带纹理图对所述热力点的灰度叠加结果进行渲染,并将最终的热力图处理结果输出至用户展示页面。7.根据权利要求6所述热力图渲染系统,其特征在于,所述热力点叠加渲染模块还包括:构建光滑渲染模块:热力点数据准备,并构建第一场景、第一相机、第一几何体、第一渲染材质,构建第一渲染队列,将所述第一相机、第一几何体添加至第一场景中;光滑渲染参数传入模块:将渲染材质所需的多种参数通过uniforms形式传入着色器,将热力点热力值数据及热力点的旋转缩放平移矩阵作为顶点数据通过attributes形式传递至所述顶点着色器中;光滑模块:将绘制热力点的大小设置为预定尺寸,将所述热力数据经顶点着色器处理后传入片元着色器,在所述片元着色器中采用所述预设光滑函数对所述热力点的热力值由圆中心向四周径向渐变光滑处理,并采用三角形绘制模式完成光滑渲染;输出光滑结果模块:所述片元着色器将所述热力点的灰度叠加处理结果输出至帧缓存中,再输出至所述共享纹理内存。8.根据权利要求6所述热力图渲染系统,其特征在于,所述用户终端渲染模块还包括:构建着色渲染模块:构建第二场景、第二相机、第二几何体、第二渲染材质,构建第二渲染队列,将所述第二相机、第二几何体添加至第二场景中,并构建所述渐变色带纹理图;着色渲染参数传入模块:根据需要从2d普通、3d、马赛克中选择一种渲染材质;通过uniforms纹理形式,将所述渐变色带纹理图、所述热力点的光滑处理结果传入着色器;着色渲染模块:将所述热力点的顶点坐标由所述顶点着色器传递至所述片元着色器中处理,采用三角绘制模式完成着色渲染;输出着色结果模块:所述片元着色器将所述热力点的用户终端处理结果输出至用户页面。9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执
行时实现权利要求1-5中任一项所述热力图渲染方法的步骤。10.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-5中任一项所述热力图渲染方法的步骤。
技术总结
本发明涉及一种热力图渲染方法,该方法包括:热力点叠加渲染步骤:构建待渲染模型及待渲染模型所需的多种资源,将待渲染模型采用实例化绘制模式在热力点叠加渲染管线中进行渲染,将热力点的热力值基于预设光滑函数进行渐变光滑处理,并采用离屏渲染技术,将热力点的灰度叠加结果缓存在共享纹理内存中;用户终端渲染步骤:构建渐变色带纹理图,依据渲染需要选择不同的渲染材质,在用户终端渲染管线中基于渐变色带纹理图对热力点的灰度叠加结果进行渲染,并将最终的热力图处理结果输出至用户展示页面。本发明还涉及热力图渲染系统、介质和设备。和设备。和设备。
技术研发人员:乐世华 谢帅 胡阳 张佳亮 李鉴 张腾飞
受保护的技术使用者:北京优锘科技有限公司
技术研发日:2022.05.10
技术公布日:2022/8/22