CN116310061A - 一种数据的处理方法、装置以及存储介质 - Google Patents

一种数据的处理方法、装置以及存储介质 Download PDF

Info

Publication number
CN116310061A
CN116310061A CN202310563765.5A CN202310563765A CN116310061A CN 116310061 A CN116310061 A CN 116310061A CN 202310563765 A CN202310563765 A CN 202310563765A CN 116310061 A CN116310061 A CN 116310061A
Authority
CN
China
Prior art keywords
scene
spherical harmonic
illumination
probe
information
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
CN202310563765.5A
Other languages
English (en)
Other versions
CN116310061B (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202310563765.5A priority Critical patent/CN116310061B/zh
Publication of CN116310061A publication Critical patent/CN116310061A/zh
Application granted granted Critical
Publication of CN116310061B publication Critical patent/CN116310061B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/50Lighting effects
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02BCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO BUILDINGS, e.g. HOUSING, HOUSE APPLIANCES OR RELATED END-USER APPLICATIONS
    • Y02B20/00Energy efficient lighting technologies, e.g. halogen lamps or gas discharge lamps
    • Y02B20/40Control techniques providing energy savings, e.g. smart controller or presence detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)

Abstract

本申请公开了一种数据的处理方法、装置以及存储介质。通过确定目标场景对应的光照反射贴图;并对光照反射贴图中的像素进行采样得到各个虚拟点光源的光照贡献度,以确定对应的球谐参数;并生成对应的球谐数据;在间接光的渲染操作时基于场景探点对应的球谐数据获取待处理像素对应的球谐参数,以根据球谐参数执行渲染操作。从而实现基于探点的间接光渲染过程,由于采用探点进行像素对应球谐参数的调用,将间接光的渲染处理过程由每个像素转换为了每个探点,而探点的数量远少于像素的数量,减少了计算次数,提高了渲染处理过程中的处理效率。

Description

