3D 物件程式
參考:http://docwiki.embarcadero.com/RADStudio/Tokyo/en/FireMonkey_3D
C++ Builder 可以處理 3D 程式,主要方法簡述如下。
1. 若要能直接放 3D 物件,一開始就要選 3D Application。
2. 若不是在 3D Application 的程式中想加入 3D 的物件,要先加入 TViewport3D 元件,才能在裡面放 3D 物件。
3. 反之,如果要在 3D Application 放 2D 元件,就要先放 TLayer3D 元件,才可以在裡面放 2D 元件。
3D 物件基本設計
參考 :
1. 放置物件,例如放 TCube 方塊及 TLight,Tlight 代表光的方向。
2. 物件和光源都可以調整位置,物件也有長、寬、高可調,以及三個方向可旋轉。
3. 要在物體表面貼圖,要加入這個元件 TLightMaterialSource。這個會根據光源調整亮度,如果放 TTextureMaterialSource,就不受光源影響。
4. 在 TLightMaterialSource 的 Texture 屬性載入圖檔。
5. 在 TCube 的 MaterialSource 屬性選剛剛載入圖檔的 TLightMaterialSource,就會看到貼圖的 3D 物件。
動畫效果
參考 :
1. 在某些屬性有像電影底片的圖案,表示可以做動畫的效果,選擇 Create New TFloatAnimation。
2. 在物件列表就可以看到 FloatAnimation1,選擇它。
3. 設定底下的屬性。
- Duration : 4 ,表示這個動畫要花 4 秒。
- Enabled : True,表示直接執行。
- Interpolation : Bounce,動的過程是 "彈" 的動作。Linear 就是線性。
- Loop : Ture,會重覆一直做。
- StartValue : 3,初值是 3。
- StopValue : 6,末值是 6。
因為這是設定在 Width 的位置,表示執行後,物件的寬度會在 4 秒內由 3 變成 6。變化是 "彈" 的動作,而且是連續的動畫,因為這是浮點的運算。
4. 也可以用程式來控制。例如旋轉的 Y 軸屬性沒有電影底片的圖案,無法直接設定動作,也可以用底下的程式來實現。
Cube1->AnimateFloat("RotationAngle.Y",360,2);
這表示在 2 秒內 Y 軸旋轉 360 度。
以上就是簡單的 3D 物件設計及動畫處理。
- 瀏覽次數:10216
發表新回應