C言語で3Dを勉強 -18 | 2010.03.19 22:38 |
▲ メニュー画面っぽい何か
複数のミッションが読み込めるように、メニュー画面っぽい物を作ってみました。
「複数のミッション」といっても動作が確認できた標準ミッションだけです。
メニュー画面というのは、物自体は非常に原始的で3D技術はまったく使いません。
普通の2Dゲームのメニューと同じ考え方が通用します。
(本物のXOPSもメニュー自体は単純です。裏の人が歩くシーンは3D計算ですが。)
単純にマウス座標を取得して、文字の上にマウスが乗っている状態でクリックしたら
そのミッションを読み込む みたいな事です。
マウスの取得は、今回はWindowsAPIではなくDirectX API(Direct input)を使ってます。
ミッション数が増えてスクロールバーを付けるようにすると、
スクロールバー自体は手動計算・手動描画なので、かなり面倒ですが、
考え方(理論)は2D技術で十分通用します。
問題・・にはならないですが、XOPSをよく改造する人ならご存知だと思いますが、
裏の人が歩く3Dシーンはリアルタイム計算です。
通常のミッションのを応用すれば良いので、面倒ではないです。
Direct inputの話が出たのでついでに話しますが、XOPSの公式のは全て
WindowsAPIでキー操作とマウス操作を受けている気がします。
逆アセンブラするとDirect input系の命令がない
自分のはどうするか? もう面倒なのでDirect input使います。
Direct inputは、自分から見ればDirectX(のDirectX Graphics)のおまけ機能ですが、
それなりに最低限十分な機能は持っているので。
そろそろ、ka-naviさんが作られたXMSで、XOPS公式版の武器性能を見ながら
武器の性能も適用させていきたいですが、「弾道誤差」の概念がまったく分かりません。
「連射間隔」や「ロード時間」と言うのはフレーム数(30FPS固定として)
なのですが、
「弾道誤差」というのが、数値をどのような計算で利用しているのか疑問です。
角度なのか、座標なのか、単位はなんなのかっていう問題です。
ちなみに、
全く手を触れていませんがイベント系(イベントパス)の駆動も作らないといけません。
スクロールバー自体は手動計算・手動描画なので、かなり面倒ですが、
考え方(理論)は2D技術で十分通用します。
問題・・にはならないですが、XOPSをよく改造する人ならご存知だと思いますが、
裏の人が歩く3Dシーンはリアルタイム計算です。
通常のミッションのを応用すれば良いので、面倒ではないです。
Direct inputの話が出たのでついでに話しますが、XOPSの公式のは全て
WindowsAPIでキー操作とマウス操作を受けている気がします。
逆アセンブラするとDirect input系の命令がない
自分のはどうするか? もう面倒なのでDirect input使います。
Direct inputは、自分から見ればDirectX(のDirectX Graphics)のおまけ機能ですが、
それなりに最低限十分な機能は持っているので。
そろそろ、ka-naviさんが作られたXMSで、XOPS公式版の武器性能を見ながら
武器の性能も適用させていきたいですが、「弾道誤差」の概念がまったく分かりません。
「連射間隔」や「ロード時間」と言うのはフレーム数(30FPS固定として)
なのですが、
「弾道誤差」というのが、数値をどのような計算で利用しているのか疑問です。
角度なのか、座標なのか、単位はなんなのかっていう問題です。
ちなみに、
全く手を触れていませんがイベント系(イベントパス)の駆動も作らないといけません。
category : ソフト・ツール開発 | comment [0] trackback [] |