CN104781852B - 用于渲染三维场景的计算机绘图方法 - Google Patents

用于渲染三维场景的计算机绘图方法 Download PDF

Info

Publication number
CN104781852B
CN104781852B CN201280076971.3A CN201280076971A CN104781852B CN 104781852 B CN104781852 B CN 104781852B CN 201280076971 A CN201280076971 A CN 201280076971A CN 104781852 B CN104781852 B CN 104781852B
Authority
CN
China
Prior art keywords
scene
projection
form pattern
pattern
processor
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
CN201280076971.3A
Other languages
English (en)
Other versions
CN104781852A (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.)
Shenzhen Youli Spacetime Technology Co ltd
Original Assignee
EUCLIDEON Pty 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 EUCLIDEON Pty Ltd filed Critical EUCLIDEON Pty Ltd
Publication of CN104781852A publication Critical patent/CN104781852A/zh
Application granted granted Critical
Publication of CN104781852B publication Critical patent/CN104781852B/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/08Volume rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/003Reconstruction from projections, e.g. tomography
    • G06T11/006Inverse problem, transformation from projection-space into object-space, e.g. transform methods, back-projection, algebraic methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/028Multiple view windows (top-side-front-sagittal-orthogonal)
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2004Aligning objects, relative positioning of parts

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Algebra (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Architecture (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Image Generation (AREA)
  • Processing Or Creating Images (AREA)

Abstract

提供了一种用于在基于电子处理器的系统上实施的计算机绘图方法,所述基于电子处理器的系统可为计算机、手机、游戏控制台或其他设备。该方法包括针对三维场景的某些部分使用透视投影而针对其他部分使用正交投影通过激活所述系统的电子显示设备的像素来渲染所述三维场景。对于所述场景中使用透视投影和使用正交投影进行渲染会出现明显差异的那些部分,使用透视投影。针对所述场景的满足预定条件的其他部分,使用计算开销远远更小的正交投影。该方法产生了由所述显示设备的像素显示的经渲染场景,该经渲染场景总体看起来已经使用透视变换进行了真实渲染。然而,由于所述经渲染场景的部分使用正交投影进行了渲染,所以该方法的计算开销远远小于仅使用透视投影的计算开销。

Description

用于渲染三维场景的计算机绘图方法
技术领域
本发明涉及一种用于渲染三维场景的计算机绘图方法。
背景技术
对现有技术的方法、装置或文件的任何参考都不可看作证明或者承认其形成了世界上任何国家公知常识的一部分。
3D计算机绘图技术用于将描述三维场景的数据转化为二维图像以在电子显示屏上观看该图像。可以理解的是,包括在整个权利要求中,本文中的术语“场景”在广义上被理解为既包括非常复杂的场景,但又包括仅含有一些或单个对象的场景,或者在最简化的情况下包括只含有一个或多个可见点的集合的场景。
在过去20年中计算机绘图集中发展的领域为计算机和视频游戏领域,虽然这不是仅有的领域。
计算机游戏的发展和市场化是当前全球娱乐产业中极其重要的部分。例如,在2010年,视频游戏“使命召唤:黑色行动”在前五天的销售中便成交超过6.5亿美元。
为了向游戏玩家提供更为真实的游戏体验,大量研发涌入以增加游戏场景渲染的速度和真实感。
在渲染游戏场景的过程中,用于代表场景的数据,例如与该场景中的每个对象相关联的位置数据,必须由游戏机的处理器进行处理以将来自场景的3D空间的数据投影为适于由游戏机的显示设备进行显示的2D数据。该变换必须将玩家相对于场景的位置和视角考虑在内。由于人类在其正常视觉系统中感知到透视缩减,所以计算机绘图渲染方法通常采用透视投影。
透视投影是计算密集型,因为其涉及三角计算,三角计算通常施加有包括矩阵和矢量相乘的运算。因此,随着场景中所记录细节的量的增大,例如位置数据,必须用来渲染该场景的冗长计算的数量也将增大。这些额外的计算会要求以减小的帧速率进行游戏。
因此,将认识到在场景真实感与维持帧速率之间存在折中。一种被广泛采用的解决该问题的途径为使用多个平面多边形来渲染场景。多边形网格用于对需要渲染的场景对象进行建模。多边形的角随后从3D转换为2D并且显示给用户。为了同时适应增加的场景细节和较高的帧速率,ATI和NVIDIA等制造商开发并推售了用于并入游戏机的专用图形处理器卡。
但是,在当前使用多边形系统的过程中存在很多相关的限制。例如,因为多边形具有线性边界,所以其无法轻易用于代表曲面对象。此外,即使使用专用图形处理器,人眼仍然会对采用多边形的直线边缘进行近似的曲面对象敏感。因此,这些基于多边形的系统既计算密集又无法满足挑剔的游戏玩家。
有利的是能够提供一种用于显示三维场景的计算机绘图方法,该方法能够克服上述现有技术的问题或者至少能够作为迄今已知的方法的有用替代。
发明内容
根据本发明的第一方面,提供了一种计算机绘图方法,该方法在具有至少一个被配置为控制电子显示设备的基于电子处理器的系统上实施,所述方法包括运行处理器以执行以下步骤:
从数据结构中提取限定三维场景的数据;
在所述电子显示设备上根据正交投影对所述场景满足预定条件的部分所对应的提取数据进行渲染;以及
在所述电子显示设备上根据透视投影对所述场景的其他部分所对应的提取数据进行渲染;
其中,在所述显示设备上显示的经渲染场景看起来已经根据所述透视投影进行了整体渲染,从而相对于仅使用所述透视投影,减少了电子处理器所完成的用于渲染所述场景的计算的数量。
根据本发明的第一方面,提供了一种由基于电子处理器的系统实施的计算机绘图方法,所述方法包括:
处理数据结构,该数据结构包含针对待由电子显示器示出的三维(3D)场景的数据;
通过正交投影来渲染所述场景的满足预定条件的部分;以及
否则,使用透视投影来渲染所述场景;
从而相对于仅使用所述透视投影,减少了所述电子处理器所完成的用于渲染所述场景的计算数量。
在优选实施例中,所述方法包括:在考虑到部分的尺寸、所述透视投影的焦距以及所述显示器分辨率的情况下,测试所述场景的该部分是否满足所述预定条件。
优选地,所述方法包括:
将与所述场景满足所述预定条件的部分相关的3D点从3D投影到2D以生成2D形式图案;以及
基于所述2D形式图案确定所述场景的子部分的投影。
在优选实施例中,所述方法包括:递归地更新所述2D形式图案并且参考所更新的形式图案确定较低级子部分的投影。
递归地更新所述2D形式图案的步骤优选包括:对代表所述形式图案的顶点坐标值进行比特移位。
或者,递归地更新所述2D形式图案的步骤可包括:对代表所述形式图案的顶点坐标值进行乘加(multiply-and-add,MAD)运算或者融合乘加(fused multiply-and-add,FMAD)运算。例如,该步骤可包括:乘以0.5以二等分代表所述形式图案的顶点坐标值。
递归地更新所述2D形式图案的步骤可包括:计算关于所述递归前一次迭代的形式图案距边界框的最小值的偏移。
在优选实施例中,所述数据结构包括八叉树并且处理所述数据结构的步骤包括遍历所述八叉树以从中提取表示所述场景的数据。
在数据结构包括八叉树的情况下,所述部分对应于与该八叉树相关的母八分体和子八分体。
优选地,所述方法包括:确定一个序列用于相对于预定观察位置按照从前到后的顺序处理所述八叉树的节点。
此外,所述方法可包括:测试八分体的边界是否与视锥体相交。
优选地,所述方法包括:在写入所述显示器之前进行掩模测试。
所述方法也可包括:在写入所述显示器之前进行闭塞测试(occlusion test)。
根据本发明的另一方面,提供了一种计算机绘图系统,包括处理器,该处理器与存储有针对三维(3D)场景数据结构的存储器设备进行通信并且被配置为控制显示设备,所述处理器被配置为:
处理所述数据结构以检索限定所述场景的数据;
使用正交投影对所述场景的满足预定条件的部分进行渲染;以及
否则,在所述显示设备上使用透视投影对所述场景进行渲染;
从而相对于仅使用所述透视投影进行渲染,通过使用所述正交投影减少了所述电子处理器所完成的用于渲染所述场景的计算数量。
优选地,所述计算机绘图系统的所述处理器被进一步配置为:
将与所述场景满足所述预定条件的部分相关的3D点从3D投影到2D以生成2D形式图案;以及
基于所述2D形式图案确定所述场景的子部分投影。
在优选实施例中,所述计算机绘图系统的所述处理器被进一步配置为:在考虑到部分的尺寸、所述透视投影的焦距以及所述显示器分辨率的情况下,测试所述场景的该部分是否满足所述预定条件。
优选地,所述计算机绘图系统的处理器被进一步配置为:将与所述场景满足所述预定条件的部分相关的3D点从3D投影到2D以生成2D形式图案;以及
在不依赖3D到2D投影的情况下,基于所述2D形式图案确定所述场景的子部分投影。
根据本发明的另一方面,提供了一种计算机绘图软件产品,包括载有由处理器执行有形指令的计算机可读介质,用于实现前述方法。
根据本发明的另一方面,提供了一种由基于电子处理器的系统实施的计算机绘图方法,用于使用正交投影来渲染场景的部分,所述方法包括以下步骤:
将与关于所述部分的边界框相关的3D点从3D投影到2D以生成2D形式图案;以及
基于所述2D形式图案确定所述场景的子部分投影。
根据本发明的另一方面,提供了一种计算机绘图软件产品,包括载有由处理器执行有形指令的计算机可读介质,用于实现前述方法。
根据本发明的另一方面,提供了一种计算机绘图系统,包括处理器,该处理器与存储有针对三维(3D)场景数据结构的存储器设备进行通信并且被配置为控制显示设备,所述处理器被配置为:
处理所述数据结构以检索限定所述场景的数据;
将与关于所述场景的部分的边界框相关的3D点从3D投影到2D以产生2D形式图案;以及
基于所述2D形式图案产生所述场景的子部分投影。
根据本发明的其他方面,提供了一种用于生成图像的计算机绘图方法,以使得该图像看起来由第一投影生成,所述方法由计算机系统来执行,该计算机系统包括至少一个被配置为对电子显示设备的像素进行控制的处理器,所述方法包括;
通过所述第一投影在所述显示设备上产生所述图像的部分;
同时通过第二投影在所述显示设备上产生所述图像的其他部分,所述第二投影近似于所述第一投影,其中,所述第二投影比所述第一投影的计算强度低。
根据本发明的第一方面,提供了一种由基于电子处理器系统实施的计算机绘图方法,所述方法包括:
处理数据结构,该数据结构包含针对待由电子显示器示出的三维(3D)场景的数据;
通过正交投影来渲染所述场景满足预定条件的部分;以及
否则,使用透视投影来渲染所述场景;
从而减少了所述电子处理器所完成的用于渲染所述场景的计算的数量。
附图说明
本发明的优选特征、实施例和变型可从以下详细描述中进行阐明,该详细描述向本领域技术人员提供了实施本发明的足够信息。所述详细描述不会被看作以任何方式限制前述发明内容的范围。将参考以下附图做出详细描述,其中:
图1示出了用于实施根据本发明实施例所述方法的计算机系统;
图2示出了具有透视效果的对象;
图3示出了包括简单场景的线框立方体;
图4示出了线框立方体的透视投影;
图5示出了线框立方体的透视投影的平面图;
图6示出了包括矩形像素阵列的显示屏;
图7示出了具有透视效果的立方体内的对象;
图8示出了图6叠印在图7的矩形像素阵列上的透视投影;
图9示出了通过图7的屏幕对立方体的透视投影的渲染;
图10是立方体相对于像素显示屏的正交(即平行)投影与透视投影的比较图;
图11示出了图10的立方体叠印在像素显示屏上的透视投影;
图12示出了图10的立方体叠印在像素显示屏上的正交投影;
图13示出了通过像素显示屏对图10的立方体的透视投影的渲染;
图14示出了通过像素显示屏对图10的立方体的正交投影的渲染;
图15示出了限定示例性场景的八叉树立方体结构的高级八叉树立方体;
图16示出了穿过图15的八叉树立方体结构的切片,该切片示出了低级子八分体的产生;
图17描绘了根据本发明实施例进行渲染的简单三维(3D)场景;
图18描绘了图17的场景所对应的细分八叉树立方体;
图19是图18的八叉树立方体所对应的八叉树数据结构的节点图;
图20示出了图18的八叉树立方体的最高级立方体的3D到2D正交投影;
图21示出了图18的立方体的正交投影;
图22用于示出在不依赖3D到2D投影的情况下如何使用2D到2D操作根据限定高级立方体的投影的顶点来推出八分体的子立方体的投影;
图23描述了对图17场景的渲染;
图24示出了在正交模式下用于计算立方体2D投影顶点的替代性方法;
图25示出了如何将立方体2D投影的顶点计算为距显示屏的原点偏移;以及
图26至28包含根据本发明优选实施例所述的方法的流程图。
具体实施方式
现在参考图1,其示出了用于实施根据本发明实施例所述的方法的示例性计算机系统1,下面将描述该示例性计算机系统1。
可以理解的是,计算机系统1包括用于实施所述方法的、示例性的基于电子处理器的系统。然而,该方法也可轻易通过其他基于电子处理器的系统来实施。所述系统可包括但不限于:游戏控制台、平板、膝上和上网本型计算设备、蜂窝智能电话和医疗成像设备。
计算机系统1包括主板3,主板3包括用于供电和联接到至少一个板载处理器5的电路。所述至少一个板载处理器可包括两个或更多个分立的处理器或具有多个处理核的处理器。
作为非限定性示例,在用于玩计算机游戏的个人计算机中正流行的微处理器为Intel公司制造的i5或i7处理器组中的一种。
主板3用作微处理器5与次级存储器7之间的接口。次级存储器7可包括一个或多个光驱动器、磁驱动器或固态驱动器。次级存储器9存储用于操作系统9的指令。主板3还与随机访问存储器11和只读存储器(ROM)13通信。ROM 13通常存储用于基本输入输出系统(Basic Input Output System,BIOS)的指令,而微处理器5在启动时访问BIOS并且BIOS将微处理器5准备好用于载入操作系统9。
主板3也与图形处理器单元(Graphics Processor Unit,GPU)15相连接。可以理解的是,在某些系统中,图形处理器单元15被集成在主板3中。
主板3通常包括通信适配器,例如LAN适配器或调制解调器,使得计算机系统1与诸如因特网的计算机网络进行数据通信。
计算机系统1的用户借助于键盘19、鼠标21和显示器17与计算机系统1交互。
系统1的用户可操作操作系统9以载入计算机绘图相关的软件产品29。计算机绘图相关的软件产品29被提供为承载在诸如光盘27的计算机可读介质上的有形指令。或者,也可经由端口23进行下载。
计算机绘图相关的软件产品29包括数据结构,该数据结构存储限定各种场景(例如,游戏)的数据。
软件产品29也包括用于微处理器5以及可能用于GPU 15的指令,以响应于经由诸如键盘19和鼠标21的操作者控制器从用户处接收的输入来操纵场景数据。
可以认识到的是,存在可用来存储场景数据的多种计算机数据结构。在本发明的优选实施例中,使用八叉树数据结构,尽管该数据结构是优选的,但是也可使用其他类型的数据结构,例如,二叉空间分区(BSP)树。
不管使用哪种数据结构来存储场景的位置数据,都需要将数据从3D变换为2D以在显示设备17上显示。
3D和2D图形的主要差异之一为由于距视点的距离而导致的透视和尺寸减小的概念。在图2中,对象根据其距视点的距离而变小。对该距离的计算为与3D图形相关联的3D到2D计算显著增加了更多的工作。
现在参考图3,其描述了用于在计算机系统1的显示器17上进行渲染的线框立方体31。显示器可以是任何合适的类型。例如,阴极射线管(CRT)、液晶显示器(LCD)或等离子显示器为显示器17可使用的显示技术的非限定性示例。针对立方体31的顶点或边缘数据存储在如前所述计算机系统的合适的数据结构中。
图4代表了以侧视图示出的立方体31的2D单点投影在显示屏35上的视图。
从立方体31的顶点到相机点33的多束光线被示为穿过屏幕35以表示该立方体的3D顶点和边缘模型在包括屏幕35的2D观察面上的变换。该变换(或者也可称为“投影”)使用计算机绘图领域熟知的标准3D到2D透视投影来实现,所述标准3D到2D透视投影的解释参见以下书籍,例如:Computer Graphics Principles and Practice by Foley,van Dam,Feiner&Hughes 2nd Edition published 1990 by Addison-Wesley(ISBN 0-201-12110-7)(计算机绘图原理与实践(第二版),Foley,van Dam,Feiner&Hughes,1990年由Addison-Wesley出版(ISBN 0-201-12110-7)),其全部内容通过引用合并到本申请中。
如前面所评论的,透视变换是计算密集型,因为其涉及三角计算。
图5描绘了从相机点33所看到的立方体31的视图37。实际上,这是立方体31在观察平面35上的单点2D透视投影。为了在视觉上使立方体看起来为3D,该立方体的背面显示为明显地小于正面。
应当注意到的是,立方体31的投影37中背面和正面的投影间隔一距离T。
图7描绘了立方体中存在的对象。对象表现出尺寸上的差异,因为他们位于立方体的前部和后部。
在诸如图1中的系统1的计算机绘图系统的情况下,屏幕35通常将包括显示监视器或其他显示设备,例如图1中的显示器17,包括图6所示的像素网格39。
图8为叠印在像素网格39上立方体31的投影37的放大图。构成网格的像素具有所示出的假想宽度和高度p。
为了借助于像素网格39表示投影37,投影37的线所落入的那些像素被设置为对比色(即黑色,如本示例中所示)。所产生的像素图像如图9中所示。
应当指出的是,由于立方体31的投影37的背面和正面的距离T大于三个相邻像素的宽度,所以图9中的相应像素图像使得背面和正面能够相互区别。
图10与图4基本相似,不同之处在于前者表示从相机点33观察的较小3D立方体41(以平面图示出)在显示屏35上的投影。由于所使用的焦距远大于图4中的焦距,所以存在以间隙43表示的线性尺度上的非连续性。在图10中,平行光线45a、45b表示立方体41在显示屏35上的正交投影,而会聚光线对47a、47b表示透视投影。
应当指出的是,由于立方体41的较小尺寸以及透视投影中所使用的较长焦距,所以正交投影的光线45a和45b以及与透视投影相关联的光线对47a和47b在显示屏35处被小于像素宽度p的距离所分开。
图11是叠印在显示屏35的像素网格39上的立方体41关于相机点33的透视投影。
相似地,图12是叠印在显示屏35的像素网格39上的立方体41关于相机点33的正交投影。
应当指出的是,图11的透视投影与图12的正交投影覆盖相同的像素。因此,对于图13和图14中所示的每个投影,在显示屏35的像素网格39上生成并且由(例如)游戏玩家的计算机系统用户所看到的实际图像是相同的。该投影显著小于图9中所示的投影。由于该投影的尺寸小,背面与正面之间的差异是无法观察到的,所以在该图中,立方体看起来为正方形。
如果在该立方体中存在对象,则不会因为对象在立方体的正面或背面而看起来较小或较大。
从技术上讲,在正面与背面之间总是存在差异,但是,由于计算机监视器为像素网格,当差异小于一个像素的尺寸时,所述差异会因太小而不存在。正常情况下,3D计算使用透视,但是,由于正面和背面之间不存在尺寸差异,所以使用不将透视考虑在内的不同计算。
尽管使用单点投影得到上述例证,但是发明人发现相应的结果也适用于两点和三点投影。
从以上讨论中可认识到,取决于待表示的3D对象的尺寸以及诸如该对象在观察平面之后的距离和所用焦距之类的参数,在使用正交投影生成对象的视图与使用透视投影生成对象的视图之间可不存在可观察到的差异。但是,透视投影比正交投影的计算开销大得多,即,对于透视投影,计算数量较高。
此外,线框立方体31和41可当作边界框。因此,如果像框41那样,边界框可使用正交投影进行渲染,则场景中落入该边界框内的任何对象也都可使用正交投影进行渲染。
因此,发明人发现:对于通过透视投影进行渲染与通过正交投影进行渲染出现可觉察到的差异场景中的对象,可使用透视投影激活电子显示设备的像素来渲染该场景,而对于其余的对象,可使用正交投影激活像素来渲染该场景,从而生成总体上看起来使用透视变换进行真实渲染的场景。
此外,如所进行的简单说明所示,在本发明的方法的优选实施例中,可基于整个母八分体立方体的2D投影来生成由八叉树建模的场景的八分体的2D投影,而无需将每个八分体单独地从3D空间投影到2D空间。
图15描述了包括三个对象的场景,该三个对象为叠印在整个八叉树立方体43内的蘑菇的形式。八叉树立方体在图1所示的计算机系统的内存中被存储为数据结构。为了清楚起见,图15中仅可见以实线示出的八叉树的整个母立方体43,以及该母立方体43的以虚线示出的第一组8个子八分体45a,……,45h。然而,从计算机绘图技术中可知,八叉树子立方体围绕场景中对象的部分继续进行细分,场景中对象的部分被弯曲至预定的分辨率极限。如图16中所示,其中包括穿过图15中的八叉树的切片,在该切片中可看到其他三个等级的八分体49、51和53。
将参考图17至图23描述根据本发明优选实施例所述的方法。
图17描绘了包括三个呈3D立方体55、57和59形式的非常简单的对象的场景。为了进行解释,需要操作图1的计算机系统沿图17中所示的视角63显示图17场景的2D表示。
图18描绘了被细分为八分体用于对图15中的场景进行建模的整个八叉树立方体61。为了进行解释,假设八叉树61的整体尺寸使得在施加了正交投影而不是透视投影的情况下将不会觉察到明显的差异,正如结合图10中的立方体41所解释的那样。
整个八叉树立方体61已经被细分成编号为0至7的8个第一等级子立方体。立方体5已经进一步被细分为8个第二等级子立方体。第一等级子立方体3和4以及第一等级子立方体5的第二等级子立方体3对图17中所示的场景的立方体55、57和59进行建模。
八叉树立方体61在图1的计算机系统存储器中,以包括图19中所示八叉树的数据结构的方式进行存储。
为了显示图17中的场景,按照相对于视角63从前到后的顺序读取(即遍历)八叉树的节点。
与遮挡剔除相关联的主要运算为求得边界框的尺寸。在基于八叉树的系统中,这一般包括采集环绕立方体(encompassing cube)的8个值,将这些值从3D自然空间(worldspace)转化到3D屏幕空间,并且对这些值进行排序以确定水平及垂直最小值和最大值。在基于透视的系统中,这是相当大量的工作,因为一般将针对每个框进行计算。如前面所提及的,根据本发明的优选实施例所述的方法利用了将自然/对象分解为较小正交分区的概念。使用这些分区以求得边界框尺寸可被二等分水平和垂直边缘所取代,因为在处理八叉树数据时正交分区边界框正好是其母边界框大小的四分之一。
从计算机绘图技术中可知,可从8个不同观察区域观察八叉树,针对前到后观察,遍历八叉树的顺序表可根据视角所落入的区域进行制定。对于图16中所示的视点位于区域+x、+y、+z中的情形,针对前到后观察,遍历八叉树的顺序为“7、6、5、3、4、2、1、0”。
现在参考图20,由8个3D顶点坐标P0(x0,y0,z0),…,P7(x7,y7,z7)所限定的整个八叉树立方体61被正交地投影到视角63处的期望观察平面65,从而生成包括有8个2D顶点P(x0,y0),…,P(x7,y7)的立方体的2D投影67。参考图21,限定2D投影的顶点的8个2D顶点P(x0,y0),…,P(x7,y7)可被称为“形式图案”,因为其限定了八叉树投影的形状。此外,由于投影是正交的,所以当被按比例缩小时,也可以限定子八分体的投影的形状,而在使用透视投影的情况下却不是这样的。
在图21的示图中,顶点被示为被边缘互连,但是这些边缘在对图17的场景的最终渲染中将不会显现。形式图案(Form Pattern,FP)顶点P0(x0,y0),…,P7(x7,y7)按照与八叉树的观察顺序相同的顺序被存储在阵列中,即,FP阵列=[P7、P6、P5、P3、P4、P2、P1、P0]。
然后按照从前到后的顺序读取图19的八叉树,对于图18中所示的视点,该顺序为7、6、5、3、4、2、1、0。
由于节点7为空,所以不采取任何动作。
由于节点6为空,所以不采取任何动作。
由于节点5指向子节点,所以程序深入到下一等级。
在下一等级中:
由于节点7为空,所以不采取任何动作。
由于节点6为空,所以不采取任何动作。
由于节点5为空,所以不采取任何动作。
由于节点3为叶节点,所以对于子节点5的子节点3,调用叶节点(Leaf Node)子例程。叶节点子例程将在下文中描述。
由于节点4为空,所以不采取任何动作。
由于节点2为空,所以不采取任何动作。
由于节点1为空,所以不采取任何动作。
由于节点0为空,所以不采取任何动作,然后程序跳高一个等级。
由于节点3为叶节点,所以对于子节点3,调用叶节点子例程。
由于节点4为叶节点,所以对于子节点4,调用叶节点子例程。
由于节点2为空,所以不采取任何动作。
由于节点1为空,所以不采取任何动作。
由于节点0为空,所以不采取任何动作。
叶节点子例程向形式图案阵列传送边界框的最小点(MinPoint)和最大点(MaxPoint)以及叶节点信息。
八叉树立方体61的投影67的边界框的左上角(在当前情况下与顶点(x0,y0)重合)被用作8个顶点(x0,y0),…,(x7,y7)的原点。
然后,叶节点子例程在8个顶点(x0,y0),…,(x7,y7)上运算以将其二等分从而生成图19中所示的8个点(x0,y0)2,…,(x7,y7)2。8个顶点(x0,y0)2,…,(x7,y7)2将图18的八叉树立方体的八分体2的2D投影限定为如图22中所示的2'。应当指出的是,该投影通过对限定了整个八叉树八分体立方体的2D投影顶点的点进行划分而得到。并不需要将八分体2的3D顶点投影到观察平面中。因此,这8个点(x0,y0)2,…,(x7,y7)2为距边界框69的最小值的偏移。相对于边界框69的最小值,移位运算用于二等分8个顶点(x0,y0),…,(x7,y7)。新的点(x0,y0)2,…,(x7,y7)2中的每个点被再次二等分以针对下一低等级的每个八分体生成另外的8个子点,例如(x0,y,0)3,…,(x7,y7)3。例如,如图22中的子八分体立方体投影5-3’所示的那样。
在八叉树表明子八分体是叶节点的情况下,叶节点如图23中那样被加上阴影以生成对原本在图17中所描绘的场景的渲染。倘若对象(例如,图23的立方体)的尺寸足够小,则出于之前参考图1至图13所讨论的原因,使用正交投影进行渲染或者使用透视投影变换进行渲染的立方体之间将不会存在明显的差异。
如果形式图案方法不与具有终端分支的八叉树数据相关,则该方法可渲染浮点的实心立方体。通过将形式图案方法与八叉树数据相关联以及在分支为空时展开图案,形式图案方法实际上可使用类比将形式图案切开,就像形式图案是灰泥一样。最终对象与通过传统技术使用带有3D到2D算法的立体像素所产生的对象具有相同的特性和形式,但是就处理能力而言,形式图案技术使用了小部分时间和运算。
由2D正交投影点(x0,y0),…,(x7,y7)所限定的母立方体的投影形状可被称为“形式图案”,因为其不仅限定了最高级母八分体而且限定了降级子八分体的正交投影比例,即形式。可实施形式图案的多种变型。
例如,顶点通常被存储为8个“X”值和8个“Y”值,例如上文所述的(x0,y0),…,(x7,y7)。然而,也有可能收集4个“X”值和4个“Y”值,并且通过将所收集的值相对于中心点偏移来生成其余的值,该中心点通过以下方式生成:将运算所在的立方体的三维中心点进行二维投影或者使用前述边界框(例如,图21中的框69)的2D中心点。只要收集到这些偏移,某些点可以通过对这些值的符号取反而生成。通过合适地收集一半的所讨论角值(cornervalues),其余的值可通过使用该方法而生成。由符号取反产生点的方法仅对如图24中所示的被正交投影的立方体或棱柱体是精确的。
形式图案通常为相对于边界框19的4个角中的一个的偏移。或者,形式图案也可以是距边界框内或边界框范围之外的任一点的偏移,也可以没有偏移,而将其在当前屏幕像素上所具有的不变值作为形式图案的值。然而,对边界框4个角之一的使用被认为有助于理解,并且使得左上角(在图21中被表示为“最小值(Min)”)与将屏幕的左上角看作在图25中所示的位置(0,0)的实践相一致。
渲染3D图形最处理密集的部分之一为将点从3D空间转化到2D屏幕。正常情况下,该处理包括相当多的数学运算。二等分形式图案以及将这些二等分点添加到母形式图案点的形式图案点上产生了与正常的3D到2D转化相同的输出。
在优选实施例中,计算形式图案不使用相乘、除法或者多个复杂运算。这将在这个系统中用移位(BIT SHIFT)和相加(ADD)来替代。在基于3D图形透视的正常情况下,该方法不起作用,但是,如果待渲染对象被分为如上所述的正交子部分,则系统可利用该非正常图案。
现在参考图26至图28,根据优选实施例所述的用于处理八叉树数据结构的方法以流程图的形式给出,所述八叉树数据结构含有对用于渲染的场景进行建模的数据。该方法可被编码为有形的计算机可读指令(例如承载在图1中的光盘27上)以使得其组成计算机软件产品29用于通过计算机系统1进行处理。
现在将讨论图26至28的流程图中的每个流程框处所进行的各种处理。
在流程框83处,掩模缓存被清零。掩模缓存是一系列的标识位,显示缓存中的每个像素对应于一个标识位,标识位表明像素是否写入该位置。由于算法所提供的从前到后的顺序,每个像素只需要写入一次。当使节点的2D边界框重叠的所有像素都已被写入时,掩模缓存用于忽略该节点及其所有子节点。
在流程框84处,每个节点可具有0至8个子节点;只要节点上出现的所有子节点都被处理,则该节点被移出堆栈并且不再被考虑。
在流程框85处,对于递归实施方式,通过简单地返回函数来将最前端的节点移出堆栈。在迭代实施方式中,堆栈的尺寸被减小1。
在流程框86处,当堆栈上不存在节点时,整个模型被处理完毕。
在流程框87处,按照从前到后的顺序处理子节点,每个子节点被标记为已处理以确定何时可忽略节点(参见流程框84)。
在流程框88处,母节点被标记为正交模式,只要该母节点或该母节点的任何一个母节点满足针对正交模式的标准,参见流程框101和102。
在流程框89处,与附近的观察平面相交的节点必须被细分以避免数学上的不精确。
在流程框90处,当前节点被推入堆栈,从而确保其子节点(如果存在的话)接下来可被处理。
在流程框91处,在正交模式中,通过以下方式计算2D边界框:针对自生成正交数据以来的各个等级的家系(ancestry),获得保存在正交缓存数据中的2D边界框的尺寸并且将其除以2。也就是说,满足正交模式标准(参见流程框101)的节点的子节点将具有正好等于存储在正交数据缓存中的边界框尺寸一半的边界框尺寸。孙节点将具有正好四分之一的边界框尺寸,以此类推。在实践中,创建正交缓存数据时堆栈的尺寸可被存储在正交缓存数据中,并且从给出要被2除以的次数的堆栈尺寸中减去。在得到该值的情况下,使用二进制移位运算实现了除法,这比遗传除法要快得多。在得到所计算的边界框尺寸的情况下,通过以下方式来计算偏移:基于子节点数量选择框偏移值,针对各个等级的家系通过与尺寸完全相同的方式将框偏移值除以2,以及所得的商加到存储在正交缓存数据中的边界框位置上。
在流程框92处,在透视模式中,通过使用标准方式在当前节点的3D边界框的8个角点上进行到屏幕空间的全透视变换来计算2D边界框。通常,这是4x4矩阵与3D矢量相乘所得到的4D矢量(x,y,z,w),其中w分量被用作除数以进行最后的透视变换。应当认识到的是,根据本发明优选实施例所述的系统被设计为尽量避免该步骤。
在流程框93处,只要计算出2D边界框,测试其是否与任一屏幕边缘重叠,如果重叠,则相应地调整坐标以仅反映出框中与显示缓存重叠的部分。如果边界框完全在显示缓存之外,则不再考虑该节点并且控制流程至流程框84以处理该节点的其余子节点。
在流程框94处,由于从前到后的绘制顺序(drawing order),只要任一节点的边界框内的所有像素都已被写入,则该节点被封闭并且不再被考虑。通过测试掩模缓存中对应于边界框区域的每个标识位来实现该测试,如果所有的像素都被标记为已写入,则可丢弃该节点并且控制流程至流程框84。
在流程框95处,如果节点在处理过程中此刻不具有子节点,则提取(drawn)该节点(参见流程框97)。
在流程框96处,如果边界框的尺寸等于或小于阈值(比如1个像素),则提取该节点。这主要是因为一个像素尺寸以下的进一步细分是不必要的。
在流程框97处,为了提取(draw)节点,在掩模缓存中对经固定的2D边界框所对应的每个像素进行测试,并且当像素未被写入时,彩色缓存中相应的像素被设置为该节点的颜色并且设定掩模缓存。另外,此刻可写入其他缓存以记录信息,例如深度值和/或正常值。
在流程框98处,当前节点被推入堆栈,从而确保其子节点接下来可被处理。
在流程框99处,只要节点满足针对正交模式的标准,该节点的所有子节点也隐含地为正交的,所以此刻标识位和正交缓存数据被复制以将正交模式传递到子节点。
在流程框100处,在节点中设置正交模式标识位以表明其家系中任一节点是否满足正交模式标准。
在流程框101处,测试针对正交模式的标准。如已结合图3至图15所讨论的,该标准定性为:当使用透视将框投影到屏幕空间时,该框的背面看起来比该框的正面小的量(由于透视效应)小于1个像素,因而在光栅化时不会被觉察到。有很多方式对此进行测试,但是由于通过将矢量除以w(如结合流程框92所讨论的)施加了透视效应,所以便捷而简单的测试方式为测试框前部的经变换点与框后部的经变换点之间的w值的比率。实际的阈值比率随焦距和显示缓存的尺寸而变化,所以当这些参数中的任一个变化时,必须重新计算该阈值比率。
因此,监视和执行正交模式包括两部分:
第一部分包括预计算最佳阈值(当显示尺寸或焦距(视场)变化时进行更新),第二部分包括在渲染的过程中应用该阈值。
如上所述,潜在的逻辑比较简单;想要知道的是何时经投影的前坐标与后坐标间隔小于1.0像素(或者类似的公差值)。
虽然可能存在直接计算该值的方式,但是当前使用二进制搜索。标准的二进制搜索在近Z(nearZ)与远Z(farZ)之间进行,从而将近点(nearPoint)=(1,1,1)与远点(farPoint)=(1,1,-1)的点对进行变换,增加(0,0,midZ),其中中Z(midZ)就是近Z与远Z之间的中间值。
如果经投影的X,Y的变化小于像素阈值,则定位阈值点。
使用来自二进制搜索的经变换点(即为X,Y,Z,W),则可计算出固定W比率=近W/远W。
然后,在透视模式的渲染中,计算出8个经变换的框点(每个为X,Y,Z,W)。
然后,通过计算X,Y,W Min和Max来确定边界框。(注意此处的W)
然后,当前W比率被计算为curW比率=minW/maxW。
如果(当前W比率>=固定W比率),则进入正交模式。
应当认识到的是,由于1/w通常被计算为透视变换的一部分,所以可能通过乘以倒数来代替除法,这是常见的浮点优化。
还应当指出的是,该方法在某种程度上不同于将针对比如为24的像素阈值的x与y的变化(同样通过二进制搜索或试凑法进行计算)相比较的经典方法。
上面所讨论的方法较优,因为其允许八叉树节点尽快进入正交模式而不管该节点相对于屏幕的取向如何。另外,旋转节点的边界框可以使阈值测试偏向40%(即sqrt(2)),从而延迟进入正交模式直到被进一步细分。
应当理解的是,该方法也同样讲得通,因为尽管投影的效应在于形成较小尺寸的边界框,但是根本原因为x/w y/w,即w的相对比率会使透视缩短x、y的值。所以,测试w更加符合逻辑并且更加精确。
衡量标准的其他指标包括:屏幕空间中立方体一个边的长度,或者屏幕空间中包围立方体的球的直径。
在流程框102处,正交缓存数据包括:节点的深度/八叉树向下的等级(由堆栈的当前长度表示)、该节点的2D边界框以及作为距2D边界框左上角的偏移的8个经变换屏幕空间点。
总之,正交模式通过对八叉树数据结构的节点进行划分以及追踪包含立方体的内容的历程来在八叉树数据结构的节点上操作。正交模式过程可以绕开3D到2D变换并且(例如)通过递归地二等分2D点集(即表示较高等级八分体的投影的“形式图案”)而得到代表子八分体的投影的相应的点集来代替缩放。
由于仅对于透视投影与正交投影之间不存在显著差异的八分体,才进入正交模式,所以正如在流程的流程框88处所测试到的那样,通过该方式进行渲染场景的观察者将感觉该场景与完全使用透视变换进行渲染的场景一样。尽管通过正交模式进行渲染的每个子部分不具有内部透视,但是在这些子部分之间存在透视。因此,尽管子部分不会在靠近后部处变小,但是从内部而言,只要考虑到子部分与观察者的关系,整个子部分就会处于合适的尺寸。
所有这些不同尺寸的子部分的组合产生具有透视效果的3D图像,该具有透视效果的3D图像与通过更数学运算密集的3D系统生成的图像在外观上具有相似性,但使用的运算却要少得多。
根据相关法令,使用或多或少特定于结构或方法特征的语言对本发明进行了描述。术语“包括(comprises)”及其变型“包括(comprising)”和“包括(comprised of)”等在全文中以包含在内的意义使用并且不排除任何附加特征。应当理解的是,本发明并不限于所示出或所描述的具体特征,因为本发明中所描述的方法包括以优选的形式实施本发明。因此,适当范围内本领域技术人员所适当理解的所附权利要求的任何形式或改进,均视为本发明的保护范围。
在整个说明书和权利要求书中,除非上下文另有需要,否则术语“基本上”或“大约”将被理解为不对该术语所限定的值的范围加以限制。

Claims (16)

1.一种计算机绘图方法,该方法用于在被至少一个处理器控制的电子显示设备上渲染和显示三维场景,所述方法包括运行所述处理器以执行以下步骤:
从数据结构中提取限定三维场景的数据;
在所述电子显示设备上根据正交投影对所述场景的满足预定条件的部分所对应的提取数据进行渲染;以及
在所述电子显示设备上根据透视投影对所述场景的其他部分所对应的提取数据进行渲染;
从而相对于仅使用所述透视投影,减少了电子处理器所完成的用于渲染所述场景的计算的数量;
其中,所述方法还包括以下步骤:
将与所述场景满足所述预定条件的部分相关的3D点从3D投影到2D以生成2D形式图案,所述2D形式图案用于限定所述场景的子部分的投影形状及比例;
递归地更新所述2D形式图案;和
基于所述2D形式图案确定所述场景的子部分的2D投影,包括参考所更新的2D形式图案确定所述场景的较低级子部分的2D投影;
所述递归地更新所述2D形式图案包括:
计算关于所述递归的前一次迭代的形式图案距边界框的最小值的偏移。
2.根据权利要求1所述的方法,包括:在考虑到部分的尺寸、所述透视投影的焦距以及所述电子显示设备的分辨率的情况下,测试所述场景的该部分是否满足所述预定条件。
3.根据权利要求1所述的方法,其中,所述递归地更新所述2D形式图案的步骤包括:对代表所述形式图案的顶点坐标的值进行比特移位。
4.根据任一前述权利要求所述的方法,其中,所述数据结构包括八叉树,并且处理所述数据结构的步骤包括遍历所述八叉树。
5.根据权利要求4所述的方法,其中,所述部分对应于与所述八叉树相关联的母八分体和子八分体。
6.根据权利要求4所述的方法,包括:确定一个序列用于相对于预定观察位置按照从前到后的顺序处理所述八叉树的节点。
7.根据权利要求5所述的方法,包括:测试八分体的边界是否与视锥体相交。
8.根据权利要求1所述的方法,包括:在写入所述电子显示设备之前进行掩模测试。
9.根据权利要求1所述的方法,包括:在写入所述电子显示设备之间进行闭塞试验。
10.一种计算机绘图系统,包括处理器,该处理器与存储有针对三维(3D)场景的数据结构的存储器设备进行通信并且与显示设备进行通信,所述处理器被配置为:
处理所述数据结构以检索限定所述场景的数据;
使用正交投影对所述场景的满足预定条件的部分进行渲染;以及
否则,在所述显示设备上使用透视投影对所述场景进行渲染;
从而相对于仅使用所述透视投影进行渲染,通过使用所述正交投影减少了所述处理器所完成的用于渲染所述场景的计算的数量,
其中,所述计算机绘图系统的所述处理器被进一步设置为:
将与所述场景满足所述预定条件的部分相关的3D点从3D投影到2D以生成2D形式图案,所述2D形式图案用于限定所述场景的子部分的投影形状及比例;
递归地更新所述2D形式图案以生成更新的2D形式图案;和
基于所述2D形式图案确定所述场景的子部分的2D投影,包括参考所更新的2D形式图案确定所述场景的较低级子部分的2D投影;
所述递归地更新所述2D形式图案包括:
计算关于所述递归的前一次迭代的形式图案距边界框的最小值的偏移。
11.根据权利要求10所述的系统,其中,所述计算机绘图系统的所述处理器测试:在考虑到部分的尺寸、所述透视投影的焦距以及所述显示设备的分辨率的情况下,所述场景的该部分是否满足所述预定条件。
12.根据权利要求10或11所述的系统,其中,所述计算机绘图系统的所述处理器进一步地:
将与所述场景满足所述预定条件的部分相关的3D点从3D投影到2D以生成2D形式图案;以及
在不依赖3D到2D投影的情况下,基于所述2D形式图案确定所述场景的子部分的投影。
13.一种计算机可读介质,包括由处理器执行的有形指令的计算机可读介质,用于实现根据权利要求1至9中任一项所述的方法。
14.一种由基于电子处理器的系统实施的计算机绘图方法,用于使用正交投影来渲染场景的部分,所述方法包括以下步骤:
将与关于所述部分的边界框相关联的3D点从3D投影到2D以产生2D形式图案,所述2D形式图案用于限定所述场景的子部分的投影形状及比例;
递归地更新所述2D形式图案以生成更新的2D形式图案,以及
基于所述2D形式图案确定所述场景的子部分的2D投影,包括参考所更新的2D形式图案确定所述场景的较低级子部分的2D投影;
所述递归地更新所述2D形式图案包括:
计算关于所述递归的前一次迭代的形式图案距边界框的最小值的偏移。
15.一种计算机可读介质,包括由处理器执行的有形指令的计算机可读介质,用于实现根据权利要求14所述的方法。
16.一种计算机绘图系统,包括处理器,该处理器与存储有针对三维(3D)场景的数据结构的存储器设备进行通信并且被配置为控制显示设备,其中,所述处理器:
处理所述数据结构以检索限定所述场景的数据;
将与关于所述场景的部分的边界框相关的3D点从3D投影到2D以产生2D形式图案,所述2D形式图案用于限定所述场景的子部分的投影形状及比例;
递归地更新所述2D形式图案以生成更新的2D形式图案,以及
基于所述2D形式图案产生所述场景的子部分的2D投影,包括参考所更新的2D形式图案确定所述场景的较低级子部分的2D投影;
所述递归地更新所述2D形式图案包括:
计算关于所述递归的前一次迭代的形式图案距边界框的最小值的偏移。
CN201280076971.3A 2012-09-21 2012-09-21 用于渲染三维场景的计算机绘图方法 Active CN104781852B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/AU2012/001130 WO2014043735A1 (en) 2012-09-21 2012-09-21 A computer graphics method for rendering three dimensional scenes

Publications (2)

Publication Number Publication Date
CN104781852A CN104781852A (zh) 2015-07-15
CN104781852B true CN104781852B (zh) 2020-09-15

Family

ID=50340437

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280076971.3A Active CN104781852B (zh) 2012-09-21 2012-09-21 用于渲染三维场景的计算机绘图方法

Country Status (7)

Country Link
US (1) US9842425B2 (zh)
EP (1) EP2898480B1 (zh)
JP (1) JP6159807B2 (zh)
CN (1) CN104781852B (zh)
AU (1) AU2012390266B2 (zh)
CA (1) CA2885283C (zh)
WO (1) WO2014043735A1 (zh)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200143586A1 (en) * 2013-02-14 2020-05-07 David Todd Kaplan Highly scalable cluster engine for hosting simulations of objects interacting within a space
US10521520B2 (en) * 2013-02-14 2019-12-31 Nocturnal Innovations LLC Highly scalable cluster engine for hosting simulations of objects interacting within a space
US10650575B2 (en) 2015-05-11 2020-05-12 Pointerra Technologies Pty Ltd Method and system for computer graphics rendering
CN105488755B (zh) * 2015-11-25 2018-10-23 网易(杭州)网络有限公司 一种在2d游戏中实现3d表现的方法及装置
CN105513118B (zh) * 2015-11-26 2018-07-10 北京像素软件科技股份有限公司 一种体素化游戏世界的渲染方法
AU2017250112B2 (en) * 2016-04-12 2020-09-17 Quidient, Llc Quotidian scene reconstruction engine
US10158834B2 (en) * 2016-08-30 2018-12-18 Hand Held Products, Inc. Corrected projection perspective distortion
GB2566279B (en) * 2017-09-06 2021-12-22 Fovo Tech Limited A method for generating and modifying images of a 3D scene
EP3467777A1 (en) * 2017-10-06 2019-04-10 Thomson Licensing A method and apparatus for encoding/decoding the colors of a point cloud representing a 3d object
CN108043027B (zh) * 2017-11-27 2020-09-11 腾讯科技(上海)有限公司 存储介质、电子装置、游戏画面的显示方法和装置
EP3503037A1 (en) * 2017-12-24 2019-06-26 Dassault Systèmes Visibility function of a three-dimensional scene
WO2019138163A1 (en) * 2018-01-15 2019-07-18 Nokia Technologies Oy A method and technical equipment for encoding and decoding volumetric video
US11145108B2 (en) * 2018-03-21 2021-10-12 Nvidia Corporation Uniform density cube map rendering for spherical projections
WO2019213450A1 (en) 2018-05-02 2019-11-07 Quidient, Llc A codec for processing scenes of almost unlimited detail
US20210304354A1 (en) * 2018-07-13 2021-09-30 Electronics And Telecommunications Research Institute Method and device for encoding/decoding scalable point cloud
CN109448088B (zh) * 2018-10-22 2023-02-21 广州视源电子科技股份有限公司 渲染立体图形线框的方法、装置、计算机设备和存储介质
CN109871823B (zh) * 2019-03-11 2021-08-31 中国电子科技集团公司第五十四研究所 一种结合旋转框和上下文信息的卫星图像舰船检测方法
CN110223589A (zh) * 2019-05-17 2019-09-10 上海蜂雀网络科技有限公司 一种基于3d绘画协议的汽车模型展示方法
CN110910505B (zh) * 2019-11-29 2023-06-16 西安建筑科技大学 一种场景模型的加速渲染方法
KR20210109265A (ko) 2020-02-27 2021-09-06 삼성전자주식회사 3차원 객체 전송 방법 및 장치
CN115131527B (zh) * 2022-05-27 2023-06-02 北京五八信息技术有限公司 相机切换方法、装置、电子设备及存储介质
CN117234451A (zh) * 2023-11-10 2023-12-15 北京睿呈时代信息科技有限公司 面向大场景渲染的场景剔除方法及其对应的装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0794516A2 (en) * 1996-03-08 1997-09-10 Canon Kabushiki Kaisha Image processing method and apparatus
CN1591175A (zh) * 2003-03-28 2005-03-09 株式会社东芝 立体显示装置
CN1620152A (zh) * 2003-09-04 2005-05-25 株式会社东芝 三维影像显示装置和方法及三维显示用影像数据生成方法
CN101784980A (zh) * 2008-06-02 2010-07-21 松下电器产业株式会社 遥控操作装置及遥控操作方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2625345A1 (fr) * 1987-12-24 1989-06-30 Thomson Cgr Procede de visualisation en trois dimensions d'objets codes numeriquement sous forme arborescente et dispositif de mise en oeuvre
GB9930850D0 (en) 1999-12-24 2000-02-16 Koninkl Philips Electronics Nv 3D environment labelling
IL136430A0 (en) * 2000-05-29 2001-06-14 Zviaguina Natalia Ray tracing method and system for determining visible parts of surfaces of three-dimensional objects and their parameters of shading accounting for light and shadow volumes
KR100561837B1 (ko) 2001-07-09 2006-03-16 삼성전자주식회사 삼차원 환경에서 이미지 기반의 랜더링의 정보를 표현하기위한 방법
CA2413056C (en) 2001-11-27 2009-02-10 Samsung Electronics Co., Ltd. Apparatus and method for depth image-based representation of 3-dimensional object
JP3758643B2 (ja) 2003-05-23 2006-03-22 株式会社三洋物産 遊技機
US7301538B2 (en) * 2003-08-18 2007-11-27 Fovia, Inc. Method and system for adaptive direct volume rendering
US20050243085A1 (en) 2004-05-03 2005-11-03 Microsoft Corporation Model 3D construction application program interface
US7289119B2 (en) * 2005-05-10 2007-10-30 Sony Computer Entertainment Inc. Statistical rendering acceleration
US8224122B2 (en) 2006-12-15 2012-07-17 Microsoft Corporation Dynamic viewing of wide angle images
US7940279B2 (en) * 2007-03-27 2011-05-10 Utah State University System and method for rendering of texel imagery
US9336624B2 (en) 2008-10-07 2016-05-10 Mitsubishi Electric Research Laboratories, Inc. Method and system for rendering 3D distance fields
KR101852811B1 (ko) 2011-01-05 2018-04-27 엘지전자 주식회사 영상표시 장치 및 그 제어방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0794516A2 (en) * 1996-03-08 1997-09-10 Canon Kabushiki Kaisha Image processing method and apparatus
CN1591175A (zh) * 2003-03-28 2005-03-09 株式会社东芝 立体显示装置
CN1620152A (zh) * 2003-09-04 2005-05-25 株式会社东芝 三维影像显示装置和方法及三维显示用影像数据生成方法
CN101784980A (zh) * 2008-06-02 2010-07-21 松下电器产业株式会社 遥控操作装置及遥控操作方法

Also Published As

Publication number Publication date
CA2885283A1 (en) 2014-03-27
EP2898480A4 (en) 2016-03-09
US20150279085A1 (en) 2015-10-01
AU2012390266B2 (en) 2019-02-21
AU2012390266A1 (en) 2015-05-07
EP2898480B1 (en) 2020-05-20
JP2015535978A (ja) 2015-12-17
EP2898480A1 (en) 2015-07-29
JP6159807B2 (ja) 2017-07-05
CA2885283C (en) 2020-05-05
CN104781852A (zh) 2015-07-15
WO2014043735A1 (en) 2014-03-27
US9842425B2 (en) 2017-12-12

Similar Documents

Publication Publication Date Title
CN104781852B (zh) 用于渲染三维场景的计算机绘图方法
Kanamori et al. GPU‐based fast ray casting for a large number of metaballs
EP2831848B1 (en) Method for estimating the opacity level in a scene and corresponding device
US10593096B2 (en) Graphics processing employing cube map texturing
Muller et al. Online sculpting and visualization of multi-dexel volumes
CN104504760B (zh) 实时更新三维图像的方法和系统
US20130027417A1 (en) Alternate Scene Representations for Optimizing Rendering of Computer Graphics
Livnat et al. Interactive point-based isosurface extraction
Bernardini et al. Directional discretized occluders for accelerated occlusion culling
Qu et al. Ray tracing height fields
US11367262B2 (en) Multi-dimensional acceleration structure
Campagnolo et al. An experimental study on volumetric visualization of black oil reservoir models
TWI617178B (zh) 用以表現出三維景象之電腦圖形方法、系統及軟體產品
Rauwendaal Hybrid computational voxelization using the graphics pipeline
JP2011514583A (ja) 階層化深さ画像を使用する接触シミュレーション方法及び装置
Iwasaki et al. Real-time rendering of point based water surfaces
Konev et al. Fast cutaway visualization of sub-terrain tubular networks
KR20200018207A (ko) 반사들을 렌더링하는 시스템들 및 방법들
Mesquita et al. Non-overlapping geometric shadow map
Schmalstieg et al. Exploiting coherence in 2 1/2 D visibility computation
Halli et al. Extrusion and revolution mapping.
Vasilovici Procedural Terrain Generation using a Level of Detail System and Stereoscopic Visualization
Yang et al. Walkthrough applications based on portal
Cunha et al. Revisiting the visibility problem with a hybrid structure paradigm
Feng et al. View-independent contour culling of 3D density maps for far-field viewing of iso-surfaces

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
EXSB Decision made by sipo to initiate substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1212079

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20200930

Address after: Guangdong city of Shenzhen province Qianhai Shenzhen Hong Kong cooperation zone before Bay Road No 1 building 201 room A (located in Shenzhen Qianhai business secretary Co.,Ltd.)

Patentee after: Shenzhen Youli Vision Technology Co.,Ltd.

Address before: Saint Lucia, Queensland, Australia

Patentee before: EUCLIDEON Pty Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240122

Address after: 518000, Room 501-8, 5th Floor, Dongfang Xintiandi Plaza, No. 1003 Shennan Avenue, Gangxia Community, Futian Street, Futian District, Shenzhen, Guangdong Province

Patentee after: Shenzhen Youli Spacetime Technology Co.,Ltd.

Country or region after: China

Address before: 518000 Room 201, building A, No. 1, Qian Wan Road, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong (Shenzhen Qianhai business secretary Co., Ltd.)

Patentee before: Shenzhen Youli Vision Technology Co.,Ltd.

Country or region before: China

TR01 Transfer of patent right