Cameras

Pan Camera


Instruction:
此範例可以和「Following Camera」作一個比較,這裡所表現出來的效果是Camera-New Camera的鏡頭始終對著人物-Eva,且與Eva保持一定的距離;Camera不會隨著Eva轉動而跟著移動,只因Eva移動而跟著移動。

Building Blocks
(a) Character Controller-Characters/Movement/Character Controller
(b) Character Keep On Floor-Characters/Constraint/Character Keep On Floor
(c) Keyboard Controller-Controllers/Keyboard/Keyboard Controller
(d) Object Slider-Collisions/3D Entity/Object Slider
(e) Set Position-3D Transformations/Basic/Set Position
(f) Look At-3D Transformations/Constraint/Look At
(g) Keep At Constant Distance-3D Transformations/Constraint/Keep At Constant Distance
(h) Set As Active Camera-Cameras/Montage/Set As Active Camera

製作構想
首先必須利用Building Blocks-Character Controller、Keyboard Controller設定鍵盤控制Eva的動作;再利用Character Keep On Floor、Object Slider等設定Eva與地面接觸和碰撞等屬性。
此外,可以增加一個3D Frame-New 3D Frame,再配合Building Blocks-Set Position、Look At、Keep At Constant Distance的方式,可以表現出Camera遲緩移動的效果(如圖示)。


製作步驟
(a) Eva

Character Controller:設定Eva的Animations。
首先從Virtools Resources/Characters/Animations/Skin Character Animation/Eva裡點選Wait.cmo、Walk.cmo、Walk Bckwd.cmo以及Run.cmo並拖曳至Eva,再設定Stand Animation、Walk Animation、Backward Walk Animation以及Run Animation(如圖示)。

Keyboard Controller:設定Eva可以經由鍵盤來操控動作,內定值為Wait-None、Walk-Key '8'、Turn Left-Key '4'、Turn Right-Key '6'、Backward Walk-Key '2'、Run-Key 'Insert'。
Character Keep On Floor:於Level Manager/Default Level/Global/3D Objects/Plane/Add Attribute/Floor Manager/Floor增加保持與地面接觸的屬性,再於Building Blocks-Character Keep On Floor作迴圈即可(如圖示)。

Object Slider:設定Eva的碰撞屬性Group 'Obstacles Eva';Radius-碰撞半徑(如圖示)。

(b) New Camera

Get Position:設定Inputs-Character(Eva)、None;Operation-Get Position以取得Eva的位置;Ouput-Vector(向量)。

Addition:設定Inputs-Vector(Eva's位置向量)、Vector(0,2,8);Operation-Addition;Ouput-Vector(向量)。

Set Position:設定目標物Camera Referential(3D Entity)-New 3D Frame;由pIn輸入目標物相對於參考物的位置Position(X,Y,Z);設定參考物Referential-'NULL-'表示以World座標為參考(如圖示) ;勾選Hierarchy-表示其行為也應用在Child上。

Look At:Position表示Camera所觀看的位置向量;設定Referential-Eva,表示以Eva為基準點;設定Following Speed-30%,表示Camera跟隨著Eva移動所觀看的速度。
如果Following Speed設定為1%,則Camera-New Camera隨著Eva移動而觀看的速度極為緩慢,在觀看的速度上無法追隨Eva的移動速度;如果將Following Speed設定為100%,則New Camera觀看的速度和Eva移動的速度相等,無遲滯的現象(如圖示) ;勾選Hierarchy-表示其行為也應用在Child上。

Keep At Constant Distance:使New Camera與New 3D Frame保持一定的距離;設定New Camera距離參考點的位置Position(X,Y,Z);設定參考點物體Object-New 3D Frame;Distance from Camera Referential-設定兩物體間的距離;Attenuation-設定Camera跟隨著New 3D Frame移動的速度,'0'表示立即的反應;值愈大表示反應愈緩慢(如圖示);勾選Hierarchy-表示其行為也應用在Child上。

(c) New Camera

Object Slider:設定Camera的碰撞屬性Group 'Obstacles';Radius-碰撞半徑(如圖示)。
 
(d) Camera

如果不增加Frame-New 3D Frame,使用圖示所示的Building Blocks組合,也可以造成類似的效果,但缺少了Building Blocks-Keep At Constant Distance裡的參數Attenuation,因此無法表現出New Camera遲緩跟隨Eva移動的效果。

愛迪斯科技股份有限公司版權所有,本網站各連結標題,商標及連結內容歸原權利人所有.
台北市內湖區民權東路六段16011樓之
2 Tel:(02)2791-2917 Fax:(02)2791-2916
CopyRight 2001-2002 Axis 3D Technology,inc. All rights reserved.