CN106373179B - 光照场景渲染方法 - Google Patents

光照场景渲染方法 Download PDF

Info

Publication number
CN106373179B
CN106373179B CN201610754823.2A CN201610754823A CN106373179B CN 106373179 B CN106373179 B CN 106373179B CN 201610754823 A CN201610754823 A CN 201610754823A CN 106373179 B CN106373179 B CN 106373179B
Authority
CN
China
Prior art keywords
illumination
vector
patch grids
ratio
add
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.)
Active
Application number
CN201610754823.2A
Other languages
English (en)
Other versions
CN106373179A (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.)
Beijing Pixel Software Technology Co Ltd
Original Assignee
Beijing Pixel Software 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 Beijing Pixel Software Technology Co Ltd filed Critical Beijing Pixel Software Technology Co Ltd
Priority to CN201610754823.2A priority Critical patent/CN106373179B/zh
Publication of CN106373179A publication Critical patent/CN106373179A/zh
Application granted granted Critical
Publication of CN106373179B publication Critical patent/CN106373179B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/50Lighting effects
    • G06T15/506Illumination models

Landscapes

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

Abstract

本申请公开了一种光照场景渲染方法,包括:对于光照场景中每个待渲染对象对应的网格面片,根据预设的补光系数add_ratio以及向量l与向量n的点积结果的绝对值,计算该网格面片的光照强度值;其中,l为光源方向的单位向量,n为网格面片所对应的物体表面法线的单位向量,add_ratio大于等于零;根据每个所述网格面片的光照强度值,对所述网格面片进行渲染。采用本发明,可以提高场景渲染的逼真度。

Description

