CN101593356A - 一种图形渲染方法 - Google Patents

一种图形渲染方法 Download PDF

Info

Publication number
CN101593356A
CN101593356A CNA2008101127076A CN200810112707A CN101593356A CN 101593356 A CN101593356 A CN 101593356A CN A2008101127076 A CNA2008101127076 A CN A2008101127076A CN 200810112707 A CN200810112707 A CN 200810112707A CN 101593356 A CN101593356 A CN 101593356A
Authority
CN
China
Prior art keywords
matrix
transformation matrix
space
spatial alternation
modeling
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
Application number
CNA2008101127076A
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.)
China Digital Video Beijing Ltd
Original Assignee
China Digital Video Beijing 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 China Digital Video Beijing Ltd filed Critical China Digital Video Beijing Ltd
Priority to CNA2008101127076A priority Critical patent/CN101593356A/zh
Publication of CN101593356A publication Critical patent/CN101593356A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)

Abstract

本发明实施例公开了一种图形渲染方法,包括以下步骤:获取空间变换矩阵;对所述空间变换矩阵进行操作;根据所述操作的结果进行图形渲染。空间变换矩阵具体包括:建模变换矩阵和视变换矩阵。通过本发明实施例公布的对空间变换矩阵的操作机制,不管摄像机或者观察者的位置怎样变化,渲染后输出的图像始终正对摄像机和观察者的眼睛,完成了现有技术中不能完成的渲染效果。

Description

