CN108090949A - 一种基于光能传播的实时全局光照方法 - Google Patents

一种基于光能传播的实时全局光照方法 Download PDF

Info

Publication number
CN108090949A
CN108090949A CN201711430069.8A CN201711430069A CN108090949A CN 108090949 A CN108090949 A CN 108090949A CN 201711430069 A CN201711430069 A CN 201711430069A CN 108090949 A CN108090949 A CN 108090949A
Authority
CN
China
Prior art keywords
scene
global illumination
illumination
volume textures
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.)
Withdrawn
Application number
CN201711430069.8A
Other languages
English (en)
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.)
Suzhou Snail Digital Technology Co Ltd
Original Assignee
Suzhou Snail Digital Technology 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 Suzhou Snail Digital Technology Co Ltd filed Critical Suzhou Snail Digital Technology Co Ltd
Priority to CN201711430069.8A priority Critical patent/CN108090949A/zh
Publication of CN108090949A publication Critical patent/CN108090949A/zh
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/50Lighting effects
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Image Generation (AREA)
  • Processing Or Creating Images (AREA)

Abstract

一种基于光能传播的实时全局光照方法,包括以下步骤:对场景进行预渲染,并构建用于存储场景颜色的第一体积纹理;计算所述第一体积纹理的各像素格子的光照信息,并将其存储到用于记录场景最终全局光照信息的第二体积纹理;计算场景的全局光照信息并且渲染到全局光照图,并使用所述全局光照图对场景进行光照叠加;使用叠加后的所述光照图对场景进行光照计算。本发明是一种基于光能传播的实时全局光照方法,能够提高场景明暗变化的层次感,能够实现光线反弹,提高实时光照质量,得到更为真实的光照效果。

Description