一种数据的处理方法、装置以及存储介质
技术领域
本申请涉及计算机技术领域,尤其涉及一种数据的处理方法、装置以及存储介质。
背景技术
随着互联网技术的迅速发展,人们对虚拟场景的要求越来越高。通过虚拟场景中光照的模拟来增强虚拟场景的展示效果为一种常见的方式,而其中间接光尤为重要。
一般,可以采用虚拟场景中物体的像素为单元,实时计算所有物体的间接光贡献,从而进行间接光的渲染。
但是,由于像素的数量较多,采用像素为单元的渲染过程计算量巨大,影响间接光渲染过程中的处理效率。
发明内容
有鉴于此,本申请提供一种数据的处理方法,可以有效提高间接光渲染过程中的处理效率。
本申请第一方面提供一种数据的处理方法,可以应用于终端设备中包含数据的处理功能的系统或程序中,具体包括:
获取目标场景中配置的多个场景探点;
根据所述目标场景对应的光源空间中的虚拟点光源进行间接光照渲染,以得到所述目标场景对应的光照反射贴图;
对所述光照反射贴图中的像素进行采样得到各个所述虚拟点光源 对于所述场景探点的光照贡献度,以基于所述光照贡献度确定球谐函数对应的球谐参数;
将所述球谐参数与对应的场景探点进行关联,以生成球谐数据;
响应于所述目标场景中的指示间接光的渲染操作,基于场景探点对应的球谐数据获取待处理像素对应的球谐参数,以根据所述待处理像素对应的球谐参数执行所述指示间接光的渲染操作。
可选的,在本申请一些可能的实现方式中,所述对所述光照反射贴图中的像素进行采样得到各个所述虚拟点光源对于所述场景探点的光照贡献度,以基于所述光照贡献度确定球谐函数对应的球谐参数,包括:
响应于采样操作调用计算着色器;
通过所述计算着色器指示的多个处理线程对所述光照反射贴图中的像素进行并行采样,以得到各个所述虚拟点光源对于所述场景探点的光照贡献度;
基于所述光照贡献度确定所述球谐函数对应的球谐参数。
可选的,在本申请一些可能的实现方式中,所述通过所述计算着色器指示的多个处理线程对所述光照反射贴图中的像素进行并行采样,以得到各个所述虚拟点光源对于所述场景探点的光照贡献度,包括:
通过所述计算着色器指示的多个处理线程确定所述光照反射贴图对应的辐照度贴图、世界空间坐标贴图以及法线贴图;
根据所述世界空间坐标贴图确定所述光照反射贴图中的像素与所述虚拟点光源的距离信息;
根据所述法线贴图确定所述光照反射贴图中的像素的法线信息;
根据所述辐照度贴图指示的辐照信息、所述距离信息以及所述法线信息确定所述虚拟点光源对于所述场景探点的所述光照贡献度。
可选的,在本申请一些可能的实现方式中,所述根据所述辐照度贴图指示的辐照信息、所述距离信息以及所述法线信息确定所述虚拟点光源对于所述场景探点的所述光照贡献度,包括:
基于所述距离信息配置衰减系数;
根据所述法线信息确定像素所处坐标系的多个正交方向;
分别在所述正交方向上基于所述辐照信息进行贡献度计算,以确定所述虚拟点光源对于所述场景探点的所述光照贡献度。
可选的,在本申请一些可能的实现方式中,所述将所述球谐参数与对应的场景探点进行关联,以生成球谐数据,包括:
将所述球谐参数与对应的场景探点进行关联,以生成所述场景探点的索引信息;
基于所述索引信息确定球谐参数贴图;
根据所述球谐参数贴图与对应的虚拟点光源生成所述球谐数据。
可选的,在本申请一些可能的实现方式中,所述响应于所述目标场景中的指示间接光的渲染操作,基于场景探点对应的球谐数据获取待处理像素对应的球谐参数,以根据所述待处理像素对应的球谐参数执行所述指示间接光的渲染操作,包括:
响应于所述目标场景中的指示间接光的渲染操作,基于场景探点对应的球谐数据获取待处理像素关联的多个场景探点;
根据所述关联的多个场景探点与所述待处理像素的距离确定多个目标探点;
获取所述目标探点指示的所述待处理像素对应的球谐参数;
根据所述待处理像素对应的球谐参数执行所述指示间接光的渲染操作。
可选的,在本申请一些可能的实现方式中,所述获取所述目标探点指示的所述待处理像素对应的球谐参数,包括:
获取所述目标探点指示的所述待处理像素对应的探点参数;
根据所述场景探点与所述待处理像素的距离对所述探点参数进行加权计算,以得到所述待处理像素对应的球谐参数。
可选的,在本申请一些可能的实现方式中,所述方法还包括:
获取所述待处理像素对应的场景信息;
确定所述场景信息对应的光照配置参数;
基于所述光照配置参数对所述球谐参数进行调整,以基于调整后的所述球谐参数执行所述指示间接光的渲染操作。
可选的,在本申请一些可能的实现方式中,所述获取目标场景中配置的多个场景探点,包括:
调用所述目标场景对应的多个预设探点;
获取所述目标场景中包含的场景对象;
基于所述场景对象的分布对所述预设探点进行调整,以得到所述场景探点,所述场景探点与所述场景对象不相交。
可选的,在本申请一些可能的实现方式中,所述调用所述目标场景对应的多个预设探点,包括:
获取所述目标场景对应的历史渲染信息;
基于所述历史渲染信息确定指示探点分布的序列信息;
根据所述目标场景中配置的场景参数调用所述序列信息中与所述场景参数相对应的多个所述预设探点。
可选的,在本申请一些可能的实现方式中,所述方法还包括:
响应于所述目标场景中的空间变化信息,确定所述目标场景对应的光源空间中的调整点光源;
根据所述调整点光源进行间接光照渲染,以得到所述目标场景对应的光照反射贴图;
对所述光照反射贴图中的像素进行采样得到各个所述调整点光源对于所述场景探点的光照贡献度,以基于所述光照贡献度确定球谐函数对应的球谐参数;
将所述球谐参数与对应的场景探点进行关联,以生成球谐数据;
响应于所述目标场景中的指示间接光的渲染操作,基于场景探点对应的球谐数据获取待处理像素对应的球谐参数,以根据所述待处理像素对应的球谐参数执行所述指示间接光的渲染操作。
可选的,在本申请一些可能的实现方式中,所述方法还包括:
确定所述空间变化信息与所述待处理像素对应的球谐数据的对应关系,以对所述对应关系进行记录得到调用索引;
响应于所述目标场景中空间变化信息的生成,获取所述调用索引,以基于所述调用索引指示的球谐数据执行所述指示间接光的渲染操作。
本申请第二方面提供一种数据的处理装置,包括:
获取单元,用于获取目标场景中配置的多个场景探点;
确定单元,用于根据所述目标场景对应的光源空间中的虚拟点光源进行间接光照渲染,以得到所述目标场景对应的光照反射贴图;
处理单元,用于对所述光照反射贴图中的像素进行采样得到各个所述虚拟点光源对于所述场景探点的光照贡献度,以基于所述光照贡献度确定球谐函数对应的球谐参数;
所述处理单元,还用于将所述球谐参数与对应的场景探点进行关联,以生成球谐数据;
所述处理单元,还用于响应于所述目标场景中的指示间接光的渲染操作,基于场景探点对应的球谐数据获取待处理像素对应的球谐参数,以根据所述待处理像素对应的球谐参数执行所述指示间接光的渲染操作。
可选的,在本申请一些可能的实现方式中,所述处理单元,具体用于响应于采样操作调用计算着色器;
所述处理单元,具体用于通过所述计算着色器指示的多个处理线程对所述光照反射贴图中的像素进行并行采样,以得到各个所述虚拟点光源对于所述场景探点的光照贡献度;
所述处理单元,具体用于基于所述光照贡献度确定所述球谐函数对应的球谐参数。
可选的,在本申请一些可能的实现方式中,所述处理单元,具体用于通过所述计算着色器指示的多个处理线程确定所述光照反射贴图对应的辐照度贴图、世界空间坐标贴图以及法线贴图;
所述处理单元,具体用于根据所述世界空间坐标贴图确定所述光照反射贴图中的像素与所述虚拟点光源的距离信息;
所述处理单元,具体用于根据所述法线贴图确定所述光照反射贴图中的像素的法线信息;
所述处理单元,具体用于根据所述辐照度贴图指示的辐照信息、所述距离信息以及所述法线信息确定所述虚拟点光源对于所述场景探点的所述光照贡献度。
可选的,在本申请一些可能的实现方式中,所述处理单元,具体用于基于所述距离信息配置衰减系数;
所述处理单元,具体用于根据所述法线信息确定像素所处坐标系的多个正交方向;
所述处理单元,具体用于分别在所述正交方向上基于所述辐照信息进行贡献度计算,以确定所述虚拟点光源对于所述场景探点的所述光照贡献度。
可选的,在本申请一些可能的实现方式中,所述处理单元,具体用于将所述球谐参数与对应的场景探点进行关联,以生成所述场景探点的索引信息;
所述处理单元,具体用于基于所述索引信息确定球谐参数贴图;
所述处理单元,具体用于根据所述球谐参数贴图与对应的虚拟点光源生成所述球谐数据。
可选的,在本申请一些可能的实现方式中,所述处理单元,具体用于响应于所述目标场景中的指示间接光的渲染操作,基于场景探点对应的球谐数据获取待处理像素关联的多个场景探点;
所述处理单元,具体用于根据所述关联的多个场景探点与所述待处理像素的距离确定多个目标探点;
所述处理单元,具体用于获取所述目标探点指示的所述待处理像素对应的球谐参数;
所述处理单元,具体用于根据所述待处理像素对应的球谐参数执行所述指示间接光的渲染操作。
可选的,在本申请一些可能的实现方式中,所述获取单元,具体用于获取所述目标探点指示的所述待处理像素对应的探点参数;
所述获取单元,具体用于根据所述场景探点与所述待处理像素的距离对所述探点参数进行加权计算,以得到所述待处理像素对应的球谐参数。
可选的,在本申请一些可能的实现方式中,所述获取单元,具体用于获取所述待处理像素对应的场景信息;
所述获取单元,具体用于确定所述场景信息对应的光照配置参数;
所述获取单元,具体用于基于所述光照配置参数对所述球谐参数进行调整,以基于调整后的所述球谐参数执行所述指示间接光的渲染操作。
可选的,在本申请一些可能的实现方式中,所述获取单元,具体用于调用所述目标场景对应的多个预设探点;
所述获取单元,具体用于获取所述目标场景中包含的场景对象;
所述获取单元,具体用于基于所述场景对象的分布对所述预设探点进行调整,以得到所述场景探点,所述场景探点与所述场景对象不相交。
可选的,在本申请一些可能的实现方式中,所述处理单元,具体用于获取所述目标场景对应的历史渲染信息;
所述处理单元,具体用于基于所述历史渲染信息确定指示探点分布的序列信息;
所述处理单元,具体用于根据所述目标场景中配置的场景参数调用所述序列信息中与所述场景参数相对应的多个所述预设探点。
可选的,在本申请一些可能的实现方式中,所述处理单元,具体用于响应于所述目标场景中的空间变化信息,确定所述目标场景对应的光源空间中的调整点光源;
所述处理单元,具体用于根据所述调整点光源进行间接光照渲染,以得到所述目标场景对应的光照反射贴图;
所述处理单元,具体用于对所述光照反射贴图中的像素进行采样得到各个所述调整点光源对于所述场景探点的光照贡献度,以基于所述光照贡献度确定球谐函数对应的球谐参数;
所述处理单元,具体用于将所述球谐参数与对应的场景探点进行关联,以生成球谐数据;
所述处理单元,具体用于响应于所述目标场景中的指示间接光的渲染操作,基于场景探点对应的球谐数据获取待处理像素对应的球谐参数,以根据所述待处理像素对应的球谐参数执行所述指示间接光的渲染操作。
可选的,在本申请一些可能的实现方式中,所述处理单元,具体用于确定所述空间变化信息与所述待处理像素对应的球谐数据的对应关系,以对所述对应关系进行记录得到调用索引;
所述处理单元,具体用于响应于所述目标场景中空间变化信息的生成,获取所述调用索引,以基于所述调用索引指示的球谐数据执行所述指示间接光的渲染操作。
本申请第三方面提供一种计算机设备,包括:存储器、处理器以及总线系统;所述存储器用于存储程序代码;所述处理器用于根据所述程序代码中的指令执行上述第一方面或第一方面任一项所述的数据的处理方法。
本申请第四方面提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面或第一方面任一项所述的数据的处理方法。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述第一方面或者第一方面的各种可选实现方式中提供的数据的处理方法。
从以上技术方案可以看出,本申请实施例具有以下优点:
通过获取目标场景中配置的多个场景探点;然后根据目标场景对应的光源空间中的虚拟点光源进行间接光照渲染,以得到目标场景对应的光照反射贴图;并对光照反射贴图中的像素进行采样得到各个虚拟点光源对于场景探点的光照贡献度,以基于光照贡献度确定球谐函数对应的球谐参数;接下来将球谐参数与对应的场景探点进行关联,以生成球谐数据;进而响应于目标场景中的指示间接光的渲染操作,基于场景探点对应的球谐数据获取待处理像素对应的球谐参数,以根据待处理像素对应的球谐参数执行指示间接光的渲染操作。从而实现基于探点的间接光渲染过程,由于采用探点进行像素对应球谐参数的调用,将间接光的渲染处理过程由每个像素转换为了每个探点,而探点的数量远少于像素的数量,减少了计算次数,提高了渲染处理过程中的处理效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为数据的处理系统运行的网络架构图;
图2为本申请实施例提供的一种数据的处理的流程架构图;
图3为本申请实施例提供的一种数据的处理方法的流程图;
图4为本申请实施例提供的一种数据的处理方法的场景示意图;
图5为本申请实施例提供的另一种数据的处理方法的场景示意图;
图6为本申请实施例提供的另一种数据的处理方法的场景示意图;
图7为本申请实施例提供的另一种数据的处理方法的场景示意图;
图8为本申请实施例提供的另一种数据的处理方法的流程图;
图9为本申请实施例提供的另一种数据的处理方法的场景示意图;
图10为本申请实施例提供的一种数据的处理装置的结构示意图;
图11为本申请实施例提供的一种终端设备的结构示意图;
图12为本申请实施例提供的一种服务器的结构示意图。
实施方式
本申请实施例提供了一种数据的处理方法以及相关装置,可以应用于终端设备中包含数据的处理功能的系统或程序中,通过获取目标场景中配置的多个场景探点;然后根据目标场景对应的光源空间中的虚拟点光源进行间接光照渲染,以得到目标场景对应的光照反射贴图;并对光照反射贴图中的像素进行采样得到各个虚拟点光源对于场景探点的光照贡献度,以基于光照贡献度确定球谐函数对应的球谐参数;接下来将球谐参数与对应的场景探点进行关联,以生成球谐数据;进而响应于目标场景中的指示间接光的渲染操作,基于场景探点对应的球谐数据获取待处理像素对应的球谐参数,以根据待处理像素对应的球谐参数执行指示间接光的渲染操作。从而实现基于探点的间接光渲染过程,由于采用探点进行像素对应球谐参数的调用,将间接光的渲染处理过程由每个像素转换为了每个探点,而探点的数量远少于像素的数量,减少了计算次数,提高了渲染处理过程中的处理效率。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“对应于”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先,对本申请实施例中可能出现的一些名词进行解释。
全局光照(GlobalIllumination,GI):用于在光栅化渲染中模拟光线多次弹射后的场景光照。
场景探点(Probe):代表了接受间接光的位置,用于模型顶点采样索引。
立方体贴图(Cubemap):一个由六个独立的正方体纹理组成的集合。
虚拟点光源(Virtual Point Light,VPL):虚拟场景中发光的区域。
光照反射贴图(ReflectiveShadowMap,RSM):采用ShadowMap思想渲染的几张用于RSM计算光照的存储VPL信息的贴图。
应理解,本申请提供的数据的处理方法可以应用于终端设备中包含数据的处理功能的系统或程序中,例如图像处理,具体的,数据的处理系统可以运行于如图1所示的网络架构中,如图1所示,是数据的处理系统运行的网络架构图,如图可知,数据的处理系统可以提供与多个信息源的数据的处理过程,即通过终端侧的渲染操作触发服务器对相应的虚拟场景进行光照渲染;可以理解的是,图1中示出了多种终端设备,终端设备可以为计算机设备,在实际场景中可以有更多或更少种类的终端设备参与到数据的处理的过程中,具体数量和种类因实际场景而定,此处不做限定,另外,图1中示出了一个服务器,但在实际场景中,也可以有多个服务器的参与,具体服务器数量因实际场景而定。
本实施例中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表、智能语音交互设备、智能家电、车载终端等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,终端以及服务器可以连接组成区块链网络,本申请在此不做限制。
可以理解的是,上述数据的处理系统可以运行于个人移动终端,例如:作为图像处理这样的应用,也可以运行于服务器,还可以作为运行于第三方设备以提供数据的处理,以得到信息源的数据的处理处理结果;具体的数据的处理系统可以是以一种程序的形式在上述设备中运行,也可以作为上述设备中的系统部件进行运行,还可以作为云端服务程序的一种,本实施例可应用于云技术、自动驾驶等场景,具体运作模式因实际场景而定,此处不做限定。
随着互联网技术的迅速发展,人们对虚拟场景的要求越来越高。通过虚拟场景中光照的模拟来增强虚拟场景的展示效果为一种常见的方式,而其中间接光尤为重要。
一般,可以采用虚拟场景中物体的像素为单元,实时计算所有物体的间接光贡献,从而进行间接光的渲染。
但是,由于像素的数量较多,采用像素为单元的渲染过程计算量巨大,影响间接光渲染过程中的处理效率。
为了解决上述问题,本申请提出了一种数据的处理方法,该方法应用于图2所示的数据的处理的流程框架中,如图2所示,为本申请实施例提供的一种数据的处理的流程架构图,通过终端进行渲染操作,触发服务器进行场景探点的创建,并基于场景探点对光照反射贴图中的像素进行采样;即基于场景中的Probe,计算六个方向上的光照结果并用球谐函数的参数存储,运行时渲染场景时通过采样Probe的球谐参数来重建光照。
可以理解的是,本申请所提供的方法可以为一种程序的写入,以作为硬件系统中的一种处理逻辑,也可以作为一种数据的处理装置,采用集成或外接的方式实现上述处理逻辑。作为一种实现方式,该数据的处理装置通过获取目标场景中配置的多个场景探点;然后根据目标场景对应的光源空间中的虚拟点光源进行间接光照渲染,以得到目标场景对应的光照反射贴图;并对光照反射贴图中的像素进行采样得到各个虚拟点光源对于场景探点的光照贡献度,以基于光照贡献度确定球谐函数对应的球谐参数;接下来将球谐参数与对应的场景探点进行关联,以生成球谐数据;进而响应于目标场景中的指示间接光的渲染操作,基于场景探点对应的球谐数据获取待处理像素对应的球谐参数,以根据待处理像素对应的球谐参数执行指示间接光的渲染操作。从而实现基于探点的间接光渲染过程,由于采用探点进行像素对应球谐参数的调用,将间接光的渲染处理过程由每个像素转换为了每个探点,而探点的数量远少于像素的数量,减少了计算次数,提高了渲染处理过程中的处理效率。
结合上述流程架构,下面将对本申请中数据的处理方法进行介绍,请参阅图3,图3为本申请实施例提供的一种数据的处理方法的流程图,该管理方法可以是由服务器或终端执行的,本申请实施例至少包括以下步骤:
301、获取目标场景中配置的多个场景探点。
本实施例中,目标场景可以是三维虚拟场景,而场景探点(Probe)代表了接受间接光的位置,用于目标场景中模型顶点采样索引,即将用于像素维度的间接光计算的球谐参数集成到场景探点中,通过采样Probe的球谐参数来重建间接光照。
具体的,场景探点可以是相关人员设定的,例如每间隔一定的距离配置一个场景探点;另外,由于目标场景中存在虚拟对象,其内部不会存在光照,因此可以进行回避,即首先调用目标场景对应的多个预设探点;然后获取目标场景中包含的场景对象;并基于场景对象的分布对预设探点进行调整,以得到场景探点,以使得场景探点与场景对象不相交,从而提高场景探点的有效性。
另外,场景探点还可以基于历史配置进行调用,即首先获取目标场景对应的历史渲染信息;然后基于历史渲染信息确定指示探点分布的序列信息;进而根据目标场景中配置的场景参数调用序列信息中与场景参数相对应的多个预设探点,具体的匹配过程可以是场景对象的位置、场景的时间序列等,从而提高场景探点配置的效率以及准确性。
302、根据目标场景对应的光源空间中的虚拟点光源进行间接光照渲染,以得到目标场景对应的光照反射贴图。
本实施例中,光照可以分为两类:一类为直接光照,这类光照是直接由光源或者发光物发出的光照;另一类为直接光照之后反射的光照称为间接光照。直接光照的计算十分简单,因为计算的范围和次数(没有反射)有限。而对于间接光照而言计算就十分复杂,因为间接光照可能不止反射了一次,一束光可能需要经历了很多次反射才能到达着色点。本实施例即为针对于间接光的渲染优化过程。
具体的,在光源空间中进行间接光照渲染得到光照反射贴图的过程即RSM算法,以生成光照反射贴图Reflective Shadow Map,该光照反射贴图如图4所示,图4为本申请实施例提供的一种数据的处理方法的场景示意图;即在光源空间渲染光照反射贴图包含的三张贴图,其分别是记录了辐照度、世界空间坐标和法线,后续通过这三张贴图计算每一个VPL对当前渲染像素点贡献的光照。
303、对光照反射贴图中的像素进行采样得到各个虚拟点光源对于场景探点的光照贡献度,以基于光照贡献度确定球谐函数对应的球谐参数。
本实施例中,光照贡献度的计算过程可以是通过计算着色器(Compute Shader)并行计算所得,compute shader是一种运行在显卡上却不在普通渲染管线上的程序,利用它可以做大型并行的GPU算法,以此来获得比CPU快很多倍的计算能力。另外,由于间接光为漫反射光,漫反射光是一种低频信息,通过球谐函数组可以有效的重建低频信息,也就是数学上球谐函数的广义傅里叶展开的表示。因此用球谐函数作为基底,投影生成球谐参数,就可以有效重建环境贴图中低频的辐照度信息,从而进行间接光的渲染。
具体的,对于球谐参数的计算,即多个像素同时进行采样处理,首先响应于采样操作调用计算着色器;然后通过计算着色器指示的多个处理线程对光照反射贴图中的像素进行并行采样,以得到各个虚拟点光源对于场景探点的光照贡献度;进而基于光照贡献度确定球谐函数对应的球谐参数。
在一种可能的场景中,可以通过Compute Shader并行采样整张贴图,求出以场景探点(Probe)为中心,六个方向上受到VPL的贡献度,并通过球谐函数的投影公式计算球谐参数。光照的计算过程采用了VPL的思想,即光照反射贴图上的每一个像素,代表着光源可见的一个点,因此可以作为场景中其他点的二次光源,而由于间接光考虑的是漫反射光,不需要考虑VPL的法线,因此直接用VPL和当前像素点的方向和当前像素点的法线即可计算。即首先通过计算着色器指示的多个处理线程确定光照反射贴图对应的辐照度贴图、世界空间坐标贴图以及法线贴图;然后根据世界空间坐标贴图确定光照反射贴图中的像素与虚拟点光源的距离信息;并根据法线贴图确定光照反射贴图中的像素的法线信息;进而根据辐照度贴图指示的辐照信息、距离信息以及法线信息确定虚拟点光源对于场景探点的光照贡献度,由于不需要考虑VPL的法线,从而实现漫反射光的高效贡献度计算。
在一种可能的场景中,光照贡献度是基于多个方向上的辐照度结合所得,如图5所示,图5为本申请实施例提供的另一种数据的处理方法的场景示意图;图中像素点x收到的虚拟点光源Xp的辐射强度如下所示:
Figure SMS_1
其中,x为像素点,Xp为虚拟点光源,n为法线。
因此参照上述辐射强度的计算方式,计算虚拟点光源对于场景探点的光照贡献度。
进一步的,在Compute Shader中生成球谐的公式与一般LightMap生成球谐不同,本实施例将Reflective Shadow Map上所对应的点看作是VPL,对于一个方向上接收到的一个VPL的贡献度用公式如下:
Figure SMS_2
其中,Li是渲染点到VPL的方向,目前光传播的衰减程度是距离的平方,可以根据实际情况调整。即对于场景探点的光照贡献度的计算,可以首先基于距离信息配置衰减系数;然后根据法线信息确定像素所处坐标系的多个正交方向;并分别在正交方向上基于辐照信息进行贡献度计算,以确定虚拟点光源对于场景探点的光照贡献度。
在一种可能的场景中,法线N的方向取正交的六个方向,即为+x,-x,+y,-y,+z,-z。得到VPL对于Probe六个方向的光强度贡献后用球谐函数的投影公式计算出球谐参数进行求和后存储,后续用于重建球谐光照。
另外,上述在ComputeShader中计算球谐参数的时候采样过程可以是整张贴图求平均,也可以采用重要性采样牺牲效果,即通过像素点的分布为其配置采样权重信息,对于采样权重较低的像素不进行采样,从而提高效率。
304、将球谐参数与对应的场景探点进行关联,以生成球谐数据。
本实施例中,将球谐参数与对应的场景探点进行关联的过程可以是通过建立索引进行的,即首先将球谐参数与对应的场景探点进行关联,以生成场景探点的索引信息;然后基于索引信息确定球谐参数贴图;进而根据球谐参数贴图与对应的虚拟点光源生成球谐数据。
在以后在那个可能的场景中,一个Probe将所有像素采样完毕后,根据Probe的索引把结果存入一张公共贴图,一个光源维护其所影响的所有Probe的索引和一张存储球谐参数的贴图,其中单个Probe的球谐数据占两个四通道uint像素,其数据量较小,易于存储。
305、响应于目标场景中的指示间接光的渲染操作,基于场景探点对应的球谐数据获取待处理像素对应的球谐参数,以根据待处理像素对应的球谐参数执行指示间接光的渲染操作。
本实施例中,目标场景中的指示间接光的渲染操作即在主相机渲染场景时,执行的间接光渲染过程。其中球谐参数的确定可以是参考多个探点所得,即响应于目标场景中的指示间接光的渲染操作,基于场景探点对应的球谐数据获取待处理像素关联的多个场景探点;然后根据关联的多个场景探点与待处理像素的距离确定多个目标探点;并获取目标探点指示的待处理像素对应的球谐参数;从而根据待处理像素对应的球谐参数执行指示间接光的渲染操作。
进一步的,由于不同探点之间距离像素的距离不同,因此还可以进行距离加权,即首先获取目标探点指示的待处理像素对应的探点参数;然后根据场景探点与待处理像素的距离对探点参数进行加权计算,以得到待处理像素对应的球谐参数。例如获得当前渲染的像素采样最近的两个Probe的索引,在光源维护的球谐参数贴图上采样得到两组压缩过的球谐数据,解压后即为两组球谐函数的参数,并通过加权平均后得到一组最终的球谐参数再重建光照作为间接光。
另外,加权计算的过程还可以考虑场景整体的光照配置,例如场景风格(黑暗、明亮等),从而可以获取待处理像素对应的场景信息;然后确定场景信息对应的光照配置参数;并基于光照配置参数对球谐参数进行调整,以基于调整后的球谐参数执行指示间接光的渲染操作,从而实现场景的风格化管理。
在一种可能的场景中,通过上述间接光的渲染过程,可以得到图6所示的效果,图6为本申请实施例提供的另一种数据的处理方法的场景示意图;图中示出了图像元素A1通过间接光的渲染后展示了包含发光边缘的图像元素A2,从而在为物体提供较为真实的间接光色彩处理(Color Bleeding)效果的同时,只产生较低的运行时代价,在移动平台也能够稳定运行。
在另一种可能的场景中,本实施例中光照空间发生变化时,例如光源移动、参数调整等,此时可以基于现有的探点再次建立索引,如图7所示,图7为本申请实施例提供的另一种数据的处理方法的场景示意图;即在生成场景探点后,在光源空间渲染光照反射贴图,然后在计算着色器中遍历光照反射贴图生成球谐数据并渲染时采样球谐数据重建间接光。
进一步的,在场景变化时,响应于目标场景中的空间变化信息,确定目标场景对应的光源空间中的调整点光源;然后根据调整点光源进行间接光照渲染,以得到目标场景对应的光照反射贴图;并对光照反射贴图中的像素进行采样得到各个调整点光源对于场景探点的光照贡献度,以基于光照贡献度确定球谐函数对应的球谐参数;然后将球谐参数与对应的场景探点进行关联,以生成球谐数据;进而响应于目标场景中的指示间接光的渲染操作,基于场景探点对应的球谐数据获取待处理像素对应的球谐参数,以根据待处理像素对应的球谐参数执行指示间接光的渲染操作,从而实现目标场景的实时渲染过程。
另外,实时渲染还可以记录变化信息与球谐数据的对应关系,即首先确定空间变化信息与待处理像素对应的球谐数据的对应关系,以对对应关系进行记录得到调用索引;然后响应于目标场景中空间变化信息的生成,获取调用索引,以基于调用索引指示的球谐数据执行指示间接光的渲染操作,从而实现目标场景中的快速渲染过程。
在另一种可能的场景中,本实施例的间接光渲染方式与其他方式对比结果如图表1所示,其中RSM为在光源空间渲染Reflective Shadow Map作为虚拟二次光源计算一次弹射的间接光;PRTGI为对于场景中的Probe渲染Cubemap,在Cubemap上采样后计算Irradiance后加权;LightMap为在Probe处烘焙Cubemap后生成球谐参数,在运行时采样球谐重建光源。
表1本实施例与现有渲染方式比较
运行时开销 是否支持动态物体
RSM 极高
PRTGI 一般
LightMap
本实施例
通过表1的对比可见,本实施例既能支持运行时动态物体可以贡献间接光,同时又能尽量低地产生运行时的渲染开销。
结合上述实施例可知,通过获取目标场景中配置的多个场景探点;然后根据目标场景对应的光源空间中的虚拟点光源进行间接光照渲染,以得到目标场景对应的光照反射贴图;并对光照反射贴图中的像素进行采样得到各个虚拟点光源对于场景探点的光照贡献度,以基于光照贡献度确定球谐函数对应的球谐参数;接下来将球谐参数与对应的场景探点进行关联,以生成球谐数据;进而响应于目标场景中的指示间接光的渲染操作,基于场景探点对应的球谐数据获取待处理像素对应的球谐参数,以根据待处理像素对应的球谐参数执行指示间接光的渲染操作。从而实现基于探点的间接光渲染过程,由于采用探点进行像素对应球谐参数的调用,将间接光的渲染处理过程由每个像素转换为了每个探点,而探点的数量远少于像素的数量,减少了计算次数,提高了渲染处理过程中的处理效率。
在一些可能的场景中,间接光渲染与直接光渲染是同时进行的,即进行全局光照(GI),下面对该场景进行说明。请参阅图8,图8为本申请实施例提供的另一种数据的处理方法的流程图,本申请实施例至少包括以下步骤:
801、获取目标场景在光源空间中直接光对应的直接光照信息。
本实施例中,游戏工业中的GI方案为了满足足够低运行时消耗,通常采用离线烘焙的方式,虽然结合球鞋光照一定程度上能够让动态物体也能拥有间接光,但是却不能让动态物体贡献间接光,对于真实感的表现有所欠缺。而如原生的RSM算法那样可以实时计算所有物体的间接光贡献的方案又存在较大的效率问题,因此本实施例在效果和效率之间寻找平衡,在性能占用较低的情况下一定程度还原了较为真实的动态间接光,可以与实际应用的其他方案结合得到更好的全局光照效果。
802、基于直接光照信息确定发光区域,以将发光区域作为虚拟点光源。
本实施例中,间接光包含了漫反射的过程,因此可以将直接光照信息指示的发光区域作为虚拟点光源,以进行后续的间接光计算。
803、通过虚拟点光源进行间接光的渲染计算,以得到间接光照信息。
本实施例中,间接光照信息的计算过程参见图3所示实施例的步骤301-305,此处不作赘述。
804、将直接光照信息与间接光照信息进行融合,以对目标场景进行光照渲染。
本实施例中,直接光照信息与间接光照信息进行融合的过程可以是直接相加,可以根据场景中光照的配置进行加权融合,例如弱光场景下,间接光可以配置较低的权重,从而提高光照渲染的真实性。
在一种可能的场景中,全局光照渲染的效果如图9所示,图9为本申请实施例提供的另一种数据的处理方法的场景示意图;图中示出了直接光的渲染区域B1,并基于直接光的渲染区域作为虚拟点光源进行间接光的计算,从而得到间接光区域B2,进而完成全局光照渲染的过程。
本实施例将RSM的间接光计算从每个像素移动到了每个探点,极大地减少了核心计算的次数,同时采用Compute Shader对整张Reflective Shadow Map进行采样,既通过并行计算加速了采样过程,又使得结果更加精确。因此无论场景中的模型有多复杂,对于核心的贴图采样并计算间接光的部分,在本实施例中只与Probe数量有关,复杂度较低且可控。
为了更好的实施本申请实施例的上述方案,下面还提供用于实施上述方案的相关装置。请参阅图10,图10为本申请实施例提供的一种数据的处理装置的结构示意图,处理装置1000包括:
获取单元1001,用于获取目标场景中配置的多个场景探点;
确定单元1002,用于根据所述目标场景对应的光源空间中的虚拟点光源进行间接光照渲染,以得到所述目标场景对应的光照反射贴图;
处理单元1003,用于对所述光照反射贴图中的像素进行采样得到各个所述虚拟点光源对于所述场景探点的光照贡献度,以基于所述光照贡献度确定球谐函数对应的球谐参数;
所述处理单元1003,还用于将所述球谐参数与对应的场景探点进行关联,以生成球谐数据;
所述处理单元1003,还用于响应于所述目标场景中的指示间接光的渲染操作,基于场景探点对应的球谐数据获取待处理像素对应的球谐参数,以根据所述待处理像素对应的球谐参数执行所述指示间接光的渲染操作。
可选的,在本申请一些可能的实现方式中,所述处理单元1003,具体用于响应于采样操作调用计算着色器;
所述处理单元1003,具体用于通过所述计算着色器指示的多个处理线程对所述光照反射贴图中的像素进行并行采样,以得到各个所述虚拟点光源对于所述场景探点的光照贡献度;
所述处理单元1003,具体用于基于所述光照贡献度确定所述球谐函数对应的球谐参数。
可选的,在本申请一些可能的实现方式中,所述处理单元1003,具体用于通过所述计算着色器指示的多个处理线程确定所述光照反射贴图对应的辐照度贴图、世界空间坐标贴图以及法线贴图;
所述处理单元1003,具体用于根据所述世界空间坐标贴图确定所述光照反射贴图中的像素与所述虚拟点光源的距离信息;
所述处理单元1003,具体用于根据所述法线贴图确定所述光照反射贴图中的像素的法线信息;
所述处理单元1003,具体用于根据所述辐照度贴图指示的辐照信息、所述距离信息以及所述法线信息确定所述虚拟点光源对于所述场景探点的所述光照贡献度。
可选的,在本申请一些可能的实现方式中,所述处理单元1003,具体用于基于所述距离信息配置衰减系数;
所述处理单元1003,具体用于根据所述法线信息确定像素所处坐标系的多个正交方向;
所述处理单元1003,具体用于分别在所述正交方向上基于所述辐照信息进行贡献度计算,以确定所述虚拟点光源对于所述场景探点的所述光照贡献度。
可选的,在本申请一些可能的实现方式中,所述处理单元1003,具体用于将所述球谐参数与对应的场景探点进行关联,以生成所述场景探点的索引信息;
所述处理单元1003,具体用于基于所述索引信息确定球谐参数贴图;
所述处理单元1003,具体用于根据所述球谐参数贴图与对应的虚拟点光源生成所述球谐数据。
可选的,在本申请一些可能的实现方式中,所述处理单元1003,具体用于响应于所述目标场景中的指示间接光的渲染操作,基于场景探点对应的球谐数据获取待处理像素关联的多个场景探点;
所述处理单元1003,具体用于根据所述关联的多个场景探点与所述待处理像素的距离确定多个目标探点;
所述处理单元1003,具体用于获取所述目标探点指示的所述待处理像素对应的球谐参数;
所述处理单元1003,具体用于根据所述待处理像素对应的球谐参数执行所述指示间接光的渲染操作。
可选的,在本申请一些可能的实现方式中,所述获取单元1001,具体用于获取所述目标探点指示的所述待处理像素对应的探点参数;
所述获取单元1001,具体用于根据所述场景探点与所述待处理像素的距离对所述探点参数进行加权计算,以得到所述待处理像素对应的球谐参数。
可选的,在本申请一些可能的实现方式中,所述获取单元1001,具体用于获取所述待处理像素对应的场景信息;
所述获取单元1001,具体用于确定所述场景信息对应的光照配置参数;
所述获取单元1001,具体用于基于所述光照配置参数对所述球谐参数进行调整,以基于调整后的所述球谐参数执行所述指示间接光的渲染操作。
可选的,在本申请一些可能的实现方式中,所述获取单元1001,具体用于调用所述目标场景对应的多个预设探点;
所述获取单元1001,具体用于获取所述目标场景中包含的场景对象;
所述获取单元1001,具体用于基于所述场景对象的分布对所述预设探点进行调整,以得到所述场景探点,所述场景探点与所述场景对象不相交。
可选的,在本申请一些可能的实现方式中,所述处理单元1003,具体用于获取所述目标场景对应的历史渲染信息;
所述处理单元1003,具体用于基于所述历史渲染信息确定指示探点分布的序列信息;
所述处理单元1003,具体用于根据所述目标场景中配置的场景参数调用所述序列信息中与所述场景参数相对应的多个所述预设探点。
可选的,在本申请一些可能的实现方式中,所述处理单元1003,具体用于响应于所述目标场景中的空间变化信息,确定所述目标场景对应的光源空间中的调整点光源;
所述处理单元1003,具体用于根据所述调整点光源进行间接光照渲染,以得到所述目标场景对应的光照反射贴图;
所述处理单元1003,具体用于对所述光照反射贴图中的像素进行采样得到各个所述调整点光源对于所述场景探点的光照贡献度,以基于所述光照贡献度确定球谐函数对应的球谐参数;
所述处理单元1003,具体用于将所述球谐参数与对应的场景探点进行关联,以生成球谐数据;
所述处理单元1003,具体用于响应于所述目标场景中的指示间接光的渲染操作,基于场景探点对应的球谐数据获取待处理像素对应的球谐参数,以根据所述待处理像素对应的球谐参数执行所述指示间接光的渲染操作。
可选的,在本申请一些可能的实现方式中,所述处理单元1003,具体用于确定所述空间变化信息与所述待处理像素对应的球谐数据的对应关系,以对所述对应关系进行记录得到调用索引;
所述处理单元1003,具体用于响应于所述目标场景中空间变化信息的生成,获取所述调用索引,以基于所述调用索引指示的球谐数据执行所述指示间接光的渲染操作。
通过获取目标场景中配置的多个场景探点;然后根据目标场景对应的光源空间中的虚拟点光源进行间接光照渲染,以得到目标场景对应的光照反射贴图;并对光照反射贴图中的像素进行采样得到各个虚拟点光源对于场景探点的光照贡献度,以基于光照贡献度确定球谐函数对应的球谐参数;接下来将球谐参数与对应的场景探点进行关联,以生成球谐数据;进而响应于目标场景中的指示间接光的渲染操作,基于场景探点对应的球谐数据获取待处理像素对应的球谐参数,以根据待处理像素对应的球谐参数执行指示间接光的渲染操作。从而实现基于探点的间接光渲染过程,由于采用探点进行像素对应球谐参数的调用,将间接光的渲染处理过程由每个像素转换为了每个探点,而探点的数量远少于像素的数量,减少了计算次数,提高了渲染处理过程中的处理效率。
本申请实施例还提供了一种终端设备,如图11所示,是本申请实施例提供的另一种终端设备的结构示意图,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请实施例方法部分。该终端可以为包括手机、平板电脑、个人数字助理(personal digital assistant,PDA)、销售终端(point of sales,POS)、车载电脑等任意终端设备,以终端为手机为例:
图11示出的是与本申请实施例提供的终端相关的手机的部分结构的框图。参考图11,手机包括:射频(radio frequency,RF)电路1110、存储器1120、输入单元1130、显示单元1140、传感器1150、音频电路1160、无线保真(wireless fidelity,WiFi)模块1170、处理器1180、以及电源1190等部件。本领域技术人员可以理解,图11中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图11对手机的各个构成部件进行具体的介绍:
RF电路1110可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器1180处理;另外,将设计上行的数据发送给基站。通常,RF电路1110包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(low noiseamplifier,LNA)、双工器等。此外,RF电路1110还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(globalsystem of mobile communication,GSM)、通用分组无线服务(general packet radioservice,GPRS)、码分多址(code division multiple access,CDMA)、宽带码分多址(wideband code division multiple access, WCDMA)、长期演进(long term evolution,LTE)、电子邮件、短消息服务(short messaging service,SMS)等。
存储器1120可用于存储软件程序以及模块,处理器1180通过运行存储在存储器1120的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器1120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元1130可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元1130可包括触控面板1131以及其他输入设备1132。触控面板1131,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1131上或在触控面板1131附近的操作,以及在触控面板1131上一定范围内的隔空触控操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板1131可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器1180,并能接收处理器1180发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1131。除了触控面板1131,输入单元1130还可以包括其他输入设备1132。具体地,其他输入设备1132可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元1140可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元1140可包括显示面板1141,可选的,可以采用液晶显示器(liquidcrystal display,LCD)、有机发光二极管(organic light-emitting diode,OLED)等形式来配置显示面板1141。进一步的,触控面板1131可覆盖显示面板1141,当触控面板1131检测到在其上或附近的触摸操作后,传送给处理器1180以确定触摸事件的类型,随后处理器1180根据触摸事件的类型在显示面板1141上提供相应的视觉输出。虽然在图11中,触控面板1131与显示面板1141是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板1131与显示面板1141集成而实现手机的输入和输出功能。
手机还可包括至少一种传感器1150,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1141的亮度,接近传感器可在手机移动到耳边时,关闭显示面板1141和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等; 至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路1160、扬声器1161,传声器1162可提供用户与手机之间的音频接口。音频电路1160可将接收到的音频数据转换后的电信号,传输到扬声器1161,由扬声器1161转换为声音信号输出;另一方面,传声器1162将收集的声音信号转换为电信号,由音频电路1160接收后转换为音频数据,再将音频数据输出处理器1180处理后,经RF电路1110以发送给比如另一手机,或者将音频数据输出至存储器1120以便进一步处理。
WiFi属于短距离无线传输技术,手机通过WiFi模块1170可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图11示出了WiFi模块1170,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器1180是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器1120内的软件程序和/或模块,以及调用存储在存储器1120内的数据,执行手机的各种功能和处理数据,从而对手机进行整体检测。可选的,处理器1180可包括一个或多个处理单元;可选的,处理器1180可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1180中。
手机还包括给各个部件供电的电源1190(比如电池),可选的,电源可以通过电源管理系统与处理器1180逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。
在本申请实施例中,该终端所包括的处理器1180还具有执行如上述页面处理方法的各个步骤的功能。
本申请实施例还提供了一种服务器,请参阅图12,图12是本申请实施例提供的一种服务器的结构示意图,该服务器1200可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,CPU)1222(例如,一个或一个以上处理器)和存储器1232,一个或一个以上存储应用程序1242或数据1244的存储介质1230(例如一个或一个以上海量存储设备)。其中,存储器1232和存储介质1230可以是短暂存储或持久存储。存储在存储介质1230的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1222可以设置为与存储介质1230通信,在服务器1200上执行存储介质1230中的一系列指令操作。
服务器1200还可以包括一个或一个以上电源1226,一个或一个以上有线或无线网络接口1250,一个或一个以上输入输出接口1258,和/或,一个或一个以上操作系统1241,例如Windows ServerTM,Mac OS XTM,UnixTM, LinuxTM,FreeBSDTM等等。
上述实施例中由管理装置所执行的步骤可以基于该图12所示的服务器结构。
本申请实施例中还提供一种计算机可读存储介质,该计算机可读存储介质中存储有数据的处理指令,当其在计算机上运行时,使得计算机执行如前述图3至图9所示实施例描述的方法中数据的处理装置所执行的步骤。
本申请实施例中还提供一种包括数据的处理指令的计算机程序产品,当其在计算机上运行时,使得计算机执行如前述图3至图9所示实施例描述的方法中数据的处理装置所执行的步骤。
本申请实施例还提供了一种数据的处理系统,所述数据的处理系统可以包含图10所描述实施例中的数据的处理装置,或图11所描述实施例中的终端设备,或者图12所描述的服务器。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,数据的处理装置,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-onlymemory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (15)

