0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

光栅化的基础思想与三维场景的基本流程

Dbwd_Imgtec 来源:未知 作者:李倩 2018-03-19 09:27 次阅读

数学上的规定:

由于习惯的不同,每个人对同一个事物的标准也不同。

应事先规定好整个项目的一些“习惯”,并坚决贯彻它们,上下统一。

世界坐标系:

场景中所有物体处于世界坐标系下,且所有的坐标系均为左手坐标系,左手坐标系三个轴的指向如图:

以屏幕为基准,该坐标系X轴指向右,Y轴指向上,Z轴指向屏幕里面。

以此坐标系我们可以创建一个世界空间。当然并没有真正创建出来,只是一个约定,便于日后的使用。就像地球的经纬度一样,有了这个我们就能描述什么东西在什么地方了。

物体坐标系:

而世界中有很多物体,比如游戏中的模型,玩家等等。

该世界里的每个物体都含有三个数据:

1)该物体中心处于世界的位置(x,y,z)

2)该物体旋转的角度(Pitch,Yaw,Roll)。分别对应绕x y z轴旋转的角度,并规定从各个轴的负方向看过去的顺时针方向为正。比如(0,0,90)代表该物体不沿x y轴旋转,只沿z轴旋转90度,且旋转方向为顺时针。

3)构成该物体的所有点的相对于物体中心的位置(xi, yi, zi) (i 为构成物体的各个点,比如正方体的 8 个顶点)

光栅化的基础思想

(假设世界坐标系下只有一个物体,简化描述):

1)将该物体的所有点根据该物体在世界的位置及朝向进行缩放、旋转和平移,这一步将把物体的所有点的坐标从物体坐标系转换到世界坐标系。

比如某物体只有一个点,该点处于相对物体中心的 (1,0,0) 处,而该物体中心处于世界的 (0,1,0) 处,且没有经过旋转。那么该点经过缩放、旋转和平移的坐标转换后,可以得到该点在世界坐标系下的位置 (1,1,0) 。

2)将世界中的观察者(人、玩家、摄像机等等)简化成一个点,就像一个摄像机,该摄像机便是观察的视线发出的地方。同时摄像机也有如物体一样的位置信息 (x,y,z) 及旋转角度信息 (pitch, yaw, roll)。通过这两组数据我们可以求出摄像机在世界坐标系下的位置以及视线的朝向。

但将要进行的动作恰恰相反,我们将世界的所有点(经过第一步后这些点的坐标系已经从他们的物体坐标系转换到了世界坐标系)进行上述变换的逆变换,可以得到以摄像机为中心的所有点的坐标。这一步之后的世界空间改叫观察空间。

3)将观察空间转至齐次剪裁空间。在实际生活中摄像机(或者人类)看东西的范围是有限的。但是目前为止所有的点不论摄像机看不看得到,都经过了变换。所以还要将观察空间中的所有点转换到一个叫做齐次剪裁空间的空间。这个空间有一个长宽高均为2的人为划定的范围,且该立方体形的范围的中心处于原点(0,0,0)。

也就是说,这个范围上下前后左右的范围是 -1 到 1 。经过一个特殊的矩阵乘法变换后,所有处于该 2x2x2 立方体形范围内的所有点,都将是看得到的,最终会被渲染出来的。所有不在该 2x2x2 大小的范围内的点,都处于视线之外,最后都将不会渲染出来。盗张图:

左边是观察空间,原点处是我们的摄像机(这个坐标系不是我们使用的左手坐标系,这是右手坐标系,他的 z 轴朝向屏幕外)。右边是第三步转换后形成的齐次剪裁空间。

目前已经把所有点都转换到了这个齐次剪裁空间,并且剪裁掉了一切不在该立方体包围内的点。

这时候我们已经可以把各个点的x、y坐标拿来,经过插值匹配到显示器的分辨率后(即将每个点的x y坐标的数值从[-1,1]“拉伸”至譬如[0,1920]和[0,1080]),直接显示出来了。但是显示的结果会比较奇怪,远近不同的物体大小居然一样。该投影过程叫做正交投影,而日常生活中我们所看到的近大远小的世界是透视投影的结果。

怎么进行透视投影?大致思路是将每个点的在观察空间下的z坐标拿来,除以该点在齐次剪裁空间下的x和y的值(x = x/z, y = y/z)。显示出来便是透视投影后的图像。

简短总结:

要想将构成三维世界的点转换到显示器这个二维平面上来,需要对每个点进行如下操作

1)物体空间转换至世界空间 (通过数个矩阵乘法)

2)世界空间转换至观察空间 (需求出摄像机变换的逆矩阵)

3)观察空间转换至齐次剪裁空间 (通过乘上特殊的变换矩阵)

4)进行透视除法 (除以特定 z 值)

