三維模型
三維模型是物體的三維多邊形表示,通常用電腦或者其它影片設備進行顯示。顯示的物體是可以是現實世界的實體,也可以是虛構的東西,既可以小到原子,也可以大到很大的尺寸。任何物理自然界存在的東西都可以用三維模型表示。
三維模型經常用三維建模工具這種專門的軟件生成,但是也可以用其它方法生成。作為點和其它信息集合的數據,三維模型可以手工生成,也可以按照一定的算法生成。儘管通常按照虛擬的方式存在於計算機或者計算機文件中,但是在紙上描述的類似模型也可以認為是三維模型。
應用
[編輯]三維模型廣泛用任何使用三維圖形的地方。實際上,它們的應用早於個人電腦上三維圖形的流行。許多計算機遊戲使用預先渲染的三維模型圖像作為sprite用於實時計算機渲染。
現在,三維模型已經用於各種不同的領域。在醫療行業使用它們製作器官的精確模型;電影行業將它們用於活動的人物、物體以及現實電影;電子遊戲產業將它們作為計算機與電子遊戲中的資源;在科學領域將它們作為化合物的精確模型;建築業將它們用來展示提議的建築物或者風景表現;工程界將它們用於設計新設備、交通工具、結構以及其它應用領域;在最近幾十年,地球科學領域開始構建三維地質模型。
三維模型本身是不可見的,可以根據簡單的線框在不同細節層次渲染的或者用不同方法進行明暗描繪(shaded)。但是,許多三維模型使用紋理進行覆蓋,將紋理排列放到三維模型上的過程稱作紋理映射。紋理就是一個圖像,但是它可以讓模型更加細緻並且看起來更加真實。例如,一個人的三維模型如果帶有皮膚與服裝的紋理那麼看起來就比簡單的單色模型或者是線框模型更加真實。
除了紋理之外,其它一些效果也可以用於三維模型以增加真實感。例如可以調整曲面法線以實現它們的照亮效果,一些曲面可以使用凹凸紋理映射方法以及其它一些立體渲染的技巧。
三維模型經常做成動畫,例如,在故事片電影以及計算機與電子遊戲中大量地應用三維模型。它們可以在三維建模工具中使用或者單獨使用。為了容易形成動畫,通常在模型中加入一些額外的數據,例如,一些人類或者動物的三維模型中有完整的骨骼系統,這樣運動時看起來會更加真實,並且可以通過關節與骨骼控制運動。
齊次坐標表示
[編輯]使用齊次坐標經常是更加有用的,因為3次元的平移(仿射變換)不能用3×3矩陣完成。要按一個向量v = (vx, vy, vz)縮放一個物體,所有的齊次向量p = (px, py, pz, 1)都需要乘以縮放矩陣:
如下所示,這個乘法給出預期的結果:
縮放是均勻的,當且僅當縮放因子是相等的。如果除了一個因子之外所有縮放因子都是1,我們得到方向縮放。
因為齊次坐標的最後成員可以看作其他三個成員的分母,使用公共因子s的縮放可以使用如下縮放矩陣完成:
對於每個齊次向量p = (px, py, pz, 1),我們有:
它將均質於