摘要: 这玩意反反复复弄了一晚上,这里详细叙述下如何安装,肯定会对大家有所帮助。首先默认大家都装了Python,这个从官网下基本不会有任何难度。 (1)Setuptools的安装 为啥先说这个,后面所有whl文件都要用这个安装。基本上没有几个教程先介绍这个的,这里说全一点,方便小白使用。我们装的是S... 阅读全文
posted @ 2015-11-06 01:47 caster99 阅读(25117) 评论(3) 推荐(1) 编辑
摘要: 前面两节内容已经说完了所有的三种变换。也就是说我们现在程序里面既不需要glLookAt(),也不需要gluPerspective(),这些矩阵我们都可以自己写。然后,再用glMultMatrix()来调用这些矩阵,注意一点就是OpenGL是左乘,前面给出的矩阵都是右乘矩阵,所以调用的时候需要转置... 阅读全文
posted @ 2015-09-07 11:16 caster99 阅读(1201) 评论(0) 推荐(1) 编辑
摘要: 下面介绍投影变换矩阵。这个相比较上一遍的就比较难了。主要分为透视投影矩阵和正交投影矩阵,本文主要介绍透视投影矩阵,正交比较简单,就给出矩阵形式。 (1)透视投影变换矩阵 我们先来说一下透视投影需要哪些参数。如图1所示,深色部分表示最终显示的区域。照相机的z轴是穿过视锥体正中心的,显示区域离相... 阅读全文
posted @ 2015-09-05 23:41 caster99 阅读(3580) 评论(0) 推荐(2) 编辑
摘要: 本文一些用于均参考《OpenGL编程指南(第8版)》,有兴趣的同学可以结合一起看。这篇算是整合补充。 OpenGL采用的是相机模型,就是把视图变换操作类比为使用照相机拍摄照片的过程,具体步骤如下(这里和红宝书有一些改变):将准备拍摄的对象移动到场景中指定位置。(模型变换,Model Trans... 阅读全文
posted @ 2015-09-05 16:02 caster99 阅读(8304) 评论(2) 推荐(4) 编辑
摘要: 一般来说,我们解决向量旋转问题一般要么是用旋转矩阵,要么是用四元数。但很早以前我从网上找了一种比较另类的函数,当时也没有深究。最近又把这个函数拿出看看,仔细一琢磨,发现真的很另类。这里分享一下,就当是扩展一下思维。这个旋转方法据说叫Rodrigues旋转公式。 这个方法的公式是这样的,P'=P... 阅读全文
posted @ 2015-08-29 21:39 caster99 阅读(4017) 评论(3) 推荐(1) 编辑
摘要: 由于图形学比较复杂,经常会遇到各种各样的小问题,这里做一个汇总,方便以后查找。 1、坐标系 一般来说,坐标系分为左手坐标系和右手坐标系。如图1所示,左图为右手坐标系,右图为左手坐标系。两个坐标系通过旋转、平移、缩放这几个操作是没有办法相互转化的。所以在处理顶点等数据的时候,要特别注意这些数据... 阅读全文
posted @ 2015-08-26 20:49 caster99 阅读(2072) 评论(0) 推荐(2) 编辑
摘要: OpenGL红宝书第八版从shader开始讲起,其实渲染对大多数人来说都是充满吸引力的,但是程序写起来确实比较麻烦,书上面第一示例程序零零散散也弄了好几天。这里写个博客汇总一下,我觉得对所有初学者都有帮助。本文不介绍程序的具体原理和内容,仅说明如何将程序调试成功。 (一)环境配置问题 fre... 阅读全文
posted @ 2015-08-23 14:54 caster99 阅读(4825) 评论(4) 推荐(5) 编辑
摘要: 我们今天来介绍一下B样条曲线。相比较Beizer曲线来说,B样条有着两个优点:(1)k次B样条曲线具有良好的局部性,它只与k+1个控制点有关;(2)B样条曲线拼接较为简单。不过B样条曲线的公式比较难懂,网上介绍原理的也着实不多,这里详细分享一下。图1 我们先来看看什么是B样条曲线,如图1,我们... 阅读全文
posted @ 2015-08-21 15:57 caster99 阅读(17542) 评论(0) 推荐(2) 编辑
摘要: 今天我们来介绍三次Bezier曲线,这曲线网上资料非常多,我这里只是简单介绍下原理。 在二维空间中(三维也类似),给定n+1个点P0、P1、... 、Pn。参数t的n次的Bezier曲线是:图1 我们根据上面式子可以推出一次、二次、三次贝塞尔曲线,下面是一次贝塞尔曲线:图2 下面是二次贝塞... 阅读全文
posted @ 2015-08-19 22:37 caster99 阅读(4618) 评论(1) 推荐(3) 编辑
摘要: 网上这类曲线绘制的文章非常多,但是大多都是代码一贴就完事了,甚至连参数怎么调也没说清楚。我翻阅了不少资料,这里做个汇总,主要也就介绍一下几类简单的曲线绘制,如Hermite曲线、Bezier曲线等。今天先说说Hermite曲线,基本上最常见的就是两点确定的三次Hermite曲线了。 按照惯例,... 阅读全文
posted @ 2015-08-19 00:31 caster99 阅读(7387) 评论(3) 推荐(1) 编辑