但是以上变换只是得到了点最终的位置信息。要想显示在屏幕上,还需要填充点和线组成的面,甚至是赋上自定义的贴图。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 光栅
    +关注

    关注

    0

    文章

    237

    浏览量

    27179
  • 三维
    +关注

    关注

    1

    文章

    467

    浏览量

    28778

原文标题:光栅化三维场景的基本流程

文章出处:【微信号:Imgtec,微信公众号:Imagination Tech】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    三维动画制作过程之间的联系

    汹涌澎湃的气概,是古代三维动画的另一个审美特点。传统动画受到透视变化的困扰,尽量防止宏大的局面,因为,这种场面,在镜头转换的场景转换中,透视变更是很难处置的。计算机为我们带来的大场景是惊人的,后果也是
    发表于 11-15 14:28

    三维快速建模技术与三维扫描建模的应用

    相关处理,构建其三维模型和对模型进行纹路映射,最终完成物体的三维模型构建。该三维扫描建模流程方法对复杂物件的三维建模可取得较好的效果。 同时
    发表于 08-07 11:14

    广西扫描服务三维检测三维扫描仪

    、动态跟踪软件模块等,功能强大。中科院广州电子总部设在华南地区,供应广西三维扫描仪,专业稳定的技术团队可提供广西扫描服务、广西三维检测。传统的手工测量已经不能适应当下快速发展的工业进程,无法满足复杂曲面
    发表于 08-29 14:42

    请问DLP4500投影光栅用作三维轮廓测量具体的操作流程是什么?

    新手刚买了一台DLP4500,想投影光栅,用作三维轮廓测量,想问一下具体的操作流程是什么?需要注意什么?
    发表于 06-11 21:59

    三维设计应用案例

    CAD是目前工业制造产品设计的重要软件之一,广泛应用于机械、建筑等领域。而常用的CAD软件,也就是所谓的三维制图软件,较二的图纸和二的绘图软件,三维CAD软件能够更加直观、准确地反
    发表于 07-03 07:06

    结合三维可视的智慧电厂方案设计

    、可视、智能等特点,将最大限度的实现电厂的安全、经济、高效、环保运行。云酷科技有着多年电力企业三维仿真项目经验,并对电力生产、电力配套企业的三维可视
    发表于 06-28 17:45

    Handyscan三维扫描仪对户外大型灯箱三维扫描解决方案

    的建模设计,最终图纸就可用于后期生产。因此通过前期三维扫描,加快了客户该灯箱产品外观设计及缺陷修复的周期,大大提高了工作效率。(工作流程示意图)(建模后示意图)利用我们中科院广州电子技术有限公司销售的这款
    发表于 07-15 10:52

    Handyscan汽车三维扫描服务尺寸检测的应用

    智能检测软件平台组成的连杆半自动检测方案,能够非常快速的对连杆尺寸及相关形位公差进行全面检测,有效避免人为测量误差。帮助客户大幅提升现有检测效率。1、手持式激光三维扫描仪2、三维扫描过程:工件贴好定位
    发表于 08-04 16:07

    三维可视运维系统将成为未来趋势

    界面更加符合人性操作流程,数据多个属性或者变量视图更加直观。数据信息展示更加直观:大数据在三维可视运维系统中,是可以通过应用一些简短的图形体现那些复杂的信息,甚至单个图形就可以做到
    发表于 09-03 17:55

    SMARTSCAN三维扫描仪电子产品配件三维扫描服务

    扫描外观直接将待测的工件放置于smartscan saomiao3d,cn三维扫描仪自带的托盘上,即可进行扫描。而该款SMARTSCAN具有两轴的自动扫描设计,无需手动干预,可从多的角度自动对复杂结构
    发表于 09-17 16:16

    三维可视技术在生物质锅炉防磨防爆管理中的应用

    当前生物质电厂锅炉防磨防爆管理以传统管理方式为主,严重依赖一线管理人员的个人经验,缺少信息的支撑。针对生物质锅炉设备特性以及泄漏因素,以三维可视技术以及大数据分析技术的应用为突破口,打破传统
    发表于 09-17 16:45

    三维可视的应用和优势

    ,为此三维可视运维系统登场了。  三维可视的应用  宏观场景可视:在特定的环境中对随着时间
    发表于 12-02 11:52

    TAITherm三维热仿真分析工具的特点和耦合流程

    TAITherm三维热仿真分析工具的特点COTHERM 自动控制耦合流程
    发表于 12-15 07:49

    广州三维动画制作流程(一)

    广州三维动画制作流程(一)三维动画制作从简单的几何模型,到复杂的人物模型;三维动画制作从静态、单个的模型展示,到动态、复杂的场景。随着
    发表于 12-30 10:06

    安徽三维动画制作和二动画有哪些区别呢?(

    动画制作制作和三维动画制作除了按照在制作过程中摄像机或者虚拟摄像机是否可以任意进行旋转的区别外,主流的二动画制作(不包括平面材料动画制作)和三维动画制作(不包括立体材料动画制作)
    发表于 01-25 10:34