光照场景渲染方法
技术领域
本发明涉及场景渲染技术,特别是涉及一种光照场景渲染方法。
背景技术
在虚拟场景的渲染中,为了使场景中的渲染对象(如树叶)更具有真实效果,通常需要对用于绘制渲染对象的网格面片计算光照强度属性,使其在渲染时,可以呈现出光照效果。
目前通常利用Phong光照模型,来对网格面片的光照强度进行计算。Phong光照模型是实时图形学中一个广泛使用的局部光照模型,在该模型中,对象表面最终的颜色由四项定义:漫反射光、镜面光、环境光和发射光。其中漫反射光和镜面光处理直接来自光源的光线;环境光则处理间接光照;发射光处理自发光。
当只考察漫反射光时,在现有的利用Phong光照模型计算网格面片的光照强度的方案中,在光源的方向和颜色确定的情况下,物体收到漫反射光的光照强度由物体表面的法线和光源方向的夹角决定,夹角越小光强越大,当夹角超过90°时(如图1所示)光照强度为0。用向量l表示光源的方向,向量n表示物体表面的法向量,假设l和n均为标准化向量,则l和n的点积结果n·l可以表示光照强度。考虑夹角超过90°的情况(该情况下点积结果n·l为负值),光照强度的通用计算公式可以表示为:max(n·l,0)。
在上述方案中,当物体表面的法线和光源方向的夹角超过90°时光照强度为0,这样意味着,这些情况下,对应的网格面片在绘制时其亮度为零即为黑色。这样,对于由多个网格面片构建的渲染对象,会使其整体渲染效果失真度较大。例如,一颗树的树叶部分是由很多树叶组成,密集的森林有大量的树木组成。为了满足实时渲染的要求,常用的方法是用一个大的网格面片表示一簇树叶,这样就可以用较少的网格面片表达一颗树。每片树叶的朝向具有随机性,接受的光照也是独立的,但是整体的树叶却有统一性。采用上述传统的渲染方案,其渲染效果就会呈现出如图2所示的效果,该图中某些树叶叶片光照强度为0,这样黑色的叶片效果导致树叶光照没有整体感。
由此可见,现有的光照场景渲染方法存在光照效果失真度较高的问题。
发明内容
有鉴于此,本发明的主要目的在于提供一种光照场景渲染方法,该方法可以提高场景渲染的逼真度。
为了达到上述目的,本发明提出的技术方案为:
一种光照场景渲染方法,包括:
对于光照场景中每个待渲染对象对应的网格面片,根据预设的补光系数add_ratio以及向量l与向量n的点积结果的绝对值,计算该网格面片的光照强度值;其中,l为光源方向的单位向量,n为网格面片所对应的物体表面法线的单位向量,add_ratio大于等于零;
根据每个所述网格面片的光照强度值,对所述网格面片进行渲染。
综上所述,本发明提出的光照场景渲染方法,通过引入补光系数add_ratio,根据预设的补光系数add_ratio以及向量l与向量n的点积结果的绝对值,来确定网格面片的光照强度值,可以大幅度减少甚至消除黑色网格面片的存在,有效避免大量网格面片的光照强度为零而导致的场景渲染失真的问题,从而可以提高场景渲染的逼真度。
附图说明
图1为物体表面的法线和光源方向的夹角超过90°的示意图;
图2为采用现有光照场景渲染方案进行渲染的效果示例图;
图3为本发明实施例的方法流程示意图;
图4为物体表面的法线和光源方向的夹角超过90°时法线向量取反示意图;
图5为本发明渲染示例一的效果图;
图6为本发明渲染示例二的效果图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明作进一步地详细描述。
本发明的核心思想是:在计算网格面片的光照强度时,参照预设的补光系数add_ratio和向量l与向量n的点积结果的绝对值,这样,可以使网格面片的光照强度更有层次性,大幅度减少或避免黑色网格面片的存在,进而可以提高光照场景渲染的逼真度。
图3为本发明实施例的流程示意图,如图3所示,该实施例主要包括:
步骤301、对于光照场景中每个待渲染对象对应的网格面片,根据预设的补光系数add_ratio以及向量l与向量n的点积结果的绝对值,计算该网格面片的光照强度值。
其中,l为光源方向的单位向量,n为网格面片所对应的物体表面法线的单位向量,add_ratio大于等于零。
本步骤中,与现有方案所不同的是,在计算网格面片的光照强度时,需要参照预设的补光系数add_ratio和向量l与向量n的点积结果的绝对值,这样,可以使网格面片的光照强度更有层次性,进而可以提高光照场景渲染的逼真度。
在实际应用中,对于所述补光系数add_ratio,可以由本领域技术人员根据实际场景中待渲染对象背光时的透光效果,设置合适的取值。较佳地,其取值范围为:0≤add_ratio<1。
较佳地,可以按照scalar=max(abs(dot(n,l)),add_ratio),计算每个网格面片的所述光照强度值scalar,其中,dot(n,l)为向量l与向量n的点积运算函数,abs()为取绝对值函数,max(,)为两个参数中取最大值的函数。
在上述计算光照强度值scalar的方案中,通过对向量l和向量n的点积结果n·l取绝对值,使得当物体表面的法线和光源方向的夹角大于90°时(如图4所示),对所述法线的单位向量n,根据该取反后的向量n’与向量l的点积结果,结合补光系数add_ratio来确定光照强度,如此,在物体表面的法线和光源方向的夹角大于90°,且超过一定程度(即abs(dot(n,l)大于add_ratio)时,将根据不同的夹角配置不同的光照强度,且光照强度的变化更符合实际场景的效果,使得整体渲染的光照更丰富更有层次性,从而可以避免传统方案中在所有物体表面的法线和光源方向的夹角大于90°的情况直接将其光照强度设置为零所致的渲染失真问题。
当abs(dot(n,l)很小时,说明物体表面的法线和光源方向的夹角在90°附近,在上述计算光照强度值scalar的方案中,将选择abs(dot(n,l)和add_ratio中最大值作为网格面片的光照强度值,这样,就可有效避免物体表面的法线和光源方向的夹角在90°附近时对应的网格面片呈现出黑色的情况,从而可以更好地提升整体的场景渲染的逼真度。
在实际应用中,需要具有光照强度特性的待渲染对象与现有的三维场景渲染方案相同,若干这些待渲染对象对应的网格面片随机组合将构建出复杂的风格物体比如大树、灌木丛等,在此不再赘述。
在比较常用的场景中,所述待渲染对象可以为树叶。
步骤302、根据每个所述网格面片的光照强度值,对所述网格面片进行渲染。
本步骤中的具体渲染实现方法同现有渲染方案,在此不再赘述。
下面以采用本发明对一棵树进行渲染为例,来进一步阐述本发明的技术效果。
图5和图6分别为补光系数add_ratio=0和add_ratio=0.4时树的渲染效果图,如图中所示,其中树叶的黑色区域可以大幅度减少(如图5)甚至没有(如图6),可见,采用本发明可以显著提升光照场景渲染的整体光照感,使最终渲染效果更加自然真实,有利于提升引擎渲染室外场景时的浸入感。
综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (3)

1.一种光照场景渲染方法,其特征在于,包括:
对于光照场景中每个待渲染对象对应的网格面片,根据预设的补光系数add_ratio以及向量l与向量n的点积结果的绝对值,计算该网格面片的光照强度值;其中,l为光源方向的单位向量,n为网格面片所对应的物体表面法线的单位向量,add_ratio大于等于零;
根据每个所述网格面片的光照强度值,对所述网格面片进行渲染;
其中,按照scalar=max(abs(dot(n,l)),add_ratio),计算每个网格面片的所述光照强度值scalar,其中,dot(n,l)为向量l与向量n的点积运算函数,abs()为取绝对值函数,max(,)为两个参数中取最大值的函数。
2.根据权利要求1所述的方法,其特征在于,所述待渲染对象为树叶。
3.根据权利要求1所述的方法,其特征在于,0≤add_ratio<1。
CN201610754823.2A 2016-08-29 2016-08-29 光照场景渲染方法 Active CN106373179B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610754823.2A CN106373179B (zh) 2016-08-29 2016-08-29 光照场景渲染方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610754823.2A CN106373179B (zh) 2016-08-29 2016-08-29 光照场景渲染方法

Publications (2)

Publication Number Publication Date
CN106373179A CN106373179A (zh) 2017-02-01
CN106373179B true CN106373179B (zh) 2019-02-26

Family

ID=57900651

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610754823.2A Active CN106373179B (zh) 2016-08-29 2016-08-29 光照场景渲染方法

Country Status (1)

Country Link
CN (1) CN106373179B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106981087A (zh) * 2017-04-05 2017-07-25 杭州乐见科技有限公司 光照效果渲染方法及装置
CN108921908B (zh) * 2018-07-03 2020-07-28 百度在线网络技术(北京)有限公司 表面光场的采集方法、装置及电子设备
WO2020019131A1 (zh) * 2018-07-23 2020-01-30 太平洋未来科技(深圳)有限公司 光线信息的确定方法、装置及电子设备
CN116152420A (zh) * 2021-11-22 2023-05-23 华为云计算技术有限公司 一种渲染方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5659671A (en) * 1992-09-30 1997-08-19 International Business Machines Corporation Method and apparatus for shading graphical images in a data processing system
CN101354794A (zh) * 2008-09-10 2009-01-28 汕头超声仪器研究所 基于图形处理器的实时三维图像的光照模拟方法
CN103679802A (zh) * 2013-12-01 2014-03-26 北京航空航天大学 基于屏幕空间的sph流体表面实时绘制方法
CN103699733A (zh) * 2013-12-19 2014-04-02 山东大学 一种光照模型系统及实现方法
CN104574495A (zh) * 2014-12-22 2015-04-29 北京像素软件科技股份有限公司 一种图像渲染方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5659671A (en) * 1992-09-30 1997-08-19 International Business Machines Corporation Method and apparatus for shading graphical images in a data processing system
CN101354794A (zh) * 2008-09-10 2009-01-28 汕头超声仪器研究所 基于图形处理器的实时三维图像的光照模拟方法
CN103679802A (zh) * 2013-12-01 2014-03-26 北京航空航天大学 基于屏幕空间的sph流体表面实时绘制方法
CN103699733A (zh) * 2013-12-19 2014-04-02 山东大学 一种光照模型系统及实现方法
CN104574495A (zh) * 2014-12-22 2015-04-29 北京像素软件科技股份有限公司 一种图像渲染方法和装置

Also Published As

Publication number Publication date
CN106373179A (zh) 2017-02-01

Similar Documents

Publication Publication Date Title
CN106373179B (zh) 光照场景渲染方法
CN111009026B (zh) 对象渲染方法和装置、存储介质及电子装置
CN112316420B (zh) 模型渲染方法、装置、设备及存储介质
CN106815883B (zh) 一种游戏角色的头发处理方法及系统
CN107749077B (zh) 一种卡通风格光影渲染方法、装置、设备及介质
CN112116692B (zh) 模型渲染方法、装置、设备
EP2705501B1 (en) Texturing in graphics hardware
CN104077802B (zh) 增强虚拟场景实时仿真图像显示的方法
JP5839907B2 (ja) 画像処理装置および画像処理方法
CN109035381B (zh) 基于ue4平台的卡通画头发渲染方法、存储介质
CN104392479B (zh) 一种利用灯光索引号对像素进行光照着色的方法
JP3141245B2 (ja) 画像の表示方法
CN106296620B (zh) 一种基于直方图平移的色彩还原方法
CN106898040A (zh) 虚拟资源对象渲染方法和装置
CN107886552A (zh) 贴图处理方法和装置
WO2023098344A1 (zh) 一种图形处理方法、装置、计算机设备及存储介质
CN112446943A (zh) 图像渲染的方法、装置及计算机可读存储介质
CN113052972B (zh) 基于神经网络的光照效果增强的方法、装置、系统和介质
CN113409465B (zh) 毛发模型的生成方法、装置、存储介质与电子设备
CN104952093A (zh) 虚拟染发方法和装置
CN115845369A (zh) 卡通风格渲染方法、装置、电子设备及存储介质
CN113052970A (zh) 一种基于神经网络的灯光光强颜色的设计方法、装置、系统及存储介质
CN112669437B (zh) 角色模型着色方法、着色器、设备及存储介质
CN105761300B (zh) 基于预采样的过程Shader反走样的处理方法
CN110298910A (zh) 一种光照计算方法、装置、计算设备及存储介质

Legal Events

Date Code Title Description
C06 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