忍者ブログ
カレンダー
10 2024/11 12
S M T W T F S
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
プロフィール
HN:
[-_-;] (みかん)
性別:
男性
趣味:
プログラミング、XOPS
自己紹介:
中部地方在住です。
最新コメント
[11/30 NONAME]
[11/22 NONAME]
[09/24 NONAME]
[06/10 NONAME]
[01/29 NONAME]
XOPS関連サイト「みかん箱」の運営や、OpenXOPSの開発などを行う[-_-;](みかん)のブログ。近状報告や独り言などを書きます。
Prev Month123456789101112131415161718192021222324252627282930Next Month
モーフィング処理の開発
11月になりました。後2ヶ月もすれば2014年が終わってしまうようで。


OpenXOPSの開発の方は、モーフィング処理を開発し実装しました。
足のモーション(アニメーション)を滑らかに表示するために使われる処理
です。
「百聞は一見にしかず」ってことで、アニメーションをご覧ください。
左が改良前で未使用、右が改良後で処理しています。


(アニメーションGIF・クリックで拡大)

一瞬ぱっと見ただけでは分かりませんが、足の動きに注目すると、モーフィ
ングが効いて滑らかに動いているのが分かると思います。
XOPS 0.96説明書の公開履歴にて、0.96の欄に『足の動きを少し滑らかに』
と書かれていますが、nine-two氏いわく本家XOPSでも、これと同様の処理
を実施しているそうです。

『うわぁ~地味だな・・』っと思った諸君!
ゲームのグラフィック処理の改善なんて、こんな作業の連続です。
地道な改良を重ねることで、ゲームのグラフィックの評価が変わっていくの
ですよ。 これも、nine-two氏の努力が垣間見える部分の一つです。

なぜこんな処理をしているのかと言えば、XOPS用の人型モデルデータを作っ
たことのある方ならばお気づきの通り、XOPSの動作原理に由来します。
XOPSの足のモーションは現代のゲームで一般的な、ボーン(骨格)を使用
したモーション再生を行っているわけではなく、モデルデータのXファイル
(.x)をパラパラマンガのようにコマ送りで描画しているに過ぎません。
歩きで4種類、走りで6種類のモデルデータを高速に切り替えています。
実際に表示を切り替えて描画する(画像・左)と、やはりカクカクしたぎこ
ちない描画になってしまうのです。
そこで、起動時のモデルデータを読み込む際に、各フレームごとのモデルデー
タに対してモーフィング処理を実施し、フレーム数を倍に増やすことで、滑
らかな足の動きが実現しています。

OpenXOPSにおけるモーフィング処理は、完全に独自で実装しています。
DirectX上で読み込んだモデルデータの頂点データが記憶された領域にアクセ
スし、各座標の中間データを単純な線形補間で求めています。
当初は、Xファイル自体をフォーマットを認識ながら読み込んで頂点データを
引き抜くことも覚悟していましたが、思っていた以上にうまくDirectX内部の
処理を直接利用できました。かなりスマートで良い感じです。
また、DirectXのモデルファイルに関する知識が、また一歩深くなりました。


これでモーション関係の処理は完成です。

OpenXOPSのサイト上で公開する技術ドキュメントの執筆作業も並行して行
っています。
既にA4用紙で10枚クラスの文章になっています。これからもっと増えます。
滅茶苦茶な日本語にならぬよう頑張ります。


なお、XOPSサーチエンジンの件でサーバー運営元からメールの返事が返って
きました。 ここ1年ほどの経緯・事情を説明した上で、運営側が非を認め
謝罪する内容でした。
今回はメールで個人的な回答・謝罪でしたが、近日中にサーバーの公式サイト
で全ユーザー(関係者)に対して、事情説明と謝罪をされるそうです。
さてさて、XOPSサーチエンジンはどうするかなぁー。
category : ソフト・ツール開発 comment [2]
PR
COMMENTS
【本文以外は任意項目です】
SUBJECT(タイトル)
NAME(お名前)
MAIL(メールアドレス)
HOME(サイトURL)
COMMENT(本文)
PASS(削除パスワード)
Secret?(管理者へのみ表示)

※スパム防止のため「Hello!」「website」「ブランド」「みかんの戦闘ブログ」
「http」などの一部キーワードを禁止しています。ご了承ください。

無題 2014.11.03 Mon 11:05 EDIT
すごいです!!本当に本家みたいな脚の動きになってますね!!
っていうかやっぱりXOPSのモーションって作ったポリゴンを動かすようにして作ってたんじゃなくてパラパラマンガの要領で動かしてたんですね!!っていうことはヒットボックスの処理は脚の動く全範囲に作られているんでしょうか?それともまさか脚が動くたびにヒットボックスの形も変えてるとか?

それにしてもこれだけ本家に近づけられるってすごいですよ!!
OpenXopsが完成したら是非とも使わせていただきます!!
原作を創った92さんもすごいですが、それをまた
ここまで忠実に作っているミカンさんも素晴らしいです!!

完成が非常に待ち遠しいです!!
Xops2の開発報告は去年以来まだありませんが…
でもこのソフトの開発でまた人口増えるといいですね!!
僕もできるだけリスペクトします!
from 冷
>すごいです!!本当に本家みたいな脚の動きになってますね!!
ありがとうございます。
やっぱり画像は分かりやすくて良いですよねぇ。

>ヒットボックスの処理は脚の動く全範囲に作られているんでしょうか?
>それともまさか脚が動くたびにヒットボックスの形も変えてるとか?
当たり判定は解析しきっていないので正確なことは分かりませんが、
本家XOPSは、足が止まっている状態での当たり判定のまま、変えていないと思います。
(すなわち歩き・走りの時に、前後の足の先端は当たり判定がないということです。)
足の位置に合わせて厳密に当たり判定を実施するのは、効果が薄い割には計算量が多く、「低スペックFPSゲーム」としては現実的ではないと思います。

>これだけ本家に近づけられるってすごいですよ!!
>完成が非常に待ち遠しいです!!
ありがとうございます。
今後も応援よろしくお願いします。
from MASTER 2014.11.04 Tue 00:30
無題 2014.11.05 Wed 23:52 EDIT
お久ぶりです。XOPSは最近なかなか
鯖が立ってないですよね。
from itotaisa
こんにちは。
明確にいつだか覚えていませんけど、ピーク時はロビーサーバーリストがいっぱいになるまで鯖が立っていたこともありましたが、ここ数年は1・2個しか立ってませんね。
寂しいですねぇ。
私も、一応立てられる環境ではあるのですが。
from MASTER 2014.11.08 Sat 18:27

※過去のブログ記事は 原則として編集・修正していません。
 各記事の内容は投稿時のものであり、現在では異なる場合があります。
 最新の情報は、関係する内容について書かれた 最新の記事をご覧ください。

TOP