计算机图形学入门Gossip学习笔记

来源:互联网 发布:理财风险数据 编辑:程序博客网 时间:2024/06/08 17:25

From Gossip@caterpillar

非關語言: 電腦圖學入門

圖學的美麗。。。電腦圖學(Computer Graphics)是資料結構、演算法與數學的應用,要深入瞭解的話,是個可以作為一生研究的領域,然而基礎的電腦圖學是某些從事資訊行業的人所不可少的,這並不專指程式設計人員,也包括了3D繪圖與動畫設計人員。

這邊的文件是我學習電腦圖學時的一些心得,也是入門電腦圖學的基礎,對於一些基本的2D或3D繪圖需求應該也足以應付,為了展現一些成果及部份的程式設計實作,使用了Java Applet來展現,當然,與資料結構及演算法一樣,電腦圖學與程式語言沒有絕對相關性。


座標系統
學習圖學的第一步,就是先瞭解物體在二維平面與三維空間中如何定義位置,然後瞭解在二維螢幕上,電腦如何處理每個點的繪製。
  • 二維座標系
  • 繪圖座標系
  • 基本的二維座標轉換
  • 太空船座標旋轉
  • 三維座標系
  • 創造物體的遠近感(透視)
  • 三維直角座標之繞軸旋轉
  • 齊次座標
  • 四元數與旋轉
  • 向量運算
  • 函式圖形繪製

頂點配置
無論是二維或是三維繪製,頂點的使用是一個重要的課題,如何定義各類圖象的頂點,以在節省記憶體與效能之間取得平衡,一直是值得研究的對象。
  • 頂點索引陣列
  • 無索引頂點陣列
  • 正多面體頂點
  • 水晶球頂點
  • 旋轉體、錐狀體、柱狀體頂點

深度處理
三維世界中的有遠近,近的物體遮蓋遠的物體,深度的判斷除了簡單的遮蓋作用之外,對於隱藏面就省去不畫,節省計算資源。
  • 畫家深度排序
  • 平面法線判定法
  • 曲面法線判定法
  • 最大最小法
  • Z Buffer法

色彩
有時您以為顏色一樣,其實根本不一樣,色彩的一些細微變化,有時足以影響整個構圖的感覺。
  • 色彩簡介
  • 色譜簡介
  • 表面的受光

遞迴繪圖
對於一些複雜的幾何圖形,您可以研究出其遞迴規律並使用程式簡單的運行,即可構造出複雜的圖案,自然界中的某些物體常存在這類的遞迴規律。
  • 二維海龜繪圖法
  • 三維海龜繪圖法
  • 科赫曲線
  • 樹木曲線
  • 蕨葉曲線
  • 雪花曲線
  • 龍形曲線
  • 十字繡曲線
  •  樹林與倒影

動畫
可以寫些動畫來自娛總是令學習的過程有趣一些,這邊介紹幾個動畫入門,您可以結合之前的主題自行實作一些簡單的動畫。
  • 動畫簡介
  • 動畫程式骨架
  • 雙緩衝區繪圖
  • 畫框檔案管理

背景、地圖
遊戲製作中幾個簡單的地圖製作以及障礙物的處理其實並不困難,透過下面的幾個主題,您可以稍微瞭解一下製作的原理。
  • 捲軸背景
  • 平面地圖
  • 斜角地圖
  • 迷宮(斜角地圖實例)

粒子系統
自然界中的一些粒子運動看似複雜,其實每個例子有其獨立的狀態,透過對狀態的模擬與包裝,您也可以模擬出一些自然界的粒子運動。
  • 煙火
  • 煙粒子
  • 煙火與煙
 
原创粉丝点击