CN115810077A - 一种虚拟对象渲染方法、装置、计算机设备和存储介质 - Google Patents
一种虚拟对象渲染方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN115810077A CN115810077A CN202211625949.1A CN202211625949A CN115810077A CN 115810077 A CN115810077 A CN 115810077A CN 202211625949 A CN202211625949 A CN 202211625949A CN 115810077 A CN115810077 A CN 115810077A
- Authority
- CN
- China
- Prior art keywords
- target
- rendering
- illumination
- probe
- depth
- 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
Images
Classifications
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02B—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO BUILDINGS, e.g. HOUSING, HOUSE APPLIANCES OR RELATED END-USER APPLICATIONS
- Y02B20/00—Energy efficient lighting technologies, e.g. halogen lamps or gas discharge lamps
- Y02B20/40—Control techniques providing energy savings, e.g. smart controller or presence detection
Landscapes
- Image Generation (AREA)
Abstract
本发明实施例公开了一种虚拟对象渲染方法、装置、计算机设备和存储介质;本发明实施例可确定当前场景下的目标渲染对象以及目标渲染对象对应的若干个目标光照探针,每个目标光照探针被配置有中心方向对应的烘焙深度,根据目标渲染对象与目标光照探针之间的距离,以及目标光照探针在中心方向上的烘焙深度,从目标光照探针中确定渲染光照探针,渲染光照探针对应的环境光在当前场景下可到达目标渲染对象,基于渲染光照探针对应的环境光照信息进行计算,得到目标渲染对象的目标环境光照信息,基于目标环境光照信息对虚拟对象进行渲染;可避免对应的环境光被遮挡的光照探针参与虚拟对象的渲染过程,改善虚拟对象的渲染效果,提升用户的视觉体验。
Description
技术领域
本发明涉及渲染技术领域,具体涉及一种虚拟对象渲染方法、装置、计算机设备和存储介质。
背景技术
为了改善虚拟场景中各类虚拟对象的显示效果,除了虚拟对象自身的颜色参数外,通常还会结合虚拟对象所处环境中的光照信息对虚拟对象进行渲染。目前,在结合场景中的光照信息对虚拟对象进行渲染时,一般是选择虚拟对象在虚拟场景中邻近的8个光照探针进行插值计算,得到虚拟对象的光照信息。
但是采用这种渲染方式,如果在选择的光照探针中有若干个光照探针对应的环境光实际处于被虚拟场景中的其他对象遮挡的状态时,直接采用8个邻近的光照探针的光照信息进行计算,可能会导致虚拟对象的渲染效果与实际想要实现的渲染效果之间存在差别,影响虚拟对象的显示效果。
发明内容
本发明实施例提供一种虚拟对象渲染方法、装置、计算机设备和存储介质,可以避免对应的环境光被遮挡的光照探针参与虚拟对象的渲染过程,改善虚拟对象的渲染效果,提升用户的视觉体验。
本发明实施例提供一种虚拟对象渲染方法,包括:
确定当前场景下的目标渲染对象以及所述目标渲染对象对应的若干个目标光照探针,每个所述目标光照探针被配置有中心方向对应的烘焙深度;
根据所述目标渲染对象与所述目标光照探针之间的距离,以及所述目标光照探针在所述中心方向上的所述烘焙深度,从所述目标光照探针中确定渲染光照探针,所述渲染光照探针对应的环境光在所述当前场景下可到达所述目标渲染对象;
基于所述渲染光照探针对应的环境光照信息进行计算,得到所述目标渲染对象的目标环境光照信息;
基于所述目标环境光照信息对所述虚拟对象进行渲染。
本发明实施例还提供一种虚拟对象渲染装置,包括:
探针确定单元,用于确定当前场景下的目标渲染对象以及所述目标渲染对象对应的若干个目标光照探针,每个所述目标光照探针被配置有中心方向对应的烘焙深度;
探针选择单元,用于根据所述目标渲染对象与所述目标光照探针之间的距离,以及所述目标光照探针在所述中心方向上的所述烘焙深度,从所述目标光照探针中确定渲染光照探针,所述渲染光照探针对应的环境光在所述当前场景下可到达所述目标渲染对象;
光照信息计算单元,用于基于所述渲染光照探针对应的环境光照信息进行计算,得到所述目标渲染对象的目标环境光照信息;
渲染单元,用于基于所述目标环境光照信息对所述虚拟对象进行渲染。
本发明实施例还提供一种计算机设备,包括存储器和处理器;所述存储器存储有应用程序,所述处理器用于运行所述存储器内的应用程序,以执行本发明实施例所提供的任一种虚拟对象渲染方法。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行本发明实施例所提供的任一种虚拟对象渲染方法。
此外,本发明实施例还提供一种计算机程序产品,包括计算机程序或指令,所述计算机程序或指令被处理器执行时实现本发明实施例所提供的任一种虚拟对象渲染方法。
采用本发明实施例的方案,可以确定当前场景下的目标渲染对象以及该目标渲染对象对应的若干个目标光照探针,每个该目标光照探针被配置有中心方向对应的烘焙深度,根据该目标渲染对象与该目标光照探针之间的距离,以及该目标光照探针在该中心方向上的该烘焙深度,从该目标光照探针中确定渲染光照探针,该渲染光照探针对应的环境光在该当前场景下可到达该目标渲染对象,基于该渲染光照探针对应的环境光照信息进行计算,得到该目标渲染对象的目标环境光照信息,基于该目标环境光照信息对该虚拟对象进行渲染;由于在本发明实施例中,可以根据目标光照探针在中心方向上的烘焙深度以及目标光照探针与目标渲染对象之间的距离,确定目标光照探针对应的环境光在当前场景下是否可到达目标渲染对象,也即,目标光照探针对应的环境光相对于目标渲染对象是否会被当前场景中的其他虚拟对象遮挡,因此,可以避免环境光被遮挡的光照探针参与虚拟对象的渲染过程,改善虚拟对象的渲染效果,提升用户的视觉体验。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的虚拟对象渲染方法的场景示意图;
图2是本发明实施例提供的虚拟对象渲染方法的流程图;
图3是本发明实施例提供的一光照探针的深度测试射线发射方向示意图;
图4是本发明实施例提供的确定目标光照探针的深度测试射线发射方向示意图;
图5是本发明实施例提供的确定目标光照探针的深度测试射线发射方向示意图;
图6是本发明实施例提供的虚拟对象渲染方法的另一流程图;
图7是本发明实施例提供的虚拟对象渲染装置的结构示意图;
图8是本发明实施例提供的虚拟对象渲染装置的另一结构示意图;
图9是本发明实施例提供的计算机设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种虚拟对象渲染方法、装置、计算机设备和计算机可读存储介质。具体地,本发明实施例提供适用于虚拟对象渲染装置的虚拟对象渲染方法,该虚拟对象渲染装置可以集成在计算机设备中。
该计算机设备可以为终端等设备,包括但不限于移动终端和固定终端,例如移动终端包括但不限于智能手机、智能手表、平板电脑、笔记本电脑、智能车载等,其中,固定终端包括但不限于台式电脑、智能电视等。
该计算机设备还可以为服务器等设备,该服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(ContentDelivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器,但并不局限于此。
本发明实施例的虚拟对象渲染方法,可以由服务器实现,也可以由终端和服务器共同实现。
下面以终端和服务器共同实现该虚拟对象渲染方法为例,对该方法进行说明。
如图1所示,本发明实施例提供的虚拟对象渲染系统包括终端10和服务器20等;终端10与服务器20之间通过网络连接,比如,通过有线或无线网络连接等,其中,服务器20可以预先对场景中的光照探针进行烘焙计算。
其中,终端10可以用于确定当前场景下的目标渲染对象以及目标渲染对象对应的若干个目标光照探针,每个目标光照探针被配置有中心方向对应的烘焙深度,根据目标渲染对象与目标光照探针之间的距离,以及目标光照探针在中心方向上的烘焙深度,从目标光照探针中确定渲染光照探针,渲染光照探针对应的环境光在当前场景下可到达目标渲染对象,基于渲染光照探针对应的环境光照信息进行计算,得到目标渲染对象的目标环境光照信息,基于目标环境光照信息对虚拟对象进行渲染。
其中,目标光照探针的烘焙深度可以在服务器20中进行计算。服务器20可以针对当前场景中的各个目标光照探针,基于中心方向为目标光照探针设置深度测试射线,深度测试射线用于确定目标光照探针在中心方向上的深度信息,确定各深度测试射线与当前场景之间的交点,记录交点与目标光照探针之间的距离,基于距离,计算各目标光照探针在各中心方向上的烘焙深度。
可以理解的是,在一些实施例中,服务器20执行的目标光照探针的烘焙深度的计算步骤也可以由终端10执行,本发明实施例对此不做限定。
以下分别进行详细说明。需要说明的是,以下实施例的描述顺序不作为对实施例优选顺序的限定。
本发明实施例将从虚拟对象渲染装置的角度进行描述,该虚拟对象渲染装置具体可以集成在服务器或终端中。
如图2所示,本实施例的虚拟对象渲染方法的具体流程可以如下:
201、确定当前场景下的目标渲染对象以及目标渲染对象对应的若干个目标光照探针,每个目标光照探针被配置有中心方向对应的烘焙深度。
其中,当前场景可以是应用程序在终端或服务器上运行时显示(或提供)的虚拟场景。可选地,该虚拟场景是对真实世界的仿真环境,或者是半仿真半虚构的虚拟环境,或者是纯虚构的虚拟环境。虚拟场景是二维虚拟场景和三维虚拟场景中的任意一种,虚拟环境可以为天空、陆地、海洋等,其中,该陆地包括沙漠、城市等环境元素。
其中,虚拟场景可以为用户控制虚拟对象完成完整游戏逻辑的场景,例如,对于沙盒类3D射击游戏中,虚拟场景为用于供玩家控制虚拟对象进行对战的3D游戏世界,实例性的虚拟场景可以包括:山川、平地、河流、湖泊、海洋、沙漠、天空、植物、建筑、车辆中的至少一种元素;例如,对于2D卡牌类游戏中,虚拟场景为供展示释放卡牌或是展示卡牌对应的虚拟对象的场景,实例性的虚拟场景可以包括:擂台场、决战场、或是其他可以显示卡牌对战状态的“场”元素或是其他元素;对于2D或是3D的多人在线战术竞技游戏,虚拟场景为供虚拟对象进行对战的2D或3D地形场景,实例性的虚拟场景可以包括:峡谷风格的山脉、线路、河流、教室、桌椅、讲台等元素。
其中,目标渲染对象可以为当前的虚拟场景中在虚拟场景中可被控制的动态对象。可选地,该动态对象可以是虚拟人物、虚拟动物、动漫人物等。该虚拟对象是玩家通过输入设备进行控制的角色,或者是通过训练设置在虚拟环境对战中的人工智能(ArtificialIntelligence,AI),或者是设置在虚拟场景对战中的非玩家角色(Non-Player Character,NPC)。
在本发明实施例中,光照探针可以为设置于虚拟场景中的一个点,光照探针可以认为具有去往四面八方收集光照或者说探测光照的能力,并把来自四面八方的入射光信息记录下来。
具体的,光照探针在当前场景中的设置方式可以包括但不限于四面体镶嵌、间接光缓存(Indirect Light Cache,ILC)以及体积光照贴图(Volumetric Light Map,VLM)等等。
可以理解的是,当前场景可以设置有数量众多的光照探针,目标光照探针可以是根据目标渲染对象在当前场景中的位置确定出的光照探针。具体的目标光照探针的选择方式可以由技术人员根据实际渲染需求确定,本发明实施例对此不作限定。
例如,目标光照探针可以是距离目标渲染对象最近的N个光照探针,或者,目标光照探针可以是与目标渲染对象之间的距离小于某个预设值的光照探针,或者,目标光照探针可以是目标渲染对象的特定方向上距离目标渲染对象最近的光照探针,等等。
需要说明的是,针对不同的目标渲染对象、不同的虚拟场景等,目标光照探针的选择方式也可以是不同的。
具体的,目标光照探针的中心方向的具体指向方向和数量可以是技术人员根据实际渲染需求设置的。例如,目标光照探针可以包括X、-X、Y、-Y、Z方向等至少五个中心方向,或者,目标光照探针的中心方向也可以包括X、-X、Y、-Y、Z、-Z方向。或者,目标光照探针的中心方向可以包括X向上偏移45°、-X、Y、-Y、Z方向等等。
烘焙,一般地讲,是为了加速后续的其他过程进行的预先计算。根据所选择的烘焙方式不同,从头进行渲染可能将花费大量的时间。例如,Blender允许为选择的物体提前“烘焙”渲染的一些部分。然后,当点击渲染,整个场景的渲染将会更快,因为这些物体的颜色不需要重新计算。
在一些可选的示例中,可以在需要对目标渲染对象进行渲染时,针对各个目标渲染对象的目标光照探针实时地确定各中心方向的烘焙深度。也就是说,步骤“确定当前场景下的目标渲染对象以及目标渲染对象对应的若干个目标光照探针”之前,本发明实施例提供的虚拟对象渲染方法还可以包括:
针对当前场景中的各个目标光照探针,基于中心方向为目标光照探针设置深度测试射线,深度测试射线用于确定目标光照探针在中心方向上的深度信息;
确定各深度测试射线与当前场景之间的交点,记录交点与目标光照探针之间的距离;
基于距离,计算目标光照探针在中心方向上的烘焙深度。
需要说明的是,深度测试射线并不是真实地为光照探针设置出的射线,而是从光照探针的位置发射出的数学意义上的射线。
其中,各深度测试射线与当前场景之间的交点可以是各深度测试射线与当前场景中任意的静态或动态对象之间第一次发生相交的交点。比如,一条深度测试射线可以依次与当前场景中的箱子、墙壁相交,此时,深度测试射线与当前场景之间的交点即为深度测试射线与箱子之间的交点。
在另一些可选的示例中,为了提升目标渲染对象的渲染效率,可以预先对当前场景中的目标光照探针或者各个光照探针进行烘焙深度的配置。具体进行预烘焙的过程与前述实时确定目标光照探针各中心方向的烘焙深度的过程类似,本发明实施例在此不再赘述。
具体的,烘焙深度可以用来估测光线沿各个中心方向的传播距离。可选的,在发射深度测试射线时可以仅沿中心方向发射,此时,烘焙深度为深度测试射线与场景之间的交点与目标光照探针之间的距离。
需要说明的是,烘焙深度并不一定就是沿中心方向发射出的深度测试射线与当前场景之间的交点与光照探针之间的距离。此时,烘焙深度为深度测试射线与场景之间的交点与目标光照探针之间的距离在中心方向上的映射。在一些实施例中,为了避免单一地沿中心方向的深度测试射线恰好被某一个不具有遮挡效力小物体遮挡,可以基于中心方向确定若干其他的方向发射射线,也就是说,步骤“基于中心方向为目标光照探针设置深度测试射线”,包括:
基于目标光照探针的中心方向,确定中心方向对应的偏移方向;
分别向中心方向以及偏移方向设置深度测试射线。
其中,偏移方向是在中心方向的基础上进行了一定角度的偏移得到的方向。每个偏移方向都有对应的中心方向,每个中心方向可以对应有至少一个偏移方向。每个中心方向对应的偏移方向的数量可以相同,也可以不同。
例如,在烘焙阶段,如图3所示,对于每个光照探针可以设置有5个中心方向X、-X、Y、-Y、Z,在每个中心方向上对应有5条射线,除直接沿中心方向发射的深度测试射线外,还有4条沿偏移方向发射的深度测试射线,比如,偏移方向的深度测试射线可以是中心方向偏移30°发射的。
可选的,在选择偏移方向时,可以是向正上方偏移30°、向正下方偏移30°、向正左方偏移30°、向正右方偏移30°等。当然,偏移方向也可以是选择向其他方向进行偏移,也可以选择其他的角度进行偏移。比如,偏移方向可以是向中心方向的东北方向、向上偏移45°,等等。
可以理解的是,图3中未设置-Z方向作为中心方向,是因为游戏中从上方漏进来光的情况几乎没有,所以为了减小游戏包体、节约存储空间可以只用设置5个中心方向,但是在需要提升准确度时,也可以设置-Z方向作为中心方向。
另外,图3中只展示了4个中心方向,Z方向由于垂直视角的原因,表示为中心处的圆形的点。
相应的,在每个中心方向对应有若干个偏移方向时,需要根据中心方向和偏移方向上的距离计算烘焙深度,因此,步骤“基于距离,计算目标光照探针在中心方向上的烘焙深度”,包括:
根据距离,计算各偏移方向的映射距离和中心方向的映射距离,偏移方向的映射距离为沿偏移方向射出的深度测试射线与当前场景之间的交点与目标光照探针之间的距离映射到偏移方向对应的中心方向上的值,中心方向的映射距离为沿中心方向射出的深度测试射线与当前场景之间的交点与目标光照探针之间的距离;
将中心方向的映射距离以及中心方向对应的偏移方向的映射距离中最大的映射距离,作为目标光照探针在中心方向上的烘焙深度。
其中,在计算偏移方向的映射距离时需要对沿偏移方向射出的深度测试射线与当前场景之间的交点与目标光照探针之间的距离额外进行计算,即该距离映射到中心方向上的值。
在得到一中心方向对应的若干个映射距离(包括该中心方向的映射距离以及该中心方向对应的偏移方向的映射距离)后,可以对若干个映射距离中取最大值作为该中心方向的烘焙深度。
可以理解的是,在计算烘焙深度时,是针对当前场景中的各个目标光照探针分别进行计算的,因此,每个目标光照探针的中心方向都可以对应有计算得到的烘焙深度。各个目标光照探针在各中心方向上的烘焙深度,可以是对各个目标光照探针同时计算得到的,也可以是对各个目标光照探针依次计算得到的。
相关技术中,要解决漏光问题的一种方法是预烘焙时额外烘焙深度信息来判断probe之间可能存在的遮挡关系。目前较为成熟的方案有DDGI里的利用切比雪夫去计算可能被遮挡的概率,需要给每个Probe烘焙并存储16*16分辨率的深度和深度的平方。因此,如果使用该方案,游戏的包体会大大增大,需要占用大量额外的存储空间。
而在本方案中每个光照探针即便使用float格式进行存储,也仅需占用2个或者4个Byte。
在一些可选的实施例中,为了进一步减少存储压力,节约存储资源,步骤“基于距离,计算目标光照探针在中心方向上的烘焙深度”,包括:
基于距离,计算目标光照探针在各中心方向上的深度值;
对深度值进行编码计算,得到目标光照探针在所述中心方向上的烘焙深度。
在本发明实施例中,通过对深度值的编码计算得到的烘焙深度相较于深度值对存储空间的需求降低。也就是说,直接将深度值进行存储所占用的存储空间是大于存储烘焙深度所占用的存储空间的。
例如,储存深度时,为了进一步节省包体,并不直接记录深度,因为float数据类型的数据需要占用2个或者4个Byte。可选的,可以将深度值通过Clamp(深度值/Probe间距,0,1)*255重新编码,并存为Uint8格式。
其中,Clamp函数可以将某个数值的大小限制在0至1的范围内,如果该数值大于1就将该数值记录为1。一般来说,深度值/Probe间距得到的是float数据类型的数据,但是float数据类型存储开销比较大,一般需要4个字节;乘255则可以把数据从0-1的float数据类型转换成0-255的Uint8数据类型。Uint8数据类型的数据存储只需要1个字节,虽然计算精度会下降,但在实际应用过程中对于显示效果的影响可以忽略不计。
具体的,Probe间距为各个光照探针之间的距离。在一些示例中,光照探针可以是以固定间距设置的。或者,如果光照探针以不固定的间距设置,此时,可以将光照探针的平均距离作为Probe间距,等等。
相应的,在对深度值进行编码得到烘焙深度后,当需要比较目标渲染对象与目标光照探针之间的距离,以及目标光照探针在候选中心方向上的光线预估可传输的距离时,可以对烘焙深度进行解码。例如,通过Clamp(深度值/Probe间距,0,1)*255编码的到的烘焙深度,可以除以255,即得到目标光照探针在候选中心方向上的光线预估可传输的距离。
在实际应用过程中,美术经常会在烘焙场景里摆放一些物体(实际游戏不存在)来辅助打光,这些辅助物体会被烘焙进深度里去,从而影响游戏中真实的深度,所以这种情况可以用包围盒包裹住光照探针来解决这种特殊情况。可选的,本发明实施例提供的虚拟对象渲染方法还可以包括:
当一光照探针对应设置有包围盒时,将当前场景下的最大烘焙深度作为光照探针在中心方向上的烘焙深度。
其中,最大烘焙深度为当前场景中光线可以在场景中传播的最大距离。不同的游戏或者场景下,最大烘焙深度可以设置为不同的数值。
其中,包围盒用于为光照探针设置一定的空间,被包围盒包裹的光照探针周围可能存在有游戏场景中辅助打光的物体。如果采用常规烘焙方式计算光照探针的烘焙深度,则光照探针对应的光线可能会被辅助打光的物体遮挡,计算得到的光照探针的烘焙深度会偏小,最终导致目标渲染对象的目标环境光照信息与真实的环境光照信息之间存在一定差异。
因此,对于此类光照探针可以设置有包围盒,且将最大烘焙深度作为该光照探针的烘焙深度,以在确定目标渲染对象的目标环境光照信息时,可以将包围盒内光照探针的环境光照信息加入计算,使得目标渲染对象可以呈现正常的渲染效果。
例如,被这种包围盒包裹住的probe在烘焙时可以直接给予预设的最大深度值255,避免被遮挡。
202、根据目标渲染对象与目标光照探针之间的距离,以及目标光照探针在中心方向上的烘焙深度,从目标光照探针中确定渲染光照探针,渲染光照探针对应的环境光在当前场景下可到达目标渲染对象。
在本发明实施例中,基于目标光照探针在中心方向上的烘焙深度,以及目标渲染对象与目标光照探针之间的距离,可以估测沿目标光照探针的中心方向传播的光线,是否能够到达目标渲染对象。如果能够到达,则目标光照探针就能够影响目标渲染对象的光照渲染效果。
在一些可选的实施例中,可以将目标渲染对象与目标光照探针之间的距离,与目标光照探针在各个中心方向上的烘焙深度逐个进行比较,以确定渲染光照探针。
在另一些可选的实施例中,为了提高确定渲染光照探针的效率,可以只选择若干个候选中心方向参与渲染光照探针的确定过程,即,中心方向为多个,步骤202之前,本发明实施例提供的虚拟对象渲染方法还可以包括:
基于目标渲染对象与目标光照探针之间的位置关系,从目标光照探针的各中心方向中确定与目标渲染对象之间的角度满足预设的角度范围的候选中心方向。
其中,候选中心方向可以是中心方向中满足一定条件的若干个方向。
具体的,预设的角度范围可以是由技术人员自行设置的。比如,预设的角度范围可以是0-90度,即中心方向与目标渲染对象的之间的角度不大于90°。
可选的,计算中心方向与目标渲染对象的之间的角度可以是确定出目标光照探针与目标渲染对象之间的连线,中心方向与连线之间的夹角的角度即为中心方向与目标渲染对象的之间的角度。
相应的,步骤202,具体可以包括:
根据目标渲染对象与目标光照探针之间的距离,以及目标光照探针在候选中心方向上的烘焙深度,从目标光照探针中确定渲染光照探针。
例如,在游戏的实时部分,可以先判定各个目标光照探针和当前计算的动态物体处于什么位置关系,来决定选用哪3个中心方向来对比。例如图4所示,在需要获取中心位置P的颜色信息时,针对左上角的Probe(以球形表示),可以选用它的X、Y和-Z轴方向作为候选中心方向,将各个候选中心方向的烘焙深度分别和P的位置做对比。
在一些可选的实施例中,如果直接将未编码的距离作为烘焙深度,此时,可以直接比较烘焙深度与目标渲染对象与目标光照探针之间的距离之间的大小,确定渲染光照探针,即,步骤“根据目标渲染对象与目标光照探针之间的距离,以及目标光照探针在候选中心方向上的烘焙深度,从目标光照探针中确定影响目标渲染对象光照渲染结果的渲染光照探针”,包括:
比较目标渲染对象与目标光照探针之间的距离,与目标光照探针在候选中心方向上的烘焙深度之间的大小;
将在各候选中心方向上的烘焙深度均不小于距离的目标光照探针作为渲染光照探针。
如图3所示,如果3个中心方向中任意一个中心方向的烘焙深度小于实际距离(该中心方向上Probe到P点的距离)则该目标光照探针判定被遮挡不可见。需要说明的是,如果-Z轴没有烘焙深度,可以直接用当前场景下的最大烘焙深度来判断。
可选的,如果烘焙深度是将深度值编码得到的,此时,可以将烘焙深度进行解码得到深度值,比较目标渲染对象与目标光照探针之间的距离,与目标光照探针在候选中心方向上的深度值之间的大小。
在实际应用过程中,如果仅将可见的光照探针作为渲染光照探针的话,会导致一个跳变问题。当目标渲染对象处于一个边界环境,一些Probe如果目标渲染对象前进一段距离则可见,后退一段距离则又不可见了,这时目标渲染对象的渲染效果可能会有一个剧烈的跳变,这显然会影响用户的视觉体验。
所以在比较烘焙深度和实际距离时,可以加入一个过渡区间,对于刚好位于过渡区间内的光照探针,也可以对目标渲染对象产生一定的影响,避免目标渲染对象的渲染效果的跳变。也就是说,步骤“基于渲染光照探针对应的环境光照信息进行计算,得到目标渲染对象的目标环境光照信息”,包括:
基于平滑渲染光照探针在各候选中心方向上的烘焙深度,以及目标渲染对象与平滑渲染光照探针之间的距离,计算平滑渲染光照探针的平滑渲染权重,平滑渲染光照探针为在至少一个候选中心方向上的烘焙深度小于距离且满足预设的平滑过渡距离区间的目标光照探针;
根据平滑渲染光照探针的环境光照信息以及平滑渲染权重,计算平滑渲染光照探针对应于目标渲染对象的平滑环境光照信息;
基于渲染光照探针对应的环境光照信息以及平滑环境光照信息进行计算,得到目标渲染对象的目标环境光照信息。
其中,平滑过渡距离区间可以是一个预设的距离区间。如图5所示,平滑渲染光照探针的烘焙深度所能达到的位置是位于平滑过渡距离区间的。
其中,平滑渲染光照探针为目标光照探针中至少一个候选中心方向上的烘焙深度小于距离且满足预设的平滑过渡距离区间的光照探针。
可以理解的是,平滑渲染光照探针在至少一个候选中心方向上的烘焙深度小于距离,说明理论上在平滑渲染光照探针的该候选中心方向上传播的光线对目标渲染对象是没有影响的。但是,由于在该候选中心方向上的烘焙深度满足平滑过渡距离区间,因此,如果直接忽略该平滑渲染光照探针,可能会导致目标渲染对象的渲染效果的跳变。
因此,可以将平滑渲染光照探针的光照信息在目标渲染对象上进行一定程度的渲染,以避免渲染效果的剧烈变化。
其中,平滑渲染权重用于控制平滑渲染光照探针的光照信息在目标渲染对象上的影响程度。例如,平滑渲染光照探针在X方向上的平滑渲染子权重可以通过如下公式计算得到:
Smooth_x=(baked_depth_x*1.05-current_depth_x)/(baked_depth_x*0.6)。
其中,baked_depth_x表示平滑渲染光照探针在X方向上的烘焙深度,current_depth_x表示目标渲染对象与平滑渲染光照探针之间的距离。1.05表示平滑渲染光照探针与目标渲染对象之间的遮挡物体一般有一定的厚度,所以外扩0.05,也可以是其他的值。0.6也是实验测试的一个比较合适渲染效果的值,该值也可以根据实际需求修改。
对平滑渲染光照探针的候选中心方向例如X、Y、Z方向分别计算一个Smooth_x、Smooth_y、Smooth_z,累乘起来即可得到最终的Smooth,即为平滑渲染权重。
也就是说,如图5所示,处于过渡区间外的目标光照探针会被视为完全不可见,而过渡区间内的平滑渲染光照探针会逐步过渡到完全可见状态的渲染光照探针。
可选的,可以直接将平滑渲染光照探针的环境光照信息与平滑渲染权重进行加权计算,得到平滑环境光照信息。或者,也可以基于平滑渲染光照探针的第一理论插值权重、平滑渲染光照探针的环境光照信息与平滑渲染权重进行加权计算,得到平滑环境光照信息。
203、基于渲染光照探针对应的环境光照信息进行计算,得到目标渲染对象的目标环境光照信息。
具体的,目标环境光照信息可以是计算各个渲染光照探针的理论插值权重,将理论插值权重与渲染光照探针对应的环境光照信息进行加权计算,得到目标渲染对象的目标环境光照信息。
其中,理论插值权重可以是根据渲染光照探针与目标渲染对象之间的距离计算得到的。理论插值权重与渲染光照探针与目标渲染对象之间的距离可以满足预设的映射关系。
例如,一种映射关系可以是理论插值权重与渲染光照探针与目标渲染对象之间的距离之间成正比例相关的关系,如各个渲染光照探针对应的理论差值权重之间的比值,与各个渲染光照探针与目标渲染对象之间的距离的比值相同,等等。
或者,理论插值权重与渲染光照探针与目标渲染对象之间的距离也可以是非线性相关的关系,技术人员可以根据实际计算需求设计相应的映射关系。
在实际应用过程中,如果有Probe被视为不可见剔除后,参与插值的Probe就会减少,这样会导致着色偏暗。所以可以将被剔除的权重弥补给剩余参与插值的Probe。步骤“基于渲染光照探针对应的环境光照信息进行计算,得到目标渲染对象的目标环境光照信息”之前,本发明实施例提供的虚拟对象渲染方法还可以包括:
从目标光照探针中确定不对目标渲染对象光照渲染结果产生影响的非渲染光照探针,获取非渲染光照探针的第一理论插值权重。
具体的,第一理论插值权重为非渲染光照探针如果参与目标渲染对象的目标环境光照信息时对应的理论插值权重。
例如,对于一个目标渲染对象对应有目标光照探针A、B、C,如果不对目标光照探针进行筛选,则A、B、C都会有对应的理论插值权重;经过筛选,假设目标光照探针A为非渲染光照探针,则目标光照探针A的理论插值权重即为第一理论插值权重。
其中,第一理论插值权重与非渲染光照探针和目标渲染对象之间的距离相关。比如,可以非渲染光照探针与目标渲染对象之间的距离越大,则第一理论插值权重越小。
可选的,在目标渲染对象的目标环境光照信息,可以将不参与计算的非渲染光照探针的第一理论插值权重,弥补在参与计算的渲染光照探针上。步骤“基于渲染光照探针对应的环境光照信息进行计算,得到目标渲染对象的目标环境光照信息”,包括:
基于第一理论插值权重,计算目标渲染对象对应的光照补充权重;
基于渲染光照探针对应的环境光照信息、渲染光照探针的第二理论插值权重和光照补充权重进行插值计算,得到目标渲染对象的目标环境光照信息。
其中,由于在计算理论插值权重时,各个目标光照探针均对应有理论插值权重。而非渲染光照探针一旦不参与目标环境光照信息的计算,若只对渲染光照探针对应的环境光照信息以理论插值权重进行计算,可能导致目标环境光照信息的光强、饱和度等偏弱。因此,通过设置光照补充权重,可以补偿非渲染光照探针不参与计算的环境光照信息,对目标渲染对象的目标环境光照信息的影响。
例如:光照探针A、B、C、D对应的理论插值权重分别为0.2、0.2、0.3、0.3,如果所有的目标光照探针都参与计算,则目标渲染对象的目标环境光照信息I=A*0.2+B*0.2+C*0.3+D*0.3(其中,光照探针C、D不可见)。
在剔除不可见的光照探针C、D后,可以将光照探针C、D的第一理论插值权重,弥补到光照探针A和B上,此时,光照补充权重=1-0.3-0.3,光照信息I=(A*0.2+B*0.2)/(1-0.3-0.3)。
可以理解的是,平滑渲染光照探针实际上也是一种特殊的非渲染光照探针。如果考虑平滑渲染光照探针,在计算光照信息时,可以对平滑渲染光照探针和其他非渲染光照探针分别进行处理。
具体地,如果存在平滑渲染光照探针,步骤“基于第一理论插值权重,计算目标渲染对象对应的光照补充权重”可以包括:
基于第一理论插值权重和平滑渲染光照探针的平滑渲染权重,计算目标渲染对象对应的光照补充权重。
例如,存在渲染光照探针A、B,平滑渲染光照探针C和其他非渲染光照探针D,平滑渲染光照探针C的平滑渲染权重为0.1,此时,光照补充权重可以为1–0.3*0.9–0.3*1。
相应的,步骤“基于渲染光照探针对应的环境光照信息、渲染光照探针的第二理论插值权重和光照补充权重进行插值计算,得到目标渲染对象的目标环境光照信息”具体可以包括:
基于渲染光照探针对应的环境光照信息、渲染光照探针的第二理论插值权重、平滑环境光照信息和光照补充权重进行插值计算,得到目标渲染对象的目标环境光照信息。
此时,目标环境光照信息I=(A*0.2*1+B*0.2*1+C*0.3*0.1+D*0.3*0)/(1–0.3*0.9–0.3*1)。
204、基于目标环境光照信息对虚拟对象进行渲染。
可以理解的是,由于虚拟对象自身可以具有颜色信息,因此,在对虚拟对象进行渲染的时候,可以结合目标环境光照信息以及虚拟对象自身的颜色信息进行渲染。
由上可知,本发明实施例可以确定当前场景下的目标渲染对象以及目标渲染对象对应的若干个目标光照探针,每个目标光照探针被配置有中心方向对应的烘焙深度,根据目标渲染对象与目标光照探针之间的距离,以及目标光照探针在中心方向上的烘焙深度,从目标光照探针中确定渲染光照探针,渲染光照探针对应的环境光在当前场景下可到达目标渲染对象,基于渲染光照探针对应的环境光照信息进行计算,得到目标渲染对象的目标环境光照信息,基于目标环境光照信息对虚拟对象进行渲染;由于在本发明实施例中,可以根据目标光照探针在中心方向上的烘焙深度以及目标光照探针与目标渲染对象之间的距离,确定目标光照探针对应的环境光在当前场景下是否可到达目标渲染对象,也即,目标光照探针对应的环境光相对于目标渲染对象是否会被当前场景中的其他虚拟对象遮挡,因此,可以避免环境光被遮挡的光照探针参与虚拟对象的渲染过程,改善虚拟对象的渲染效果,提升用户的视觉体验。
根据前面实施例所描述的方法,以下将举例作进一步详细说明。
在本实施例中,将结合图1的系统进行说明。
如图6所示,本实施例的虚拟对象渲染方法,具体流程可以如下:
601、基于各光照探针的各中心方向,确定各中心方向对应的偏移方向,分别向各中心方向以及偏移方向设置深度测试射线。
在烘焙阶段,对于每个Probe分别朝5个中心方向X、-X、Y、-Y、Z发射5条射线(这里不需要-Z方向的深度,因为游戏中从上方漏进来光的情况几乎没有,所以为了节省包体只用了5个中心方向),大致如图3所示。
602、根据深度测试射线与当前场景之间的交点与光照探针之间的距离,计算各偏移方向的映射距离和中心方向的映射距离,将中心方向的映射距离以及中心方向对应的偏移方向的映射距离中最大的映射距离,作为光照探针在中心方向上的烘焙深度。
这5条射线,除中心射线外,其余射线均偏移30°发射,记录射线到交点的距离即深度信息。对于其余射线需要额外乘来归并到中心点,之后对这5条射线取最大值存下来。之所以这样发射多条射线是为了避免单一射线恰好被某一个不具有遮挡效力小物体遮挡。然后依次对这5个中心方向重复该操作。
储存深度时,为了节省包体,并不直接记录深度,因为float需要占用2个或者4个Byte。并且由于我们烘焙的Probe间距固定,所以重新编码Clamp(深度值/Probe间距,0,1)*255,存为Uint8格式。
603、确定当前场景下的目标渲染对象以及目标渲染对象对应的若干个目标光照探针,每个目标光照探针被配置有至少五个中心方向对应的烘焙深度。
604、基于目标渲染对象与目标光照探针之间的位置关系,从各目标光照探针的中心方向中确定与目标渲染对象之间的角度满足预设的角度范围的候选中心方向。
在游戏的实时部分,先判定Probe和当前计算的动态物体处于什么位置关系,来决定我们选用哪3个中心方向来对比。需要获取中心位置P的颜色信息,针对左上角的Probe(球),我们选用它的X Y和-Z轴中心方向的深度分别和P的位置做对比。
605、比较目标渲染对象与目标光照探针之间的距离,与目标光照探针在候选中心方向上的烘焙深度之间的大小,将在各候选中心方向上的烘焙深度均不小于距离的目标光照探针作为渲染光照探针。
若3个中心方向种任意一个中心方向的烘焙深度<实际距离(该中心方向上Probe到P点的距离)则判定被遮挡不可见。-Z轴由于没有烘焙深度,可以直接用255最大深度来判断。
606、基于渲染光照探针对应的环境光照信息进行计算,得到目标渲染对象的目标环境光照信息。
607、基于目标环境光照信息对虚拟对象进行渲染。
由上可知,本发明实施例可以确定当前场景下的目标渲染对象以及目标渲染对象对应的若干个目标光照探针,每个目标光照探针被配置有中心方向对应的烘焙深度,根据目标渲染对象与目标光照探针之间的距离,以及目标光照探针在中心方向上的烘焙深度,从目标光照探针中确定渲染光照探针,渲染光照探针对应的环境光在当前场景下可到达目标渲染对象,基于渲染光照探针对应的环境光照信息进行计算,得到目标渲染对象的目标环境光照信息,基于目标环境光照信息对虚拟对象进行渲染;由于在本发明实施例中,可以根据目标光照探针在中心方向上的烘焙深度以及目标光照探针与目标渲染对象之间的距离,确定目标光照探针对应的环境光在当前场景下是否可到达目标渲染对象,也即,目标光照探针对应的环境光相对于目标渲染对象是否会被当前场景中的其他虚拟对象遮挡,因此,可以避免环境光被遮挡的光照探针参与虚拟对象的渲染过程,改善虚拟对象的渲染效果,提升用户的视觉体验。
为了更好地实施以上方法,相应的,本发明实施例还提供一种虚拟对象渲染装置。
参考图7,该装置可以包括:
探针确定单元701,用于确定当前场景下的目标渲染对象以及目标渲染对象对应的若干个目标光照探针,每个目标光照探针被配置有中心方向对应的烘焙深度;
探针选择单元702,用于根据目标渲染对象与目标光照探针之间的距离,以及目标光照探针在中心方向上的烘焙深度,从目标光照探针中确定渲染光照探针,渲染光照探针对应的环境光在当前场景下可到达目标渲染对象;
光照信息计算单元703,用于基于渲染光照探针对应的环境光照信息进行计算,得到目标渲染对象的目标环境光照信息;
渲染单元704,用于基于目标环境光照信息对虚拟对象进行渲染。
在一些可选的实施例中,如图8所示,本发明实施例提供的虚拟对象渲染装置还可以包括光照探针配置单元705,光照探针配置单元可以包括射线单元、距离确定单元、深度计算单元;
射线单元,可以用于针对当前场景中的各个目标光照探针,基于中心方向为目标光照探针设置深度测试射线,深度测试射线用于确定目标光照探针在中心方向上的深度信息;
距离确定单元,可以用于确定各深度测试射线与当前场景之间的交点,记录交点与目标光照探针之间的距离;
深度计算单元,可以用于基于距离,计算目标光照探针在中心方向上的烘焙深度。
在一些可选的实施例中,射线单元,可以基于目标光照探针的中心方向,确定中心方向对应的偏移方向;
分别向中心方向以及偏移方向设置深度测试射线;
深度计算单元,可以用于根据距离,计算各偏移方向的映射距离和中心方向的映射距离,偏移方向的映射距离为沿偏移方向射出的深度测试射线与当前场景之间的交点与目标光照探针之间的距离映射到偏移方向对应的中心方向上的值,中心方向的映射距离为沿中心方向射出的深度测试射线与当前场景之间的交点与目标光照探针之间的距离;
将中心方向的映射距离以及中心方向对应的偏移方向的映射距离中最大的映射距离,作为目标光照探针在中心方向上的烘焙深度。
在一些可选的实施例中,深度计算单元,可以用于基于距离,计算目标光照探针在中心方向上的深度值;
对深度值进行编码计算,得到目标光照探针在中心方向上的烘焙深度。
在一些可选的实施例中,本发明实施例提供的虚拟对象渲染装置还可以包括包围盒处理单元706,可以用于当一光照探针对应设置有包围盒时,将当前场景下的最大烘焙深度作为光照探针在中心方向上的烘焙深度。
在一些可选的实施例中,中心方向为多个,本发明实施例提供的虚拟对象渲染装置还可以包括候选方向确定单元707,可以用于基于目标渲染对象与目标光照探针之间的位置关系,从目标光照探针的各中心方向中确定与目标渲染对象之间的角度满足预设的角度范围的候选中心方向;
探针选择单元702,可以用于根据目标渲染对象与目标光照探针之间的距离,以及目标光照探针在候选中心方向上的烘焙深度,从目标光照探针中确定渲染光照探针。
在一些可选的实施例中,探针选择单元702,可以用于比较目标渲染对象与目标光照探针之间的距离,与目标光照探针在候选中心方向上的烘焙深度之间的大小;
将在各候选中心方向上的烘焙深度均不小于距离的目标光照探针作为渲染光照探针。
在一些可选的实施例中,光照信息计算单元703,可以用于基于平滑渲染光照探针在各候选中心方向上的烘焙深度,以及目标渲染对象与平滑渲染光照探针之间的距离,计算平滑渲染光照探针的平滑渲染权重,平滑渲染光照探针为在至少一个候选中心方向上的烘焙深度小于距离且满足预设的平滑过渡距离区间的目标光照探针;
根据平滑渲染光照探针的环境光照信息以及平滑渲染权重,计算平滑渲染光照探针对应于目标渲染对象的平滑环境光照信息;
基于渲染光照探针对应的环境光照信息以及平滑环境光照信息进行计算,得到目标渲染对象的目标环境光照信息。
在一些可选的实施例中,本发明实施例提供的虚拟对象渲染装置还可以包括第一权重获取单元,可以用于从目标光照探针中确定不对目标渲染对象光照渲染结果产生影响的非渲染光照探针,获取非渲染光照探针的第一理论插值权重;
光照信息计算单元703,可以用于基于第一理论插值权重,计算目标渲染对象对应的光照补充权重;
基于渲染光照探针对应的环境光照信息、渲染光照探针的第二理论插值权重和光照补充权重进行插值计算,得到目标渲染对象的目标环境光照信息。
由上可知,通过虚拟对象渲染装置,可以确定当前场景下的目标渲染对象以及目标渲染对象对应的若干个目标光照探针,每个目标光照探针被配置有中心方向对应的烘焙深度,根据目标渲染对象与目标光照探针之间的距离,以及目标光照探针在中心方向上的烘焙深度,从目标光照探针中确定渲染光照探针,渲染光照探针对应的环境光在当前场景下可到达目标渲染对象,基于渲染光照探针对应的环境光照信息进行计算,得到目标渲染对象的目标环境光照信息,基于目标环境光照信息对虚拟对象进行渲染;由于在本发明实施例中,可以根据目标光照探针在中心方向上的烘焙深度以及目标光照探针与目标渲染对象之间的距离,确定目标光照探针对应的环境光在当前场景下是否可到达目标渲染对象,也即,目标光照探针对应的环境光相对于目标渲染对象是否会被当前场景中的其他虚拟对象遮挡,因此,可以避免环境光被遮挡的光照探针参与虚拟对象的渲染过程,改善虚拟对象的渲染效果,提升用户的视觉体验。
此外,相应的,本申请实施例还提供一种计算机设备,该计算机设备可以为终端。如图9所示,图9为本申请实施例提供的计算机设备的结构示意图。该计算机设备900包括有一个或者一个以上处理核心的处理器901、有一个或一个以上计算机可读存储介质的存储器902及存储在存储器902上并可在处理器上运行的计算机程序。其中,处理器901与存储器902电性连接。本领域技术人员可以理解,图中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
处理器901是计算机设备900的控制中心,利用各种接口和线路连接整个计算机设备900的各个部分,通过运行或加载存储在存储器902内的软件程序和/或模块,以及调用存储在存储器902内的数据,执行计算机设备900的各种功能和处理数据,从而对计算机设备900进行整体监控。
在本申请实施例中,计算机设备900中的处理器901会按照如下的步骤,将一个或一个以上的应用程序的进程对应的指令加载到存储器902中,并由处理器901来运行存储在存储器902中的应用程序,从而实现各种功能:
确定当前场景下的目标渲染对象以及目标渲染对象对应的若干个目标光照探针,每个目标光照探针被配置有中心方向对应的烘焙深度;
根据目标渲染对象与目标光照探针之间的距离,以及目标光照探针在中心方向上的烘焙深度,从目标光照探针中确定渲染光照探针,渲染光照探针对应的环境光在当前场景下可到达目标渲染对象;
基于渲染光照探针对应的环境光照信息进行计算,得到目标渲染对象的目标环境光照信息;
基于目标环境光照信息对虚拟对象进行渲染。
在一些可选的实施例中,确定当前场景下的目标渲染对象以及目标渲染对象对应的若干个目标光照探针之前,本发明实施例提供的虚拟对象渲染方法还可以包括:
针对当前场景中的各个目标光照探针,基于中心方向为目标光照探针设置深度测试射线,深度测试射线用于确定目标光照探针在中心方向上的深度信息;
确定各深度测试射线与当前场景之间的交点,记录交点与目标光照探针之间的距离;
基于距离,计算目标光照探针在中心方向上的烘焙深度。
在一些可选的实施例中,基于中心方向为目标光照探针设置深度测试射线,可以包括:
基于目标光照探针的中心方向,确定中心方向对应的偏移方向;
分别向中心方向以及偏移方向设置深度测试射线;
基于距离,计算目标光照探针在中心方向上的烘焙深度,可以包括:
根据距离,计算各偏移方向的映射距离和中心方向的映射距离,偏移方向的映射距离为沿偏移方向射出的深度测试射线与当前场景之间的交点与目标光照探针之间的距离映射到偏移方向对应的中心方向上的值,中心方向的映射距离为沿中心方向射出的深度测试射线与当前场景之间的交点与目标光照探针之间的距离;
将中心方向的映射距离以及中心方向对应的偏移方向的映射距离中最大的映射距离,作为目标光照探针在中心方向上的烘焙深度。
在一些可选的实施例中,基于距离,计算目标光照探针在中心方向上的烘焙深度,可以包括:
基于距离,计算目标光照探针在中心方向上的深度值;
对深度值进行编码计算,得到目标光照探针在中心方向上的烘焙深度。
在一些可选的实施例中,本发明实施例提供的虚拟对象渲染方法还可以包括:
当一光照探针对应设置有包围盒时,将当前场景下的最大烘焙深度作为光照探针在中心方向上的烘焙深度。
在一些可选的实施例中,中心方向为多个,根据目标渲染对象与目标光照探针之间的距离,以及目标光照探针在中心方向上的烘焙深度,从目标光照探针中确定渲染光照探针之前,本发明实施例提供的虚拟对象渲染方法还可以包括:
基于目标渲染对象与目标光照探针之间的位置关系,从目标光照探针的各中心方向中确定与目标渲染对象之间的角度满足预设的角度范围的候选中心方向;
根据目标渲染对象与目标光照探针之间的距离,以及目标光照探针在中心方向上的烘焙深度,从目标光照探针中确定渲染光照探针,可以包括:
根据目标渲染对象与目标光照探针之间的距离,以及目标光照探针在候选中心方向上的烘焙深度,从目标光照探针中确定渲染光照探针。
在一些可选的实施例中,根据目标渲染对象与目标光照探针之间的距离,以及目标光照探针在中心方向上的烘焙深度,从目标光照探针中确定渲染光照探针,可以包括:
比较目标渲染对象与目标光照探针之间的距离,与目标光照探针在候选中心方向上的烘焙深度之间的大小;
将在各候选中心方向上的烘焙深度均不小于距离的目标光照探针作为渲染光照探针。
在一些可选的实施例中,基于渲染光照探针对应的环境光照信息进行计算,得到目标渲染对象的目标环境光照信息,可以包括:
基于平滑渲染光照探针在各候选中心方向上的烘焙深度,以及目标渲染对象与平滑渲染光照探针之间的距离,计算平滑渲染光照探针的平滑渲染权重,平滑渲染光照探针为在至少一个候选中心方向上的烘焙深度小于距离且满足预设的平滑过渡距离区间的目标光照探针;
根据平滑渲染光照探针的环境光照信息以及平滑渲染权重,计算平滑渲染光照探针对应于目标渲染对象的平滑环境光照信息;
基于渲染光照探针对应的环境光照信息以及平滑环境光照信息进行计算,得到目标渲染对象的目标环境光照信息。
在一些可选的实施例中,基于渲染光照探针对应的环境光照信息进行计算,得到目标渲染对象的目标环境光照信息之前,本发明实施例提供的虚拟对象渲染方法还可以包括:
从目标光照探针中确定不对目标渲染对象光照渲染结果产生影响的非渲染光照探针,获取非渲染光照探针的第一理论插值权重;
基于渲染光照探针对应的环境光照信息进行计算,得到目标渲染对象的目标环境光照信息,可以包括:
基于第一理论插值权重,计算目标渲染对象对应的光照补充权重;
基于渲染光照探针对应的环境光照信息、渲染光照探针的第二理论插值权重和光照补充权重进行插值计算,得到目标渲染对象的目标环境光照信息。
本方案可以确定当前场景下的目标渲染对象以及目标渲染对象对应的若干个目标光照探针,每个目标光照探针被配置有中心方向对应的烘焙深度,根据目标渲染对象与目标光照探针之间的距离,以及目标光照探针在中心方向上的烘焙深度,从目标光照探针中确定渲染光照探针,渲染光照探针对应的环境光在当前场景下可到达目标渲染对象,基于渲染光照探针对应的环境光照信息进行计算,得到目标渲染对象的目标环境光照信息,基于目标环境光照信息对虚拟对象进行渲染;由于在本发明实施例中,可以根据目标光照探针在中心方向上的烘焙深度以及目标光照探针与目标渲染对象之间的距离,确定目标光照探针对应的环境光在当前场景下是否可到达目标渲染对象,也即,目标光照探针对应的环境光相对于目标渲染对象是否会被当前场景中的其他虚拟对象遮挡,因此,可以避免环境光被遮挡的光照探针参与虚拟对象的渲染过程,改善虚拟对象的渲染效果,提升用户的视觉体验。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
可选的,如图9所示,计算机设备900还包括:触控显示屏903、射频电路904、音频电路905、输入单元906以及电源907。其中,处理器901分别与触控显示屏903、射频电路904、音频电路905、输入单元906以及电源907电性连接。本领域技术人员可以理解,图9中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
触控显示屏903可用于显示图形用户界面以及接收用户作用于图形用户界面产生的操作指令。触控显示屏903可以包括显示面板和触控面板。其中,显示面板可用于显示由用户输入的信息或提供给用户的信息以及计算机设备的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。可选的,可以采用液晶显示器(LCD,Liquid Crystal Display)、有机发光二极管(OLED,Organic Light-EmittingDiode)等形式来配置显示面板。触控面板可用于收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板上或在触控面板附近的操作),并生成相应的操作指令,且操作指令执行对应程序。可选的,触控面板可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器901,并能接收处理器901发来的命令并加以执行。触控面板可覆盖显示面板,当触控面板检测到在其上或附近的触摸操作后,传送给处理器901以确定触摸事件的类型,随后处理器901根据触摸事件的类型在显示面板上提供相应的视觉输出。在本申请实施例中,可以将触控面板与显示面板集成到触控显示屏903而实现输入和输出功能。但是在某些实施例中,触控面板与触控面板可以作为两个独立的部件来实现输入和输出功能。即触控显示屏903也可以作为输入单元906的一部分实现输入功能。
射频电路904可用于收发射频信号,以通过无线通信与网络设备或其他计算机设备建立无线通讯,与网络设备或其他计算机设备之间收发信号。
音频电路905可以用于通过扬声器、传声器提供用户与计算机设备之间的音频接口。音频电路905可将接收到的音频数据转换后的电信号,传输到扬声器,由扬声器转换为声音信号输出;另一方面,传声器将收集的声音信号转换为电信号,由音频电路905接收后转换为音频数据,再将音频数据输出处理器901处理后,经射频电路904以发送给比如另一计算机设备,或者将音频数据输出至存储器902以便进一步处理。音频电路905还可能包括耳塞插孔,以提供外设耳机与计算机设备的通信。
输入单元906可用于接收输入的数字、字符信息或用户特征信息(例如指纹、虹膜、面部信息等),以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
电源907用于给计算机设备900的各个部件供电。可选的,电源907可以通过电源管理系统与处理器901逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源907还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管图9中未示出,计算机设备900还可以包括摄像头、传感器、无线保真模块、蓝牙模块等,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
由上可知,本实施例提供的计算机设备,确定当前场景下的目标渲染对象以及目标渲染对象对应的若干个目标光照探针,每个目标光照探针被配置有中心方向对应的烘焙深度,根据目标渲染对象与目标光照探针之间的距离,以及目标光照探针在中心方向上的烘焙深度,从目标光照探针中确定渲染光照探针,渲染光照探针对应的环境光在当前场景下可到达目标渲染对象,基于渲染光照探针对应的环境光照信息进行计算,得到目标渲染对象的目标环境光照信息,基于目标环境光照信息对虚拟对象进行渲染;由于在本发明实施例中,可以根据目标光照探针在中心方向上的烘焙深度以及目标光照探针与目标渲染对象之间的距离,确定目标光照探针对应的环境光在当前场景下是否可到达目标渲染对象,也即,目标光照探针对应的环境光相对于目标渲染对象是否会被当前场景中的其他虚拟对象遮挡,因此,可以避免环境光被遮挡的光照探针参与虚拟对象的渲染过程,改善虚拟对象的渲染效果,提升用户的视觉体验。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例提供一种计算机可读存储介质,其中存储有多条计算机程序,该计算机程序能够被处理器进行加载,以执行本申请实施例所提供的任一种虚拟对象渲染方法中的步骤。例如,该计算机程序可以执行如下步骤:
确定当前场景下的目标渲染对象以及目标渲染对象对应的若干个目标光照探针,每个目标光照探针被配置有中心方向对应的烘焙深度;
根据目标渲染对象与目标光照探针之间的距离,以及目标光照探针在中心方向上的烘焙深度,从目标光照探针中确定渲染光照探针,渲染光照探针对应的环境光在当前场景下可到达目标渲染对象;
基于渲染光照探针对应的环境光照信息进行计算,得到目标渲染对象的目标环境光照信息;
基于目标环境光照信息对虚拟对象进行渲染。
在一些可选的实施例中,确定当前场景下的目标渲染对象以及目标渲染对象对应的若干个目标光照探针之前,本发明实施例提供的虚拟对象渲染方法还可以包括:
针对当前场景中的各个目标光照探针,基于中心方向为目标光照探针设置深度测试射线,深度测试射线用于确定目标光照探针在中心方向上的深度信息;
确定各深度测试射线与当前场景之间的交点,记录交点与目标光照探针之间的距离;
基于距离,计算目标光照探针在中心方向上的烘焙深度。
在一些可选的实施例中,基于中心方向为目标光照探针设置深度测试射线,可以包括:
基于目标光照探针的中心方向,确定中心方向对应的偏移方向;
分别向中心方向以及偏移方向设置深度测试射线;
基于距离,计算目标光照探针在中心方向上的烘焙深度,可以包括:
根据距离,计算各偏移方向的映射距离和中心方向的映射距离,偏移方向的映射距离为沿偏移方向射出的深度测试射线与当前场景之间的交点与目标光照探针之间的距离映射到偏移方向对应的中心方向上的值,中心方向的映射距离为沿中心方向射出的深度测试射线与当前场景之间的交点与目标光照探针之间的距离;
将中心方向的映射距离以及中心方向对应的偏移方向的映射距离中最大的映射距离,作为目标光照探针在中心方向上的烘焙深度。
在一些可选的实施例中,基于距离,计算目标光照探针在中心方向上的烘焙深度,可以包括:
基于距离,计算目标光照探针在中心方向上的深度值;
对深度值进行编码计算,得到目标光照探针在中心方向上的烘焙深度。
在一些可选的实施例中,本发明实施例提供的虚拟对象渲染方法还可以包括:
当一光照探针对应设置有包围盒时,将当前场景下的最大烘焙深度作为光照探针在中心方向上的烘焙深度。
在一些可选的实施例中,中心方向为多个,根据目标渲染对象与目标光照探针之间的距离,以及目标光照探针在中心方向上的烘焙深度,从目标光照探针中确定渲染光照探针之前,本发明实施例提供的虚拟对象渲染方法还可以包括:
基于目标渲染对象与目标光照探针之间的位置关系,从目标光照探针的各中心方向中确定与目标渲染对象之间的角度满足预设的角度范围的候选中心方向;
根据目标渲染对象与目标光照探针之间的距离,以及目标光照探针在中心方向上的烘焙深度,从目标光照探针中确定渲染光照探针,可以包括:
根据目标渲染对象与目标光照探针之间的距离,以及目标光照探针在候选中心方向上的烘焙深度,从目标光照探针中确定渲染光照探针。
在一些可选的实施例中,根据目标渲染对象与目标光照探针之间的距离,以及目标光照探针在中心方向上的烘焙深度,从目标光照探针中确定渲染光照探针,可以包括:
比较目标渲染对象与目标光照探针之间的距离,与目标光照探针在候选中心方向上的烘焙深度之间的大小;
将在各候选中心方向上的烘焙深度均不小于距离的目标光照探针作为渲染光照探针。
在一些可选的实施例中,基于渲染光照探针对应的环境光照信息进行计算,得到目标渲染对象的目标环境光照信息,可以包括:
基于平滑渲染光照探针在各候选中心方向上的烘焙深度,以及目标渲染对象与平滑渲染光照探针之间的距离,计算平滑渲染光照探针的平滑渲染权重,平滑渲染光照探针为在至少一个候选中心方向上的烘焙深度小于距离且满足预设的平滑过渡距离区间的目标光照探针;
根据平滑渲染光照探针的环境光照信息以及平滑渲染权重,计算平滑渲染光照探针对应于目标渲染对象的平滑环境光照信息;
基于渲染光照探针对应的环境光照信息以及平滑环境光照信息进行计算,得到目标渲染对象的目标环境光照信息。
在一些可选的实施例中,基于渲染光照探针对应的环境光照信息进行计算,得到目标渲染对象的目标环境光照信息之前,本发明实施例提供的虚拟对象渲染方法还可以包括:
从目标光照探针中确定不对目标渲染对象光照渲染结果产生影响的非渲染光照探针,获取非渲染光照探针的第一理论插值权重;
基于渲染光照探针对应的环境光照信息进行计算,得到目标渲染对象的目标环境光照信息,可以包括:
基于第一理论插值权重,计算目标渲染对象对应的光照补充权重;
基于渲染光照探针对应的环境光照信息、渲染光照探针的第二理论插值权重和光照补充权重进行插值计算,得到目标渲染对象的目标环境光照信息。
本方案可以确定当前场景下的目标渲染对象以及目标渲染对象对应的若干个目标光照探针,每个目标光照探针被配置有中心方向对应的烘焙深度,根据目标渲染对象与目标光照探针之间的距离,以及目标光照探针在中心方向上的烘焙深度,从目标光照探针中确定渲染光照探针,渲染光照探针对应的环境光在当前场景下可到达目标渲染对象,基于渲染光照探针对应的环境光照信息进行计算,得到目标渲染对象的目标环境光照信息,基于目标环境光照信息对虚拟对象进行渲染;由于在本发明实施例中,可以根据目标光照探针在中心方向上的烘焙深度以及目标光照探针与目标渲染对象之间的距离,确定目标光照探针对应的环境光在当前场景下是否可到达目标渲染对象,也即,目标光照探针对应的环境光相对于目标渲染对象是否会被当前场景中的其他虚拟对象遮挡,因此,可以避免环境光被遮挡的光照探针参与虚拟对象的渲染过程,改善虚拟对象的渲染效果,提升用户的视觉体验。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该存储介质中所存储的计算机程序,可以执行本申请实施例所提供的任一种虚拟对象渲染方法中的步骤,因此,可以实现本申请实施例所提供的任一种虚拟对象渲染方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上对本申请实施例所提供的一种虚拟对象渲染方法、装置、存储介质及计算机设备进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (12)
1.一种虚拟对象渲染方法,其特征在于,包括:
确定当前场景下的目标渲染对象以及所述目标渲染对象对应的若干个目标光照探针,每个所述目标光照探针被配置有中心方向对应的烘焙深度;
根据所述目标渲染对象与所述目标光照探针之间的距离,以及所述目标光照探针在所述中心方向上的所述烘焙深度,从所述目标光照探针中确定渲染光照探针,所述渲染光照探针对应的环境光在所述当前场景下可到达所述目标渲染对象;
基于所述渲染光照探针对应的环境光照信息进行计算,得到所述目标渲染对象的目标环境光照信息;
基于所述目标环境光照信息对所述虚拟对象进行渲染。
2.根据权利要求1所述的虚拟对象渲染方法,其特征在于,所述确定当前场景下的目标渲染对象以及所述目标渲染对象对应的若干个目标光照探针之前,所述方法还包括:
针对所述当前场景中的各个目标光照探针,基于所述中心方向为所述目标光照探针设置深度测试射线,所述深度测试射线用于确定所述目标光照探针在所述中心方向上的深度信息;
确定各所述深度测试射线与所述当前场景之间的交点,记录所述交点与所述目标光照探针之间的距离;
基于所述距离,计算所述目标光照探针在所述中心方向上的烘焙深度。
3.根据权利要求2所述的虚拟对象渲染方法,其特征在于,所述基于所述中心方向为所述目标光照探针设置深度测试射线,包括:
基于所述目标光照探针的所述中心方向,确定所述中心方向对应的偏移方向;
分别向所述中心方向以及所述偏移方向设置深度测试射线;
所述基于所述距离,计算所述目标光照探针在所述中心方向上的烘焙深度,包括:
根据所述距离,计算各所述偏移方向的映射距离和所述中心方向的映射距离,所述偏移方向的映射距离为沿所述偏移方向射出的深度测试射线与所述当前场景之间的交点与所述目标光照探针之间的距离映射到所述偏移方向对应的中心方向上的值,所述中心方向的映射距离为沿所述中心方向射出的深度测试射线与所述当前场景之间的交点与所述目标光照探针之间的距离;
将所述中心方向的映射距离以及所述中心方向对应的所述偏移方向的映射距离中最大的所述映射距离,作为所述目标光照探针在所述中心方向上的烘焙深度。
4.根据权利要求2所述的虚拟对象渲染方法,其特征在于,所述基于所述距离,计算所述目标光照探针在所述中心方向上的烘焙深度,包括:
基于所述距离,计算所述目标光照探针在所述中心方向上的深度值;
对所述深度值进行编码计算,得到所述目标光照探针在所述中心方向上的烘焙深度。
5.根据权利要求2所述的虚拟对象渲染方法,其特征在于,所述方法还包括:
当一所述光照探针对应设置有包围盒时,将所述当前场景下的最大烘焙深度作为所述光照探针在所述中心方向上的烘焙深度。
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 |
---|---|---|---|
CN202211625949.1A CN115810077A (zh) | 2022-12-14 | 2022-12-14 | 一种虚拟对象渲染方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211625949.1A CN115810077A (zh) | 2022-12-14 | 2022-12-14 | 一种虚拟对象渲染方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115810077A true CN115810077A (zh) | 2023-03-17 |
Family
ID=85486098
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211625949.1A Pending CN115810077A (zh) | 2022-12-14 | 2022-12-14 | 一种虚拟对象渲染方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115810077A (zh) |
-
2022
- 2022-12-14 CN CN202211625949.1A patent/CN115810077A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110354489B (zh) | 虚拟对象的控制方法、装置、终端及存储介质 | |
CN111111167B (zh) | 游戏场景中的音效播放方法和装置、电子装置 | |
CN112802172B (zh) | 三维模型的纹理映射方法、装置、存储介质及计算机设备 | |
CN111325822B (zh) | 热点图的显示方法、装置、设备及可读存储介质 | |
CN112138386A (zh) | 一种体积渲染方法、装置、存储介质及计算机设备 | |
CN111729307A (zh) | 虚拟场景显示方法、装置、设备以及存储介质 | |
CN112206517B (zh) | 一种渲染方法、装置、存储介质及计算机设备 | |
CN110801629B (zh) | 虚拟对象生命值提示图形的显示方法、装置、终端及介质 | |
CN113952720A (zh) | 游戏场景渲染方法、装置、电子设备及存储介质 | |
CN112489179B (zh) | 目标模型的处理方法、装置、存储介质及计算机设备 | |
CN116402931A (zh) | 体积渲染方法、装置、计算机设备和计算机可读存储介质 | |
CN113797531B (zh) | 遮挡剔除实现方法、装置、计算机设备及存储介质 | |
CN112206519B (zh) | 实现游戏场景环境变化的方法、装置、存储介质及计算机设备 | |
CN118135081A (zh) | 模型生成方法、装置、计算机设备和计算机可读存储介质 | |
CN112306332B (zh) | 确定选中目标的方法、装置、设备及存储介质 | |
CN116672706B (zh) | 光照渲染方法、装置、终端和存储介质 | |
CN113487662A (zh) | 画面显示方法、装置、电子设备和存储介质 | |
CN112950753B (zh) | 虚拟植物显示方法、装置、设备及存储介质 | |
CN113426131B (zh) | 虚拟场景的画面生成方法、装置、计算机设备及存储介质 | |
CN115810077A (zh) | 一种虚拟对象渲染方法、装置、计算机设备和存储介质 | |
CN118556254A (zh) | 图像渲染方法、装置及电子设备 | |
CN115300904A (zh) | 推荐方法、装置、电子设备和存储介质 | |
CN114949863A (zh) | 虚拟角色眼睛渲染方法、装置、电子设备和存储介质 | |
CN115120970A (zh) | 虚拟场景的烘焙方法、装置、设备以及存储介质 | |
CN115035231A (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 |