;============================================================ ; 2005/--/-- ; d3module sample script ; for HSP 3.0 ; ;============================================================ ; ; パーティクル描画のサンプルです。 ; ; d3mkparticle 命令で使用するパーティクルを作成してから、 ; d3particle 命令でパーティクルを描画します。 ; ; パーティクルを描画する前に、gmode 命令を使用して画面コピー ; モードを加算合成にします。 ; (他のモードでも使用できます。) ; ; * パーティクル描画機能はフルカラーモード専用です。 ; ;============================================================ #include "d3m.hsp" title "S.Programs d3module sample" ;------------------------------------------------------------ ; パーティクルを初期化 (作成) d3mkparticle 0, 255, 255, 32 ; │ └┬───┘ ; │ └ パーティクルの色 (r, g, b) を指定 ; └ パーティクル ID ;------------------------------------------------------------ *mainloop ct++ redraw 0 color 24, 24, 24 boxf ; カメラ座標を回転させる d3setcam cos(0.04 * ct) * 2000, sin(0.04 * ct) * 2000, cos(0.03 * ct) * 1000 ; 枠のボックス color 64, 64, 64 d3box -500, -500, -500, 500, 500, 500 ; パーティクル描画時のコピーモードを設定 gmode 5, , , 128 ; パーティクルを描画 randomize 0 repeat 300 ; 座標準備 x = rnd(1000) - 500 y = rnd(1000) - 500 z = rnd(1000) - 500 r = 50 ;------------------------------------------------------------ ; パーティクルを描画 d3particle 0, x, y, z, r ; │ └┬──┘ └ 描画するパーティクルの半径 ; │ └ 描画する位置 (x, y, z) ; └ パーティクル ID ;------------------------------------------------------------ loop redraw 1 await 30 goto *mainloop