JavaScriptの場合はこうですが、3Dは無理というか面



[ このメッセージへの返事 ] [ 返事を書く ] [ home.html ]



投稿者: INNO @ ins229.sendai.dti.ne.jp on 97/12/21 23:37:34

In Reply to: プログラムができる方に質問

posted by 柏木耕一(旧・日光) @ ppp98e8.pppp.ap.so-net.or.jp on 97/12/21 22:27:40

"本当の意味"というのが曖昧ですが、JavaScriptでならこんなカンジ。

var cel=new Image();
cel.length=6;
cel[0]="1の目の画像ファイル名";
cel[1]="2の目の画像ファイル名";
cel[2]="3の目の画像ファイル名";
cel[3]="4の目の画像ファイル名";
cel[4]="5の目の画像ファイル名";
cel[5]="6の目の画像ファイル名";
var x;
var t;
function furu()
{
x=Math.floor( Math.random()*cel.length );
t=5000;
saikoro();
}
function saikoro()
{
x=( x+1 )%cel.length;
t*=0.8;
document.IMGタグのNAME.src=cel[ x ].src;
if( t>1 )
{
setTimeout( "saikoro()", t );
}
return;
}

このfuru関数を任意の場所で起動します。
3Dでサイコロを転がしたい場合、ShockWaveかJavaで無いと不向きです。
その場合でも、扱える画像は2Dなのでプログラム的には複雑です。
乱数で出目を決定後、それに向かうアニメーションを再生する方法が、
よくある手法です。

参考になるか判りませんが、こんなのを創ってみてます。

http://www.ceres.dti.ne.jp/~innoinno/test/slot/imgslot3.htm

(画像が全て読み込まれる前に動作出来るため、
ダウンロードが終了するまで不完全な動作をします)