一种基于光能传播的实时全局光照方法
技术领域
本发明涉及3D游戏技术领域,特别是涉及一种基于光能传播的实时全局光照方法。
背景技术
纵观目前市面上大部分的3D游戏,大多是使用的直接光照进行照明。对光照信息,整体加上一个固定的亮度值,也就是环境光的强度, 用来调节场景的整体亮度。这种光照方式存在一下缺点:(1)由于对场景中的所有像素都是同样对待,统一加上一个亮度值,所以无法模拟出场景明暗变化的层次感。比如阳光从外面照射进很深的建筑里时,光线会慢慢衰减。但是直接光照无法做出这种效果。(2)无法实现颜色反弹的效果。比如阳光照射在靠近墙面的一块带颜色布料的时候,墙面的颜色应该受到布料颜色的影响。但是直接光照却无法实现这种效果。
发明内容
为了解决现有技术存在的不足,本发明的目的在于提供一种基于光能传播的实时全局光照方法,能够提高场景明暗变化的层次感,能够实现光线反弹,提高实时光照质量,得到更为真实的光照效果。
为实现上述目的,本发明提供的基于光能传播的实时全局光照方法,包括以下步骤:
对场景进行预渲染,并构建用于存储场景颜色的第一体积纹理;
计算所述第一体积纹理的各像素格子的光照信息,并将其存储到用于记录场景最终全局光照信息的第二体积纹理;
计算场景的全局光照信息并且渲染到全局光照图,并使用所述全局光照图对场景进行光照叠加 ;
使用叠加后的所述光照图对场景进行光照计算。
进一步地,所述对场景进行预渲染,并构建用于存储场景颜色的第一体积纹理的步骤,进一步包括:
从灯光的视角对游戏场景进行预渲染,获得当前场景颜色缓冲、法线缓冲和深度缓冲三个渲染目标;
利用所述当前场景颜色缓冲、法线缓冲和深度缓冲构建用于存储场景颜色的第一体积纹理。
进一步地,所述计算所述第一体积纹理的各像素格子的光照信息,并将其存储到用于记录场景最终全局光照信息的第二体积纹理的步骤,进一步包括:
确定当前点在所述第一体积纹理空间的坐标;
计算当前点的颜色值并将其存储在所述第一体积纹理中相应的坐标位置;
对于第一体积纹理中的每个像素格子,计算出周围所有像素格子的所有面对这个像素格子影响的权重;
根据每个面的颜色与权重对每个像素格子进行光照计算,并将其存储在所述第二体积纹理中。
进一步地,所述确定当前点在所述第一体积纹理空间的坐标的步骤,进一步包括:
根据所述深度缓冲里的深度信息及屏幕空间的坐标确定当前点在所述第一体积纹理空间里的坐标。
进一步地,所述计算当前点的颜色值并将其存储在所述第一体积纹理中相应的坐标位置的步骤,进一步包括:
在所述颜色缓冲和所述法线缓冲中获取当前点的颜色信息和法线信息;
根据所述法线信息计算球谐系数;
通过在每个颜色值通道乘上相应的所述球谐系数来得到球谐变换后的颜色值;
将所述球谐变换后的颜色值存储在所述第一体积纹理相应的坐标位置。
进一步地,所述对于第一体积纹理中的每个像素格子,计算出周围所有像素格子的所有面对这个像素格子影响的权重,进一步包括:
将所述像素格子设为正方形格子;
根据所述像素格子与周围每个像素格子每个面的距离和方向信息,计算每个面对所述像素格子影响的权重。
进一步地,所述计算场景的全局光照信息并且渲染到全局光照图,并使用所述全局光照图对场景进行光照叠加的步骤,进一步包括:
使用直接光照对场景进行照明计算;
根据当前场景深度图以及所述第二体积纹理,计算当前场景的所述全局光照信息并渲染到所述全局光照图。
进一步地,所述使用直接光照对场景进行照明计算的步骤,进一步包括:
从摄像机空间使用直接光照对场景进行常规的照明计算,并将环境光强度设为零。
更进一步地,所述根据当前场景深度图以及所述第二体积纹理,计算当前场景的所述全局光照信息并渲染到所述全局光照图的步骤,进一步包括:
根据当前场景深度图以及所述第二体积纹理,计算当前场景的所述全局光照信息并渲染到所述全局光照图;
将当前场景点的坐标变换成所述第二体积纹理的坐标空间里;
通过使用变换后的坐标对所述第二体积纹理进行采样来获得当前点的颜色值,并将所获得的颜色值存储到全局光照图。。
本发明的基于光能传播的实时全局光照方法,通过对场景进行预渲染,根据3个渲染目标构建第一体积纹理,并对于上述体积纹理里的每一个像素格子的颜色值,按照一定的方式(比如辐射度)向周围扩散和传播获得当前场景最终的全局光照明信息,能够提高场景明暗变化的层次感,提高实时光照质量,得到更为真实的光照效果。
本发明的基于光能传播的实时全局光照方法,使用全局光照图对使用直接光照对场景进行照明计算的场景进行光照叠加,能够实现光线反弹,提高实时光照质量,得到更为真实的光照效果。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,并与本发明的实施例一起,用于解释本发明,并不构成对本发明的限制。在附图中:
图1为根据本发明的基于光能传播的实时全局光照方法的方法流程图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
图1为根据本发明的基于光能传播的实时全局光照方法的方法流程图,下面将参考图1,对本发明的基于光能传播的实时全局光照方法进行详细描述。
首先,在步骤101,对场景进行预渲染,获得3个渲染目标。在该步骤中,从灯光的视角对游戏场景进行预渲染,获得3个渲染目标:当前场景颜色缓冲、法线缓冲、及深度缓冲。在此,不需要进行光照计算,因此对游戏的整体性能影响并不大。
在步骤102,构建用于存储场景颜色的第一体积纹理。在该步骤中,使用上述三种缓冲即前场景颜色缓冲、法线缓冲、及深度缓冲构建用于存储场景颜色的体积纹理即第一体积纹理,具体地,将渲染目标设为预先创建的用于存储场景颜色信息的体积纹理,渲染基本元素为点列表,根据实际需要的渲染质量来决定点列表里点的总数量。
在步骤103,确定当前点在第一体积纹理空间中的坐标。在该步骤中,在GPU中,根据深度缓冲里的深度信息及屏幕空间的坐标确定当前点在第一体积纹理空间里的坐标。
在步骤104,计算当前点的颜色值并将其存储在第一体积纹理中相应的坐标位置。在该步骤中,在颜色缓冲和法线缓冲中获取当前点的颜色信息和法线信息;根据法线信息计算球谐系数;通过在每个颜色值通道乘上相应的球谐系数来得到经过球谐变换后的颜色值;将上述颜色值存储在第一体积纹理相应的坐标位置。
在步骤105,对于第一体积纹理中的每个像素格子,计算出周围所有像素格子的所有面对这个像素格子影响的权重。在该步骤中,将所获得的第一体积纹理作为输入纹理传输至GPU中,在GPU中,将各体积纹理的体像素点抽象为一个正方形格子,此时,每一个格子周围都有6个格子与其直接接触,在计算当前像素格子的光照信息时,遍历周围所有6个格子的所有6个面,根据当前像素格子与周围每个格子的每个面的距离和方向信息 ,计算每个面对当前像素格子影响的权重。
在步骤106,根据上述每个面的颜色和权重对每个像素格子进行光照计算,并将结果存储到第二体积纹理中。在该步骤中,根据每个面的颜色和权重对当前像素格子进行光照计算;将所得到的颜色存储到另外的体积纹理即第二体积纹理中。第二体积纹理即为记录场景最终全局光照明信息的体积纹理。
在步骤107,使用直接光照对场景进行照明计算。在该步骤中,从摄像机空间使用直接光照对场景进行常规的照明计算。此时,环境光强度设为零。
在步骤108,计算当前场景的全局光照信息并渲染到全局光照图中。在步骤108中,根据当前场景深度图以及第二体积纹理,计算当前场景的全局光照信息并渲染到全局光照图中。具体地,根据屏幕空间坐标和场景深度图中的深度信息;将当前场景点的坐标变换成第二体积纹理的坐标空间里;通过使用变换后的坐标对第二体积纹理进行采样来获得当前点的颜色值,并将所获得的颜色值存储到全局光照图中。
在步骤109,使用全局光照图对场景进行光照叠加。
在步骤110,使用叠加后的光照图对场景进行最终的光照计算。
根据本发明的实施例,对场景进行预渲染,根据3个目标构建第一体积纹理,并对于上述体积纹理里的每一个像素格子的颜色值,按照一定的方式(比如辐射度)向周围扩散和传播获得当前场景最终的全局光照明信息。因此,能够提高场景明暗变化的层次感,提高实时光照质量,得到更为真实的光照效果。
根据本发明的实施例,使用全局光照图对使用直接光照对场景进行照明计算的场景。因此,能够实现光线反弹,提高实时光照质量,得到更为真实的光照效果。
本领域普通技术人员可以理解:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (9)