1.一种数据的处理方法,其特征在于,包括:
获取目标场景中配置的多个场景探点;
根据所述目标场景对应的光源空间中的虚拟点光源进行间接光照渲染,以得到所述目标场景对应的光照反射贴图;
对所述光照反射贴图中的像素进行采样得到各个所述虚拟点光源对于所述场景探点的光照贡献度,以基于所述光照贡献度确定球谐函数对应的球谐参数;
将所述球谐参数与对应的场景探点进行关联,以生成球谐数据;
响应于所述目标场景中的指示间接光的渲染操作,基于场景探点对应的球谐数据获取待处理像素对应的球谐参数,以根据所述待处理像素对应的球谐参数执行所述指示间接光的渲染操作。
2.根据权利要求1所述的方法,其特征在于,所述对所述光照反射贴图中的像素进行采样得到各个所述虚拟点光源对于所述场景探点的光照贡献度,以基于所述光照贡献度确定球谐函数对应的球谐参数,包括:
响应于采样操作调用计算着色器;
通过所述计算着色器指示的多个处理线程对所述光照反射贴图中的像素进行并行采样,以得到各个所述虚拟点光源对于所述场景探点的光照贡献度;
基于所述光照贡献度确定所述球谐函数对应的球谐参数。
3.根据权利要求2所述的方法,其特征在于,所述通过所述计算着色器指示的多个处理线程对所述光照反射贴图中的像素进行并行采样,以得到各个所述虚拟点光源对于所述场景探点的光照贡献度,包括:
通过所述计算着色器指示的多个处理线程确定所述光照反射贴图对应的辐照度贴图、世界空间坐标贴图以及法线贴图;
根据所述世界空间坐标贴图确定所述光照反射贴图中的像素与所述虚拟点光源的距离信息;
根据所述法线贴图确定所述光照反射贴图中的像素的法线信息;
根据所述辐照度贴图指示的辐照信息、所述距离信息以及所述法线信息确定所述虚拟点光源对于所述场景探点的所述光照贡献度。
4.根据权利要求3所述的方法,其特征在于,所述根据所述辐照度贴图指示的辐照信息、所述距离信息以及所述法线信息确定所述虚拟点光源对于所述场景探点的所述光照贡献度,包括:
基于所述距离信息配置衰减系数;
根据所述法线信息确定像素所处坐标系的多个正交方向;
分别在所述正交方向上基于所述辐照信息进行贡献度计算,以确定所述虚拟点光源对于所述场景探点的所述光照贡献度。
5.根据权利要求1所述的方法,其特征在于,所述将所述球谐参数与对应的场景探点进行关联,以生成球谐数据,包括:
将所述球谐参数与对应的场景探点进行关联,以生成所述场景探点的索引信息;
基于所述索引信息确定球谐参数贴图;
根据所述球谐参数贴图与对应的虚拟点光源生成所述球谐数据。
6.根据权利要求1所述的方法,其特征在于,所述响应于所述目标场景中的指示间接光的渲染操作,基于场景探点对应的球谐数据获取待处理像素对应的球谐参数,以根据所述待处理像素对应的球谐参数执行所述指示间接光的渲染操作,包括:
响应于所述目标场景中的指示间接光的渲染操作,基于场景探点对应的球谐数据获取待处理像素关联的多个场景探点;
根据所述关联的多个场景探点与所述待处理像素的距离确定多个目标探点;
获取所述目标探点指示的所述待处理像素对应的球谐参数;
根据所述待处理像素对应的球谐参数执行所述指示间接光的渲染操作。
7.根据权利要求6所述的方法,其特征在于,所述获取所述目标探点指示的所述待处理像素对应的球谐参数,包括:
获取所述目标探点指示的所述待处理像素对应的探点参数;
根据所述场景探点与所述待处理像素的距离对所述探点参数进行加权计算,以得到所述待处理像素对应的球谐参数。
8.根据权利要求6所述的方法,其特征在于,所述方法还包括:
获取所述待处理像素对应的场景信息;
确定所述场景信息对应的光照配置参数;
基于所述光照配置参数对所述球谐参数进行调整,以基于调整后的所述球谐参数执行所述指示间接光的渲染操作。
9.根据权利要求1所述的方法,其特征在于,所述获取目标场景中配置的多个场景探点,包括:
调用所述目标场景对应的多个预设探点;
获取所述目标场景中包含的场景对象;
基于所述场景对象的分布对所述预设探点进行调整,以得到所述场景探点,所述场景探点与所述场景对象不相交。
10.根据权利要求9所述的方法,其特征在于,所述调用所述目标场景对应的多个预设探点,包括:
获取所述目标场景对应的历史渲染信息;
基于所述历史渲染信息确定指示探点分布的序列信息;
根据所述目标场景中配置的场景参数调用所述序列信息中与所述场景参数相对应的多个所述预设探点。
11.根据权利要求1-10任一项所述的方法,其特征在于,所述方法还包括:
响应于所述目标场景中的空间变化信息,确定所述目标场景对应的光源空间中的调整点光源;
根据所述调整点光源进行间接光照渲染,以得到所述目标场景对应的光照反射贴图;
对所述光照反射贴图中的像素进行采样得到各个所述调整点光源对于所述场景探点的光照贡献度,以基于所述光照贡献度确定球谐函数对应的球谐参数;
将所述球谐参数与对应的场景探点进行关联,以生成球谐数据;
响应于所述目标场景中的指示间接光的渲染操作,基于场景探点对应的球谐数据获取待处理像素对应的球谐参数,以根据所述待处理像素对应的球谐参数执行所述指示间接光的渲染操作。
12.根据权利要求11所述的方法,其特征在于,所述方法还包括:
确定所述空间变化信息与所述待处理像素对应的球谐数据的对应关系,以对所述对应关系进行记录得到调用索引;
响应于所述目标场景中空间变化信息的生成,获取所述调用索引,以基于所述调用索引指示的球谐数据执行所述指示间接光的渲染操作。
13.一种数据的处理装置,其特征在于,包括:
获取单元,用于获取目标场景中配置的多个场景探点;
确定单元,用于根据所述目标场景对应的光源空间中的虚拟点光源进行间接光照渲染,以得到所述目标场景对应的光照反射贴图;
处理单元,用于对所述光照反射贴图中的像素进行采样得到各个所述虚拟点光源对于所述场景探点的光照贡献度,以基于所述光照贡献度确定球谐函数对应的球谐参数;
所述处理单元,还用于将所述球谐参数与对应的场景探点进行关联,以生成球谐数据;
所述处理单元,还用于响应于所述目标场景中的指示间接光的渲染操作,基于场景探点对应的球谐数据获取待处理像素对应的球谐参数,以根据所述待处理像素对应的球谐参数执行所述指示间接光的渲染操作。
14.一种计算机设备,其特征在于,所述计算机设备包括处理器以及存储器:
所述存储器用于存储程序代码;所述处理器用于根据所述程序代码中的指令执行权利要求1至12任一项所述的数据的处理方法。
15.一种计算机程序产品,包括计算机程序/指令,所述计算机程序/指令存储于计算机可读存储介质,其特征在于,所述计算机可读存储介质中的所述计算机程序/指令被处理器执行时实现上述权利要求1至12任一项所述的数据的处理方法的步骤。
CN202310563765.5A 2023-05-18 2023-05-18 一种数据的处理方法、装置以及存储介质 Active CN116310061B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310563765.5A CN116310061B (zh) 2023-05-18 2023-05-18 一种数据的处理方法、装置以及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310563765.5A CN116310061B (zh) 2023-05-18 2023-05-18 一种数据的处理方法、装置以及存储介质

