天天看點

ZAM 3D入門教程(3):Viewport

在上一篇文中介紹了場景編輯器中的一些按鈕的用法,其中視口(Viewport)隻是介紹了它的用處,本文着重介紹Viewport。

Viewport的屬性包括:屬性頁面中的布局和環境屬性以及Viewport的菜單中的設定。

3.1布局

3.1.1 布局

布局器是我們設定最終導出檔案的大小和比例的地方。設定的寬度和高度會被呈現在有黃色邊框包圍的視口窗體中。

<a target="_blank" href="http://blog.51cto.com/attachment/201105/142125264.jpg"></a>

當我們将XMAL檔案導出為Viewport3D或者Canvas控件時,這些控件的寬度和高度就是是在ZAM 3D中的設定值。然而,如果你導出為控件的時候,Viewbox控件的寬度和高度是自動配置設定的,但嵌套在Viewbox中的Viewport3D控件的寬度和高度仍然是在ZAM 3D中設定的值。是以,任何對Viewbox大小的改變都會造成你原始3D場景變得或大或小。

3.1.2 選項

在選擇中有一個勾選,重繪所有視口(Redraw All Viewports),如果勾選上了,則當你在一個Viewport中移動對象的時候,其他的Viewport中也對應移動。如果沒有勾選,則是當你停止移動的時候,其他的Viewport才會重繪對象。

3.1.3 設定

在設定中,可以設定增量微調的值。該值是控制當你使用鍵盤微調的時候,你按一下方向鍵時移動的距離,預設值為0.1。

3.2 顯示模式

<a target="_blank" href="http://blog.51cto.com/attachment/201105/142201874.jpg"></a>

我們可以通過Viewport菜單按鈕設定哪些東西将要被展現以及如何展現。點選在Viewport中的按鈕會發現有很多的選擇項,如下圖

<a target="_blank" href="http://blog.51cto.com/attachment/201105/142223676.jpg"></a>

下面一一說明:

3.2.1 顯示模式設定

Texture Smooth Shaded(紋理平滑陰影):這是預設的顯示選項。當這個選項被選中時,對象呈現為光滑、帶有陰影的固體材料對象。如果紋理或者位圖圖像應用到一個對象上,該顯示選項也将呈現OpenGL所能提供的最好的效果。顯示紋理一定會使得Viewport渲染的速度減慢,是以如果你在做一個複雜的場景,最好切換到其他的顯示模式,以提高工作效率。

Smooth Shaded(平滑陰影):從字面上就能看出這個與紋理平滑陰影的差別,該顯示選項将不會顯示任何的紋理或者位圖。

Flat Shaded(平面陰影):這種顯示模式渲染你的對象為灰色,但是沒有平滑的梯度。相反,你會看到你的對象由一系列的多邊形組成,而且每一面都是平的。當你在做處理細節工作的時候該顯示選項有助于提高渲染速度。

下圖是Texture Smooth Shaded(紋理平滑陰影)和Flat Shaded(平面陰影)的渲染對比圖。

<a target="_blank" href="http://blog.51cto.com/attachment/201105/142253470.jpg"></a>

Wireframe(線框):這個顯示選項顯示對象的時候隻顯示線框,沒有陰影。換句話說,你會看到他們的多邊形結構而不是平滑的表面。當你在處理複雜的三維模型的時候這種顯示選項将會有用,因為它加速了你的對象每次重繪的速度。

Draw Backfaces:預設情況下,Draw Backfaces在所有的Viewport中都是啟用的。這意味着目前顯示的對象正在顯示背面或者對象的網格正在偏離照相機。

Reference Grid(參考網格):可以設定X、Y、Z坐标軸的開和關。預設是顯示X-Y軸的,當我們全部啟用的時候會發現多了幾條網格,如下圖

<a target="_blank" href="http://blog.51cto.com/attachment/201105/142312480.jpg"></a>

3.2.2 顯示

<a target="_blank" href="http://blog.51cto.com/attachment/201105/142334840.jpg"></a>

Animation Paths(動畫路徑):任何已應用到一個對象的動畫路徑将顯示為紫色的線。這些路徑也可以通過點選在主工具欄上的動畫路徑模式按鈕進行編輯。

Hidden Objects(隐藏對象):這是用來顯示或隐藏已被指定為隐藏的對象(這是從工具欄對象的屬性頁來完成)。這個選項預設是關閉的,當啟用這個選項後,隐藏的對象将會顯示成有紅色效果(而且也隻能在層次窗體中才能選擇這些隐藏的對象)。具體的效果如下圖所示:

<a target="_blank" href="http://blog.51cto.com/attachment/201105/142355529.jpg"></a>

Object Bones(對象骨骼):對象骨骼顯示在層次工具欄中對象的軸點建立的父子關系之間的連接配接,父節點連接配接着所有的子節點,其實就是我們平時接觸的樹。這些“骨頭”隻是作為一個層次結構的可視化表示。具體的說明見下圖:

<a href="http://blog.51cto.com/attachment/201105/142606258.jpg" target="_blank"></a>

當在三維空間工作時使用二維正投影檢視選項提供了許多好處,下面是一些原因來解釋為什麼有許多好處:

1. 在一個正投影視圖中,所有的對象都會被筆直的顯示并且保持着他們正确的角度和平行度,以減少你對它進行移動、旋轉、變形等操作的機會。

2. 所有的對象,不考慮他們之間Z軸的距離(實際上,是相對的Z軸),都會顯示他們實際的大小。當你經常希望能夠比較事物的實際大小和正投影之間的差別時,這一點十分的重要。

當處于正投影編輯模式時,我們隻能看到對象在三個軸中的其中兩個軸方向的變化,或者是平面的變化。例如,如果你在使用前視正投影視圖,你可以清楚地看到活躍的一個對象沿X或Y軸移動,但到Z軸的變畫将不會明顯。但是,如果更改發生,他們将在正投影視圖關閉時立即生效。

3.3 環境(Environment)屬性

在這個頁面中我們可以設定場景的背景顔色和環境照明顔色。

背景顔色

設定場景的背景顔色

我們可以通過如下的步驟來改變背景顔色

1. 點選屬性工具欄中的環境(Environment)頁面

2. 輕按兩下環境照明顔色(Ambient Light Color)

3. 在顔色面闆中選擇你想要的顔色即可

環境照明顔色(Ambient Light Color)

想象一下,有一個巨大的球包圍着你的場景。你選擇的任何應用于這個球的顔色都被認為是環境照明顔色,并且任何在場景中的帶有固體光澤的材料都會被包圍一種色調。環境照明顔色簡單的說就是我們生活的真實世界的照明光。在程式中,我們通常使用它來模拟真實着色效果,但對于一般的三維場景,它的能力範圍是有限的。

我們可以通過如下的步驟來改變環境照明顔色

    本文轉自xshf12345 51CTO部落格,原文連結:http://blog.51cto.com/alexis/574654,如需轉載請自行聯系原作者

繼續閱讀