最初に、今日の文章は長いです。
しかも 99% の人にとって、どうでも良くツマラナイ話なので観覧にはご注意ください。
様々な野望のためのバーチャルマシン制作、、今かなり熱い感じです。
な、なんと
全81個のバイトコード命令をすべて実装終えたんですよ!(大袈裟
で、いま何ができるかというと、構文的に下記のようなものがすでに動作します。
( 長ったらしいコード。。 )
}
|
配列は1次元まで、とか細かい仕様もありますが、基本的には以下の事はサポートしています。
・for/while ループ
・++/--(インクリメント/デクリメント)
・if/elseif/else
・new
・continue/break
・this
・length( 文字列/配列に対して )・extends( 簡易継承 )
・Array( 配列 )
・var( ローカル変数 )
・四則演算を含む、ほぼすべての演算命令・true/false
とりあえず、簡易的に紹介すると、こんなところかな?
いま迷ってるのは継承時のコンストラクタをどうするか、仕様的に悩んでます。。
完全に特定のゲームジャンルにあわせようとすると、設計時に妥協コードが入ってしまうから、
現設計の内に、ゲーム種別問わないシステムを提供できるようにしないと。
現設計の内に、ゲーム種別問わないシステムを提供できるようにしないと。
特定の何かに向けて作るなら楽な部分はあるんだけど。。まぁそれはAPI の実装部が担当する
ことになる予定なのです。
現状だと、サウンドノベルとミニゲーム程度ならば API のみの実装なので、かなり短期間で
実装できる雰囲気。
自分のキレイ好き?な部分を一時的に捨てれば、妥協コードもバシバシ入れて完全専門コードとして
かなり大規模なのも作れます( 今はイヤダネ
ゲームジャンル別対応表はこんな感じ?
◎ - ノベル
|
どういう流れでゲームイベントをコーディングしていくかというので、コンストラクタの役目は実は大きいので、
仕様的には明確に決めないとなぁ( ´д`)
これをどうするかによって、特定の関数を呼ばれるようにするのかとか色々変わるんですよ。
コンストラクタが終わったら基本APIの実装のみなんだけど、、、むぅ。
そんなところで、今回はこのバーチャルマシンの目指す実行環境を最後にちょろっと紹介します。
あくまでも、目指すということですが。
--------------------------------------------
・iアプリ / Doja3.5 以上
・auオープンアプリ
・Windows2000/XP以降
・FedoraCore4( デスクトップの使える linux系? )
--------------------------------------
自分的には C++ ⇔ Java は基本的に抵抗無し!
とりあえず、Windowsは C++ で FedoraCore では Java で目指す予定です。
まぁ iアプリ上で完全に完成してからの話 ですが。。
0 コメント:
コメントを投稿