Publications (2)

Publication Number Publication Date
CN116310061A true CN116310061A (zh) 2023-06-23
CN116310061B CN116310061B (zh) 2023-08-08

Family

ID=86813554

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310563765.5A Active CN116310061B (zh) 2023-05-18 2023-05-18 一种数据的处理方法、装置以及存储介质

Country Status (1)

Country Link
CN (1) CN116310061B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116524063A (zh) * 2023-07-04 2023-08-01 腾讯科技(深圳)有限公司 光照颜色的计算方法、装置、设备及介质
CN116612225A (zh) * 2023-07-18 2023-08-18 腾讯科技(深圳)有限公司 光照渲染方法、装置、设备和介质
CN117523062A (zh) * 2024-01-05 2024-02-06 腾讯科技(深圳)有限公司 光照效果的预览方法、装置、设备及存储介质

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140327690A1 (en) * 2013-05-03 2014-11-06 Nvidia Corporation System, method, and computer program product for computing indirect lighting in a cloud network
CN112927341A (zh) * 2021-04-02 2021-06-08 腾讯科技(深圳)有限公司 光照渲染方法、装置、计算机设备和存储介质
CN113786616A (zh) * 2021-09-30 2021-12-14 天津亚克互动科技有限公司 一种间接光照实现方法、装置、存储介质及计算设备
CN114549723A (zh) * 2021-03-30 2022-05-27 完美世界(北京)软件科技发展有限公司 游戏场景中光照信息的渲染方法、装置及设备
CN114782615A (zh) * 2022-04-21 2022-07-22 广东三维家信息科技有限公司 室内场景的实时渲染方法、装置、电子设备及存储介质
CN115272556A (zh) * 2022-07-25 2022-11-01 网易(杭州)网络有限公司 反射光照确定、全局光照确定方法、装置、介质和设备
CN115487495A (zh) * 2022-10-09 2022-12-20 珠海金山数字网络科技有限公司 数据渲染方法以及装置
US20230027890A1 (en) * 2021-05-03 2023-01-26 University Of Southern California Systems and methods for physically-based neural face shader via volumetric lightmaps
CN115830208A (zh) * 2023-01-09 2023-03-21 腾讯科技(深圳)有限公司 全局光照渲染方法、装置、计算机设备和存储介质
CN115984449A (zh) * 2022-12-23 2023-04-18 星臻科技(上海)有限公司 一种光照渲染方法、装置、电子设备及存储介质

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140327690A1 (en) * 2013-05-03 2014-11-06 Nvidia Corporation System, method, and computer program product for computing indirect lighting in a cloud network
CN114549723A (zh) * 2021-03-30 2022-05-27 完美世界(北京)软件科技发展有限公司 游戏场景中光照信息的渲染方法、装置及设备
CN112927341A (zh) * 2021-04-02 2021-06-08 腾讯科技(深圳)有限公司 光照渲染方法、装置、计算机设备和存储介质
US20230027890A1 (en) * 2021-05-03 2023-01-26 University Of Southern California Systems and methods for physically-based neural face shader via volumetric lightmaps
CN113786616A (zh) * 2021-09-30 2021-12-14 天津亚克互动科技有限公司 一种间接光照实现方法、装置、存储介质及计算设备
CN114782615A (zh) * 2022-04-21 2022-07-22 广东三维家信息科技有限公司 室内场景的实时渲染方法、装置、电子设备及存储介质
CN115272556A (zh) * 2022-07-25 2022-11-01 网易(杭州)网络有限公司 反射光照确定、全局光照确定方法、装置、介质和设备
CN115487495A (zh) * 2022-10-09 2022-12-20 珠海金山数字网络科技有限公司 数据渲染方法以及装置
CN115984449A (zh) * 2022-12-23 2023-04-18 星臻科技(上海)有限公司 一种光照渲染方法、装置、电子设备及存储介质
CN115830208A (zh) * 2023-01-09 2023-03-21 腾讯科技(深圳)有限公司 全局光照渲染方法、装置、计算机设备和存储介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
PHILIPP LENSING ET AL: "Instant indirect illumination for dynamic mixed reality scenes", 《IEEE》, pages 109 - 118 *
李子豪: "用于低性能平台的实时全局光照算法研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》, no. 10, pages 138 - 320 *
陈学超: "基于Light-G-Buffer的动态光源实时全局光照算法", 《中国优秀硕士学位论文全文数据库 信息科技辑》, no. 2, pages 138 - 742 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116524063A (zh) * 2023-07-04 2023-08-01 腾讯科技(深圳)有限公司 光照颜色的计算方法、装置、设备及介质
CN116524063B (zh) * 2023-07-04 2023-09-22 腾讯科技(深圳)有限公司 光照颜色的计算方法、装置、设备及介质
CN116612225A (zh) * 2023-07-18 2023-08-18 腾讯科技(深圳)有限公司 光照渲染方法、装置、设备和介质
CN116612225B (zh) * 2023-07-18 2023-12-22 腾讯科技(深圳)有限公司 光照渲染方法、装置、设备和介质
CN117523062A (zh) * 2024-01-05 2024-02-06 腾讯科技(深圳)有限公司 光照效果的预览方法、装置、设备及存储介质
CN117523062B (zh) * 2024-01-05 2024-03-08 腾讯科技(深圳)有限公司 光照效果的预览方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN116310061B (zh) 2023-08-08

