#include "d3m.hsp"//おまじない
randomize
/////////////////////////////////////////////
/////////////////////////////////////////////
repeat
title "fps, "+d3getfps()+" "+x+" "+y+" "+z
d3setcam 130,10,60,,,40//カメラ位置
;オブジェクト描画
repeat 2
; 影描画モード
if cnt = 0 {
; 平行光線による影をイメージしたローカル座標系を設定
; (x, y それぞれに z を 2 倍した成分を与え、長く伸ばす)
d3setlocal 0,0,0, 1,0,-2, 0,1,2, 0,0,0
; 影色
color 0.7 * 255, 0.7 * 160, 0.7 * 80
}
; 本体描画モード
if cnt = 1 {
; cnt = 0 で描画した影画像をぼかす
gmode 3, , , 128
pos -2, 0
gcopy 0, 0, 0, ginfo_winx, ginfo_winy
pos 0, -1
gcopy 0, 0, 0, ginfo_winx, ginfo_winy
; ローカル座標系設定 (リセット)
d3setlocal
; 本体色
color 200, 0, 0
}
; オブジェクト描画
d3box x, y, z, x + 10, y + 10, z + 10
d3arrow 100, 0, 0, -100, 0, 0
d3arrow 0, 100, 0, 0, -100, 0
d3arrow 0, 0, 100, 0, 0, -100
d3mes "X", 50, 0, 0
d3mes "Y", 0, 50, 0
d3mes "Z", 0, 0, 50
loop
/////////////////自機移動///////////////////////////////
getkey keyl,37 ;←キーを取得
getkey keyr,39 ;→キーを取得
getkey keyu,38 ;↑キーを取得
getkey keyd,40 ;↓キーを取得
getkey keys,32 ;sキーを取得
if keyl=1 : y-- ;←が押されたら←に移動
if keyu=1 : z++ ;↑が押されたら↑に移動
if keyd=1 : z-- ;↓が押されたら↓に移動
if keyr=1 : y++ ;→が押されたら→に移動
;;;;;;;;;;;;;;;;;;移動範囲;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
z=limit(z,0,95)
y=limit(y,-80,70)
////////////////////////初期化////////////////////////////
redraw 1
await fps
redraw 0
color 255,255,255
boxf
color ,,
loop
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////