一种图形渲染方法
技术领域
本发明涉及多媒体技术领域,特别是涉及一种图形渲染方法。
背景技术
随着计算机图形图像技术和计算机硬件技术的发展,计算机动画和图形图像处理广泛应用于军事、娱乐、广告、仿真、教育等领域。精彩的电影特技,精美的产品模型设计,身临其境的模拟训练器和逼真的游戏动画,无不体现着现代图形图像技术的强大能力。计算机硬件技术的发展,为计算机图形图像技术的发展提供了物质保障,而计算机图形图像技术的发展,对计算机硬件系统的要求越来越高,又促使计算机硬件系统不断更新发展。图形图像渲染引擎是图形图像处理系统的核心,每一个现代图形图像系统都需要与之功能相适应的引擎,提供其图形图像处理的技术基础。图形图像应用系统通过渲染引擎把模型、动画、光影、特效等所有效果计算出来并以图像形式显示,图像最终的输出质量由图形图像应用系统直接决定。
常见的渲染引擎,如OpenGL和Direct3D,使用传统的三维变换渲染三维图形,将一个图形生成图像并显示在屏幕上。如图1所示,为现有技术中图形渲染方法流程图,包括以下步骤:
步骤101,通过建模变换将物体空间中的图形放置在世界空间中。
步骤102,通过视变换将世界空间中的图形放置在眼空间中。
步骤103,通过投影变换将眼空间中的图形放置在剪裁空间中。
步骤104,通过透视除法将剪裁空间中的图形放置在标准设备空间中。
步骤105,通过视图和深度范围变换将标准设备空间中的图形放置在窗口空间中。
上述步骤中,每个从一个空间到另一个空间的变换,都是一个矩阵的操作。在工程中创建完一个图形,该图形会在物体空间中有一个物体空间坐标。如果想把该图形放置在世界空间中,就需要得到该图形的世界空间坐标。该图形的世界空间坐标是通过该图形的物体空间坐标乘以一个转换矩阵得到的,这个矩阵是物体空间坐标经过旋转、缩放和平移的体现,称为建模变换矩阵。目前,对图形在空间中的操控是在这一步完成的,也就是改变建模变换的矩阵使图形处于不同的空间位置。
在通常情况下,摄像机或观众的眼睛是沿着世界空间坐标的z方向来观察图形的,因此,被观察的图形正对摄像机或观众的眼睛。然而,一旦改变摄像机的位置或者观察者的位置,即摄像机或观众的眼睛不再沿着世界空间坐标的z方向来观察图形,被观察的图形将不再正对摄像机或观众的眼睛。在某些应用场景下,需要图形始终正对着摄像机或观众的眼睛,显然,现有技术并不能满足上述要求。
发明内容
本发明实施例提供一种图形渲染方法,解决了图形渲染中被渲染的图形不正对摄像机或观众的眼睛的问题。
为达到上述目的,本发明实施例一方面提出一种图形渲染方法,包括以下步骤:
获取空间变换矩阵;
对所述空间变换矩阵进行操作;
根据所述操作的结果进行图形渲染。
其中,空间变换矩阵具体包括:建模变换矩阵和视变换矩阵。
所述对空间变换矩阵进行操作,具体包括:
分别从所述建模变换矩阵和所述视变换矩阵中分解出所述建模变换矩阵的旋转矩阵和所述视变换矩阵的旋转矩阵;
计算所述建模变换矩阵的旋转矩阵和所述视变换矩阵的旋转矩阵的乘积;
使用所述乘积作为新的建模变换矩阵的旋转矩阵。
本发明实施例的技术方案具有以下优点,因为采用了对空间变换矩阵的操作机制,从而,不管摄像机或者观察者的位置怎样变化,渲染后输出的图像始终正对摄像机和观察者的眼睛,完成了现有技术中不能完成的渲染效果。
附图说明
图1为现有技术中图形渲染方法流程图;
图2为本发明实施例中图形渲染方法流程图;
图3为本发明实施中图形渲染具体实现方式流程图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述:如图2所示,为本发明实施例中图形渲染方法流程图,包括以下步骤:
步骤201,获取空间变换矩阵。
在图形流水线中,图形从一个空间到另一个空间变换,都是一个空间变换矩阵操作的结果。空间变换矩阵包括:建模变换矩阵、视变换矩阵和投影变换矩阵,建模变换矩阵实现了图形从物体空间到世界空间的变换,视变换矩阵实现了图形从世界空间到眼空间的变换,投影变换矩阵实现了图形从眼空间到剪裁空间的变换。
步骤202,对空间变换矩阵进行操作。
对空间变换矩阵的操作包括:对空间变换矩阵的分解、运算和赋值。这些操作通常在进行组合之后,才能达到操作的目的。
步骤203,根据操作的结果进行图形渲染。
上述步骤的操作,可得到新的空间变换矩阵。通过这些新的空间变换矩阵,可完成对图形的渲染。在此之前,屏幕显示还是基于原有的空间变换矩阵的效果。
如图3所示,为本发明实施中图形渲染具体实现方式流程图,包括以下步骤:
步骤301,通过建模变换矩阵将物体空间中的图形放置在世界空间中。
将图形在物体空间中的坐标乘以建模变换矩阵,即得到图形在世界空间中的坐标,图形也被放置在世界空间中。
步骤302,通过视变换矩阵将世界空间中的图形放置在眼空间中。
将图形在世界空间中的坐标乘以视变换矩阵,即得到图形在眼空间中的坐标,图形也被放置在眼空间中。
步骤303,通过投影变换矩阵将眼空间中的图形放置在剪裁空间中。
将图形在眼空间中的坐标乘以投影变换矩阵,即得到图形在剪裁空间中的坐标,图形也被放置在剪裁空间中。
步骤304,通过透视除法将剪裁空间中的图形放置在标准设备空间中。
剪裁空间的坐标是齐次形式<x,y,z,w>的,使用透视除法,即用w除x、y、z,便可得到图形在标准设备空间中的坐标,图形也被放置在标准设备空间中。
步骤305,通过视图和深度范围变换将标准设备空间中的图形放置在窗口空间中。
取图形的标准设备坐标,进行视图和深度范围变换后,得到图形早窗口空间中的坐标,图形被放置在窗口空间中,并以图像的形式显示输出。然而,输出的图像是否正对摄像机或观察者的眼睛,依赖于摄像机或观察者的位置,即视变换矩阵。一旦视变换矩阵分解后的旋转矩阵不为单位阵,输出的图像将不再正对摄像机或观察者的眼睛。
步骤306,从图形流水线中获取空间变换矩阵。
获取的空间变换矩阵包括:建模变换矩阵、视变换矩阵和投影变换矩阵,建模变换矩阵记为matModel,视变换矩阵记为matView,投影变换矩阵记为matProj。
步骤307,分别从建模变换矩阵和视变换矩阵中分解出建模变换矩阵的旋转矩阵和视变换矩阵的旋转矩阵。
任何矩阵均可被分解为旋转,缩放,平移三个矩阵,在获取matModel和matView之后,可从上述两个矩阵中分解出各自的旋转矩阵,分别记为matModelRot和matViewRot。
步骤308,计算建模变换矩阵的旋转矩阵和视变换矩阵的旋转矩阵的乘积。
步骤309,使用上述乘积作为新的建模变换矩阵的旋转矩阵。
matModelRot和matViewRot相乘后,得到一个新的值,该值可作为新的建模变换矩阵的旋转矩阵,进行空间变换。
步骤310,通过新的建模变换矩阵将物体空间中的图形放置在世界空间中。
将图形在物体空间中的坐标乘以新的建模变换矩阵,即改变了建模变换矩阵,图形在世界空间中的坐标也随之改变。
步骤311,通过视变换矩阵将世界空间中的图形放置在眼空间中。
步骤312,通过投影变换矩阵将眼空间中的图形放置在剪裁空间中。
步骤313,通过透视除法将剪裁空间中的图形放置在标准设备空间中。
步骤314,通过视图和深度范围变换将标准设备空间中的图形放置在窗口空间中。
随着建模变换矩阵的改变,图形在世界空间、眼空间、剪裁空间、标准设备空间和窗口空间的一系列坐标都随之改变。无论视变换矩阵作何改变,经过上述空间变换后,输出的图像将始终正对摄像机或观察者的眼睛。
本发明实施例的技术方案具有以下优点,因为采用了对空间变换矩阵的操作机制,不管摄像机或者观察者的位置怎样变化,渲染后的图形始终正对摄像机和观察者的眼睛显示,完成了现有技术中不能完成的渲染效果。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台终端设备(可以是手机,个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。

Claims (3)

1、一种图形渲染方法,其特征在于,包括以下步骤:
获取空间变换矩阵;
对所述空间变换矩阵进行操作;
根据所述操作的结果进行图形渲染。
2、如权利要求1所述图形渲染方法,其特征在于,所述空间变换矩阵,具体包括:
建模变换矩阵和视变换矩阵。
3、如权利要求2所述图形渲染方法,其特征在于,所述对空间变换矩阵进行操作,具体包括:
分别从所述建模变换矩阵和所述视变换矩阵中分解出所述建模变换矩阵的旋转矩阵和所述视变换矩阵的旋转矩阵;
计算所述建模变换矩阵的旋转矩阵和所述视变换矩阵的旋转矩阵的乘积;
使用所述乘积作为新的建模变换矩阵的旋转矩阵。
CNA2008101127076A 2008-05-26 2008-05-26 一种图形渲染方法 Pending CN101593356A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNA2008101127076A CN101593356A (zh) 2008-05-26 2008-05-26 一种图形渲染方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNA2008101127076A CN101593356A (zh) 2008-05-26 2008-05-26 一种图形渲染方法

Publications (1)

Publication Number Publication Date
CN101593356A true CN101593356A (zh) 2009-12-02

Family

ID=41407997

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2008101127076A Pending CN101593356A (zh) 2008-05-26 2008-05-26 一种图形渲染方法

Country Status (1)

Country Link
CN (1) CN101593356A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102646284A (zh) * 2012-04-11 2012-08-22 Tcl集团股份有限公司 一种3d渲染系统中透明物体的渲染顺序获取方法及系统
CN102722861A (zh) * 2011-05-06 2012-10-10 新奥特(北京)视频技术有限公司 一种基于cpu的图形渲染引擎及实现方法
CN102739998A (zh) * 2011-05-11 2012-10-17 新奥特(北京)视频技术有限公司 一种三维空间中空间变换的实现方法
CN102831631A (zh) * 2012-08-23 2012-12-19 上海创图网络科技发展有限公司 一种大规模三维动画的渲染方法及渲染装置

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
刘皓。: "3D图形渲染引擎的设计与实现", 《中国优秀硕士论文全文数据库信息科技辑》 *
施连军。: "三维空间视域变换实现方法的研究", 《电脑开发与应用》 *
胡丹桂: "基于游戏引擎的3D图形系统的研究", 《中国优秀博硕士学位论文全文数据库(硕士)信息科技辑》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102722861A (zh) * 2011-05-06 2012-10-10 新奥特(北京)视频技术有限公司 一种基于cpu的图形渲染引擎及实现方法
CN102739998A (zh) * 2011-05-11 2012-10-17 新奥特(北京)视频技术有限公司 一种三维空间中空间变换的实现方法
CN102739998B (zh) * 2011-05-11 2017-03-01 新奥特(北京)视频技术有限公司 一种三维空间中空间变换的实现方法
CN102646284A (zh) * 2012-04-11 2012-08-22 Tcl集团股份有限公司 一种3d渲染系统中透明物体的渲染顺序获取方法及系统
CN102831631A (zh) * 2012-08-23 2012-12-19 上海创图网络科技发展有限公司 一种大规模三维动画的渲染方法及渲染装置
CN102831631B (zh) * 2012-08-23 2015-03-11 上海创图网络科技发展有限公司 一种大规模三维动画的渲染方法及渲染装置

Similar Documents

Publication Publication Date Title
US11494993B2 (en) System and method to integrate content in real time into a dynamic real-time 3-dimensional scene
CN112037311B (zh) 一种动画生成的方法、动画播放的方法以及相关装置
US20170154468A1 (en) Method and electronic apparatus for constructing virtual reality scene model
CN108108140B (zh) 一种多屏协同显示方法及存储装置及支持3d显示的设备
US20130321566A1 (en) Audio source positioning using a camera
US10304234B2 (en) Virtual environment rendering
CN112967367B (zh) 水波特效生成方法及装置、存储介质、计算机设备
CN105679169A (zh) 一种铁路电子沙盘系统
CN105389090A (zh) 游戏交互界面显示的方法及装置、移动终端和电脑终端
US20200228911A1 (en) Audio spatialization
CN106471572A (zh) 一种同步语音及虚拟动作的方法、系统及机器人
KR20090003079A (ko) 가상 페인팅 훈련 시스템 및 방법
CN101593356A (zh) 一种图形渲染方法
JP2023504609A (ja) ハイブリッドストリーミング
CN106875494A (zh) 基于影像和定位的模型vr操作方法
JP2005319029A (ja) プログラム、情報記憶媒体および画像生成システム
CN112206519B (zh) 实现游戏场景环境变化的方法、装置、存储介质及计算机设备
CN101593362B (zh) 一种图形的路径构建方法
US20230401789A1 (en) Methods and systems for unified rendering of light and sound content for a simulated 3d environment
CN115830210A (zh) 虚拟对象的渲染方法、装置、电子设备及存储介质
CN109529349B (zh) 图像绘制方法、装置、计算设备及存储介质
CN115035231A (zh) 阴影烘焙方法、装置、电子设备和存储介质
CN111476873A (zh) 一种基于增强现实的手机虚拟涂鸦方法
Shi et al. Design and Implementation of a UE4 Based Virtual Home Improvement Interactive Simulation Application
CN107038737B (zh) 立体棋牌绘制方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20091202