|
Generated by UTF-8 version of diff2html.pl © Yves Bailly, MandrakeSoft S.A. 2001, Ryohei Morita 2007 diff2html.pl is licensed under the GNU GPL. |
../07-03/07-03-Projection.c | 09-01-Projection.c | |||
---|---|---|---|---|
33 lines 1210 bytes Last modified : Mon Nov 5 13:44:16 2012 |
49 lines 1882 bytes Last modified : Mon Nov 19 04:11:44 2012 |
|||
1 | // Keisanki Joron 2 (Introduction to Computing II) | 1 | // Keisanki Joron 2 (Introduction to Computing II) | |
2 | // Dept. of Engineering Systems, University of Tsukuba | 2 | // Dept. of Engineering Systems, University of Tsukuba | |
3 | // [UTF-8 / Unix] | 3 | // [UTF-8 / Unix] | |
4 | // 計算機序論2・実習 (筑波大学工学システム学類) | 4 | // 計算機序論2・実習 (筑波大学工学システム学類) | |
5 | 5 | |||
6 | // 2012/11/05a kameda[at]iit.tsukuba.ac.jp | 6 | // 2012/11/19a kameda[at]iit.tsukuba.ac.jp | |
7 | // 07.03. ファイル分割に伴う修正 | 7 | // 09.01. 透視投影の導入(暫定) | |
8 | 8 | |||
9 | #include "ic2-CommonHeaders.h" | 9 | #include "ic2-CommonHeaders.h" | |
10 | 10 | |||
11 | 11 | |||
12 | // *********************************************************************** | 12 | // *********************************************************************** | |
13 | // Projection ************************************************************ | 13 | // Projection ************************************************************ | |
14 | 14 | |||
15 | // +++-------------------------------------------------- | 15 | // +++-------------------------------------------------- | |
16 | // カメラの投影行列を設定 | 16 | // カメラの投影行列を設定 | |
17 | // +++-------------------------------------------------- | 17 | // +++-------------------------------------------------- | |
18 | 18 | |||
19 | // +---------------------------------------------------- | 19 | // +---------------------------------------------------- | |
20 | // 直交投影 | 20 | // 直交投影 | |
21 | // +---------------------------------------------------- | 21 | // +---------------------------------------------------- | |
22 | void ic2_SetUpCamera_Ortho (void) { | 22 | void ic2_SetUpCamera_Ortho (void) { | |
23 | // OpenGLのPROJECTION行列スタックにアクセス | 23 | // OpenGLのPROJECTION行列スタックにアクセス | |
24 | glMatrixMode(GL_PROJECTION); | 24 | glMatrixMode(GL_PROJECTION); | |
25 | 25 | |||
26 | // PROJECTION行列スタックトップを単位行列で初期化 | 26 | // PROJECTION行列スタックトップを単位行列で初期化 | |
27 | glLoadIdentity(); | 27 | glLoadIdentity(); | |
28 | 28 | |||
29 | // 直交投影行列を生成するサポート関数 glOrtho を呼び出す | 29 | // 直交投影行列を生成するサポート関数 glOrtho を呼び出す | |
30 | // glOrtho(左端, 右端, 下端, 上端, 近接側クリッピング面, 遠方側クリッピング面) | 30 | // glOrtho(左端, 右端, 下端, 上端, 近接側クリッピング面, 遠方側クリッピング面) | |
31 | glOrtho(-1.0, 1.0, -1.0, 1.0, -1.0, 1.0); // | 31 | glOrtho(-1.0, 1.0, -1.0, 1.0, -1.0, 1.0); // | |
32 | } | 32 | } | |
33 | ||||
34 | // +---------------------------------------------------- | |||
35 | // 透視投影 | |||
36 | // +---------------------------------------------------- | |||
37 | void ic2_SetUpCamera_Perspective (void) { | |||
38 | // OpenGLのPROJECTION行列スタックにアクセス | |||
39 | glMatrixMode(GL_PROJECTION); | |||
40 | ||||
41 | // PROJECTION行列スタックトップを単位行列で初期化 | |||
42 | glLoadIdentity(); // 毎フレーム再設定するのでPROJECTION行列スタックトップの初期化必要 | |||
43 | ||||
44 | // 透視投影行列を生成するサポート関数 gluPerspective を呼び出す | |||
45 | // gluPerspective(垂直画角[deg], アスペクト比, 近距離限界, 遠距離限界) | |||
46 | gluPerspective(35.0, 1.0, 2.0, 4.0); | |||
47 | } | |||
48 | ||||
33 | 49 |