1.一种基于光能传播的实时全局光照方法,其特征在于,包括以下步骤:
对场景进行预渲染,并构建用于存储场景颜色的第一体积纹理;
计算所述第一体积纹理的各像素格子的光照信息,并将其存储到用于记录场景最终全局光照信息的第二体积纹理;
计算场景的全局光照信息并且渲染到全局光照图,并使用所述全局光照图对场景进行光照叠加;
使用叠加后的所述光照图对场景进行光照计算。
2.根据权利要求1所述的基于光能传播的实时全局光照方法,其特征在于,所述对场景进行预渲染,并构建用于存储场景颜色的第一体积纹理的步骤,进一步包括:
从灯光的视角对游戏场景进行预渲染,获得当前场景颜色缓冲、法线缓冲和深度缓冲三个渲染目标;
利用所述当前场景颜色缓冲、法线缓冲和深度缓冲构建用于存储场景颜色的第一体积纹理。
3.根据权利要求1所述的基于光能传播的实时全局光照方法,其特征在于,所述计算所述第一体积纹理的各像素格子的光照信息,并将其存储到用于记录场景最终全局光照信息的第二体积纹理的步骤,进一步包括:
确定当前点在所述第一体积纹理空间的坐标;
计算当前点的颜色值并将其存储在所述第一体积纹理中相应的坐标位置;
对于第一体积纹理中的每个像素格子,计算出周围所有像素格子的所有面对这个像素格子影响的权重;
根据每个面的颜色与权重对每个像素格子进行光照计算,并将结果存储在所述第二体积纹理中。
4.根据权利要求3所述的基于光能传播的实时全局光照方法,其特征在于,所述确定当前点在所述第一体积纹理空间的坐标的步骤,进一步包括:
根据所述深度缓冲里的深度信息及屏幕空间的坐标确定当前点在所述第一体积纹理空间里的坐标。
5.根据权利要求3所述的基于光能传播的实时全局光照方法,其特征在于,所述计算当前点的颜色值并将其存储在所述第一体积纹理中相应的坐标位置的步骤,进一步包括:
在所述颜色缓冲和所述法线缓冲中获取当前点的颜色信息和法线信息;
根据所述法线信息计算球谐系数;
通过在每个颜色值通道乘上相应的所述球谐系数来得到球谐变换后的颜色值;
将所述球谐变换后的颜色值存储在所述第一体积纹理相应的坐标位置。
6.根据权利要求3所述的基于光能传播的实时全局光照方法,其特征在于,所述对于第一体积纹理中的每个像素格子,计算出周围所有像素格子的所有面对这个像素格子影响的权重的步骤,进一步包括:
将所述像素格子设为正方形格子;
根据所述像素格子与周围每个像素格子每个面的距离和方向信息,计算每个面对所述像素格子影响的权重。
7.根据权利要求1所述的基于光能传播的实时全局光照方法,其特征在于,所述计算场景的全局光照信息并且渲染到全局光照图,并使用所述全局光照图对场景进行光照叠加的步骤,进一步包括:
使用直接光照对场景进行照明计算;
根据当前场景深度图以及所述第二体积纹理,计算当前场景的所述全局光照信息并渲染到所述全局光照图。
8.根据权利要求7所述的基于光能传播的实时全局光照方法,其特征在于,所述使用直接光照对场景进行照明计算的步骤,进一步包括:
从摄像机空间使用直接光照对场景进行常规的照明计算,并环境光强度设为零。
9.根据权利要求7所述的基于光能传播的实时全局光照方法,其特征在于,所述根据当前场景深度图以及所述第二体积纹理,计算当前场景的所述全局光照信息并渲染到所述全局光照图的步骤,进一步包括:
根据当前场景深度图以及所述第二体积纹理,计算当前场景的所述全局光照信息并渲染到所述全局光照图;
将当前场景点的坐标变换成所述第二体积纹理的坐标空间里;
通过使用变换后的坐标对所述第二体积纹理进行采样来获得当前点的颜色值,并将所获得的颜色值存储到全局光照图。
CN201711430069.8A 2017-12-26 2017-12-26 一种基于光能传播的实时全局光照方法 Withdrawn CN108090949A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711430069.8A CN108090949A (zh) 2017-12-26 2017-12-26 一种基于光能传播的实时全局光照方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711430069.8A CN108090949A (zh) 2017-12-26 2017-12-26 一种基于光能传播的实时全局光照方法

Publications (1)

Publication Number Publication Date
CN108090949A true CN108090949A (zh) 2018-05-29

Family

ID=62179157

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711430069.8A Withdrawn CN108090949A (zh) 2017-12-26 2017-12-26 一种基于光能传播的实时全局光照方法

Country Status (1)

Country Link
CN (1) CN108090949A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110211218A (zh) * 2019-05-17 2019-09-06 腾讯科技(深圳)有限公司 画面渲染方法和装置、存储介质及电子装置
CN111179404A (zh) * 2019-12-13 2020-05-19 江苏艾佳家居用品有限公司 一种基于室内场景均匀分块的实时全局光照渲染方法
CN115984444A (zh) * 2023-03-21 2023-04-18 成都信息工程大学 一种体数据全局光照的光照信息缓存计算方法及系统
WO2023169013A1 (zh) * 2022-03-08 2023-09-14 腾讯科技(深圳)有限公司 三维空间的全局光照计算方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102768765A (zh) * 2012-06-25 2012-11-07 南京安讯网络服务有限公司 实时点光源软阴影渲染方法
CN103021020A (zh) * 2012-12-05 2013-04-03 上海创图网络科技发展有限公司 一种基于多光源的3d渲染方法
CN104268923A (zh) * 2014-09-04 2015-01-07 无锡梵天信息技术股份有限公司 一种基于照片级别图像的光照方法
CN104268922A (zh) * 2014-09-03 2015-01-07 广州博冠信息科技有限公司 一种图像渲染方法及图像渲染装置
CN107452048A (zh) * 2016-05-30 2017-12-08 网易(杭州)网络有限公司 全局光照的计算方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102768765A (zh) * 2012-06-25 2012-11-07 南京安讯网络服务有限公司 实时点光源软阴影渲染方法
CN103021020A (zh) * 2012-12-05 2013-04-03 上海创图网络科技发展有限公司 一种基于多光源的3d渲染方法
CN104268922A (zh) * 2014-09-03 2015-01-07 广州博冠信息科技有限公司 一种图像渲染方法及图像渲染装置
CN104268923A (zh) * 2014-09-04 2015-01-07 无锡梵天信息技术股份有限公司 一种基于照片级别图像的光照方法
CN107452048A (zh) * 2016-05-30 2017-12-08 网易(杭州)网络有限公司 全局光照的计算方法及装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110211218A (zh) * 2019-05-17 2019-09-06 腾讯科技(深圳)有限公司 画面渲染方法和装置、存储介质及电子装置
CN110211218B (zh) * 2019-05-17 2021-09-10 腾讯科技(深圳)有限公司 画面渲染方法和装置、存储介质及电子装置
CN111179404A (zh) * 2019-12-13 2020-05-19 江苏艾佳家居用品有限公司 一种基于室内场景均匀分块的实时全局光照渲染方法
CN111179404B (zh) * 2019-12-13 2022-08-12 江苏艾佳家居用品有限公司 一种基于室内场景均匀分块的实时全局光照渲染方法
WO2023169013A1 (zh) * 2022-03-08 2023-09-14 腾讯科技(深圳)有限公司 三维空间的全局光照计算方法、装置、设备及存储介质
CN115984444A (zh) * 2023-03-21 2023-04-18 成都信息工程大学 一种体数据全局光照的光照信息缓存计算方法及系统

