[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 05/09 17:59 / Filesize : 318 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

DarkBASIC 使っている奴情報交換してください



262 名前:135 ◆2i.vL..9Ww mailto:sage [2006/04/11(火) 17:32:12 ID:I0ApiQEq]
3Dマウス、作ってみました。地面となるオブジェクトに高低差を設ける場合はintersect objectコマンドを使えば
簡単に実現できるのではないでしょうか。マウスクリックで移動、矢印キーでカメラの移動&パンです。
sync on:sync rate 60
make camera 1
set current camera 1
color backdrop 1,0
make object box 1,1000,1,1000
make object sphere 2,30:color object 2,rgb(255,0,0)
make object sphere 3,30:position object 3,0,1,0:scale object 3,100,3,100:color object 3,rgb(0,0,255)
position camera 0,150,-300:position object 2,0,15,0
do
fps$="3D mouse Example Fps: "+str$(screen fps())
text screen width()-20-text width(fps$),screen height()-40,fps$
text 0,20,mes$
if mouseclick()
flag=pick object (mousex(),mousey(),1,1)
mx=get pick vector x():my=get pick vector y():mz=get pick vector z()
mes$="x;"+str$(mx)+"y;"+str$(my)+"z;"+str$(mz)
targetx=mx+camera position x(1)
targety=my+camera position y(1)
targetz=mz+camera position z(1)
position object 3,targetx,targety+1,targetz
endif
point object 2,targetx,targety+15,targetz
spd#=((abs(object position x(2)-object position x(3))+abs(object position z(2)-object position z(3))))
move object 2,spd#/50
control camera using arrowkeys 1,2,2
sync
loop








[ 続きを読む ] / [ 携帯版 ]

全部読む 前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](;´∀`)<318KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef