参考:http://blog.csdn.net/kandyer/article/details/12449973


坐标系

世界坐标系:绝对坐标

物体坐标系:以物体自身为原点的坐标系

摄像机坐标系:以摄像机自身为原点,特殊的物体坐标系

惯性坐标系:原点与物体坐标系相同,轴与世界坐标系平行

变换

1 视图(观察)变换(Viewing Transformations):确定照相机的位置的过程

2 模型变换(Modeling Transformations):确定物体位置的过程

3 投影变换(Projection Transformations):确定照相机放大倍数的过程

4 视口变换(Viewport Transformations):确定照片大小的过程(拉伸,缩放)

几何变换:视图变换和模型变换本质相同,称为几何变换

裁剪变换:分为视景体裁剪和附加平面裁剪,视景体裁剪已经包含在投影变换里,平面裁剪是附件的一个或多个平面裁剪




三维数据渲染流程


顶点数据(x,y,z,w)
->模型观察矩阵转换->摄像机坐标
->投影矩阵->裁剪后坐标
->视口变换->屏幕坐标

D3D的渲染管线(Rendering Pipeline):局部坐标变换 -> 世界坐标变换 ->观察坐标变换->背面消除->光照->裁剪->投影->视口计算->光栅化。

OPENGL_变换与坐标系的更多相关文章

  1. CSS3 03. 3D变换、坐标系、透视perspective、transformZ、transform-style添加3D效果、backface-visibility元素背面可见、动画animation、@keyfarmes、多列布局

    1.左手坐标系 伸出左手,让拇指和食指成“L”形,大拇指向右,食指向上,中指指向前方.这样我们就建立了一个左手坐标系,拇指.食指和中指分别代表X.Y.Z轴的正方向.如下图 CSS中的3D坐标系 CSS ...

  2. [LearnOpenGL]照相机的变换、坐标系、摄像机

    前言 跟着LearnOpenGL上学着做项目,的确对于知识掌握得更清晰一些了. 第一个项目 第一个项目,是关于简单的熟悉矩阵变换的,创建了10个立方体,代码如下. // 视图矩阵,看作是一个照相机 g ...

  3. 理解SVG坐标系统和变换: transform属性

    SVG元素可以通过缩放,移动,倾斜和旋转来变换-类似HTML元素使用CSS transform来变换.然而,当涉及到坐标系时这些变换所产生的影响必然有一定差别.在这篇文章中我们讨论SVG的transf ...

  4. 【转】QPainter中坐标系变换问题

    转自:http://blog.sina.com.cn/s/blog_67cf08270100ww0p.html 一.坐标系简介. Qt中每一个窗口都有一个坐标系,默认的,窗口左上角为坐标原点,然后水平 ...

  5. 5. svg学习笔记-坐标系变换

    之前我们编写图形元素的时候,编写好了位置大小就是固定的,通过坐标系变换,可以移动缩放,旋转图形,但必须声明的是,进行变换时是图形相对于坐标系的变化,就是图形是不发生变化的,而是坐标系发生了变化,比如缩 ...

  6. OpenGL ES 2.0 变换

    基本变换都是通过将表示点坐标的向量与特定的变换矩阵相乘完成的. 进行基于矩阵的变换时,三位空间中点的位置需要表示成齐次坐标形式. 齐次坐标形式:在X.Y.Z3个坐标值后面增加第四个量W,未变换时W值一 ...

  7. 3D游戏与计算机图形学中的数学方法-变换

    1变换 在3D游戏的整个开发过程中,通常需要以某种方式对一系列的向量进行变换.通常用到的变换包括平移,缩放和旋转. 1.1通用变换 通常可将n x n可逆矩阵M看成是一个从坐标系到另一个坐标系的变换矩 ...

  8. QPainter的坐标系系统的转换

    声明:本文原创于yafeilinux的百度博客,http://hi.baidu.com/yafeilinux 转载请注明出处. 我看了这篇文章很好很容易理解.如果看了Qt助手之后更加的形象. 前面一节 ...

  9. Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第三章:变换

    原文:Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第三章:变换 学习目标 理解如何用矩阵表示线性变换和仿射变换: 学习在 ...

随机推荐

  1. EL表达式 介绍

    EL表达式      1.EL简介 1)语法结构        ${expression} 2)[]与.运算符      EL 提供.和[]两种运算符来存取数据.      当要存取的属性名称中包含一 ...

  2. Non-parseable POM C:\Users\admin\.m2\repository\org\springframework问题解决方案

    现象: [INFO] Scanning for projects... [ERROR] [ERROR] Some problems were encountered while processing ...

  3. 诡异的json包含bom头

    今日项目碰到 需要调用php的一个接口  结果一直报返回的json字符串转对象  bom头报错 Exception in thread "main" com.fasterxml.j ...

  4. cookie VS sessionstorge VS localstorge

    虽然cookie , localstorge , sessionstorge三者都有存储的功能,但是还是有区别, git上地址:https://github.com/lily1010/cookie-s ...

  5. 【Selenium】IE浏览器启动问题

    DesiredCapabilities ieCapabilities = DesiredCapabilities.internetExplorer();ieCapabilities.setCapabi ...

  6. hdu 2188 悼念512汶川大地震遇难同胞——选拔志愿者(Bash Game)

    题意:从0开始捐款,每次不超过m元,首先达到n元的获胜 思路:等同于从n开始,每次取不超过m,首先达到0的获胜.(Bash Game) #include<iostream> #includ ...

  7. PHP自定义网站根目录

    1.打开httpd.conf配置文件(xampp下apache文件夹中的conf里) Ctrl + F 查找documentroot 找到结果 改好后保存,并重启apache

  8. [APIO 2014] 序列分割

    [题目链接] https://www.lydsy.com/JudgeOnline/problem.php?id=3675 [算法] 首先 , 我们发现将一段序列切成若干段所获得的收益与顺序无关 于是我 ...

  9. tyvj1940创世纪——贪心(基环树)

    题目:http://www.joyoi.cn/problem/tyvj-1940 基环树的样子,看了书上的讲解,准备写树上DP,然后挂了: #include<iostream> #incl ...

  10. bootStrap效果图

    http://www.ziqiangxuetang.com/bootstrap/bootstrap-tutorial.html