Similar Documents

Publication Publication Date Title
WO2022206380A1 (zh) 光照渲染方法、装置、计算机设备和存储介质
CN108090949A (zh) 一种基于光能传播的实时全局光照方法
US7710418B2 (en) Systems and methods for the real-time and realistic simulation of natural atmospheric lighting phenomenon
CN102768765B (zh) 实时点光源软阴影渲染方法
US20190228568A1 (en) Electronic device, method for displaying an augmented reality scene and non-transitory computer-readable medium
CN103903296B (zh) 虚拟家装室内场景设计中的阴影渲染方法
WO2023185262A1 (zh) 光照渲染方法、装置、计算机设备和存储介质
CN111223191A (zh) 面向机载增强合成视景系统的大规模场景红外成像实时仿真方法
CN110908510A (zh) 一种倾斜摄影建模数据在沉浸式显示设备中的应用方法
CN102184561B (zh) 一种3d云层模拟实现方法
CN110163979A (zh) 一种燃机发电机组的虚拟装配三维展现方法
CN107846584B (zh) 基于场景管理开发库的虚拟现实自适应桌面同步投影方法
CA3199390A1 (en) Systems and methods for rendering virtual objects using editable light-source parameter estimation
CN116894922A (zh) 一种基于实时图形引擎的夜视图像生成方法
Green Efficient self-shadowed radiosity normal mapping
Munkberg et al. Hyperplane Culling for Stochastic Rasterization.
Liu et al. Lighting estimation via differentiable screen-space rendering
US7724255B2 (en) Program, information storage medium, and image generation system
Hughes et al. The future of mixed reality: Issues in illumination and shadows
WO2023089777A1 (ja) 画像処理装置、オブジェクトデータ生成装置、画像処理方法、オブジェクトデータ生成方法、およびオブジェクトモデルのデータ構造
Cowan et al. Interactive rate acoustical occlusion/diffraction modeling for 2D virtual environments & games
JP7190780B1 (ja) 画像処理プログラム、画像処理装置、及び画像処理方法
Qu et al. MD3 Model Loading in Game.
CN103761759B (zh) 基于光辉喷洒的图像渲染方法
CN109872399B (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
WW01 Invention patent application withdrawn after publication

Application publication date: 20180529

WW01 Invention patent application withdrawn after publication