Similar Documents

Publication Publication Date Title
CN116310061B (zh) 一种数据的处理方法、装置以及存储介质
CN111292405B (zh) 一种图像渲染的方法以及相关装置
CN106547599B (zh) 一种资源动态加载的方法及终端
CN104363988B (zh) 一种多核处理器的管理方法及装置
CN107067455B (zh) 一种实时渲染的方法及设备
CN111464825B (zh) 一种基于地理信息的直播方法以及相关装置
CN111445563B (zh) 一种图像生成的方法以及相关装置
CN112489179B (zh) 目标模型的处理方法、装置、存储介质及计算机设备
CN112465945A (zh) 一种模型生成方法、装置、存储介质及计算机设备
CN116524061B (zh) 一种图像渲染方法和相关装置
CN116610372B (zh) 一种中央处理器配置方法、装置及相关产品
CN112190937A (zh) 游戏中的光照处理方法、装置、设备及存储介质
CN111617472A (zh) 一种虚拟场景中模型管理的方法以及相关装置
CN111612921B (zh) 一种碰撞范围确定方法和相关装置
CN116704107B (zh) 一种图像渲染方法和相关装置
CN111367502A (zh) 一种数值处理方法和装置
CN112948273B (zh) 一种游戏资源的测试方法、相关装置、设备及存储介质
US12026804B2 (en) Method for determining collision range and related apparatus
US20220277495A1 (en) Method for determining collision range and related apparatus
CN117152327B (zh) 一种参数调节方法和相关装置
CN116703808A (zh) 假商品样本图像生成方法、相关装置及存储介质
CN113704134B (zh) 一种模型检测方法和相关装置
US20230011650A1 (en) Systems and methods for rendering a virtual environment using light probes
CN116778076A (zh) 一种人脸样本构建方法和相关装置
CN117590368A (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40087922

Country of ref document: HK