
XNA3.0上で実行した画面。ACL2.0と全く同じ手順でスキンアニメーションができる。詳細は
コチラ。
◎XNA3.0に移行すべきか?元SEの性(?)なのか、私は特に必要がない場合はソフトウェアのバージョンアップをしないタイプです。
手間がかかるし、不具合が発生すると嫌なので、安定環境のまま延々と引っ張ります。
XNA3.0はZune対応をウリとしていますが、私はZune対応する予定はありません。そのためXNA3.0は私にとって魅力が少ないように感じます。
しかし今は三国志軍記のプログラム開発を始める所です。移行には絶好のタイミングと言えるでしょう。そこで今回は移行するメリットとデメリットを整理し、移行可否を検証します。
◎メリットとデメリット私がXNA2.0からXNA3.0に移行するメリットを記述します。
A:コンテンツが圧縮されてファイルサイズが小さくなる
B:マイクロソフト社のサポートを長く受けられる
C:将来XNAをさらにVersionUPする時のリスクが少なくなる
また、デメリットは以下の通りです。
a:移行に手間がかかる
b:不具合が発生する可能性がある
c:ヘルプやサポート情報が日本語化されてないものが多い
d:アニメーションライブラリ(ACL2.0)が動かない可能性が高い
…正直あまりメリットは感じませんね〜。直接的なメリットはAだけですか?
まぁ、既存の資産は少ないので、aとbはちょっと頑張れば何とかなるでしょう。cは時間が解決すると思うので、それまで耐えるだけの話ですが、dが解決できないと致命的ですね。
◎XNA2.0からXNA3.0への移行マイクロソフト社のHPを確認すると、XNA2.0とXNA3.0は同居可能とありました。これはありがたいですね!昔の資産は無理に移行せずに済みますし、移行する場合でもそれぞれの環境で試しながら移行できます。
ちょっと意欲が湧いてきましたよ!というわけで検証開始!
・念のため既存ファイルをバックアップ
・Visual C# 2008 Express Edition と XNA3.0 をインストール
・Visual C# 2008 で XNA2.0 のソースを開くと、VisualStudio変換ウィザードが自動起動する(バックアップも行われる)
で、変換後のプログラムをビルドすると、ACL2.0関連でエラーになりました。予想通りですね〜。
プロジェクトに「参照の追加」でACL2.0を登録しても、ContentProcessorの候補一覧にACL2.0が追加されません。やはりXNA3.0でACL2.0は使えないようです。
◎アニメーションライブラリの移行私は今回XNA3.0+XNAnimation(ACLとは別のアニメーションライブラリ)を試そうと思っていたのですが、その前にACLのホームページを確認すると…あれっ?11/26にACL3.0らしきものがUPされてるじゃないですか!
これはタイミング的にかなりラッキーかも…早速検証開始!
例によってDwarfTutorial 3.0があったので、これをゲットして解凍すると、プロジェクトファイル名は「DwarfTutorial 2.0.sln」となっています。
とりあえずXNA3.0上で実行すると…XNA3.0上で問題なく動きました。ファイル名は昔のままですが、DLLはちゃんとXNA3.0に対応しているようですね。
新規プロジェクトを作成して「
XNA2.0でスキンアニメーション」の手順に従ってやってみると…おおっ動きました!手順もソースも全くそのままで動きましたよ!(冒頭図参照)
XNA2.0からXNA3.0にコンバートした既存プロジェクトのDLLを上書きコピーすると…ソース一切変更無しで動きました!DLL作者さんありがと〜!(^^)
◎3Dテストプログラムの移行これだけ手軽に移行できると、どこまで出来るか試してみたくなりました。というわけで、既存プログラムの中で最も複雑な3Dテストプログラムの移行にチャレンジ!
…エラーになりました。アニメーション系ではなく、漢字表示を実装しているコンテントパイプライン系のようです。
はぅ〜!
コンテントパイプライン系ってちょっと苦手なんですよね〜。もっと単純な実装にすれば良かったかなぁ…ブツブツ…。
まぁXNA2.0と3.0は同居できるので無理に移行する必要は無いんですけど、勉強がてら少し調べてみますかね…。
◎最後に今回はXNA3.0+XNAnimationの検証になると思っていたのですが、話は意外な方向に進んできましたね〜。
一応簡単にまとめると
・ACLの移行は、DLLを上書きコピーするだけ
・コンテントパイプライン系で問題あり?(調査は後日)
尚、ACL3.0にはXBOX360用のDLLも同梱されていますが、私はXBOX360不所持のため動作検証していません。
もし誰か検証したら、結果を教えてください。よろしく〜。
テーマ : ゲーム製作 関連 - ジャンル : ゲーム
コメントありがとうございます
ご指摘のとおり、Xbox LIVe コミュニティーゲームの配信サービスは、(XNAだけでなくゲーム業界全体において)将来のゲーム流通形態の先駆けとして注目されてますね!
日本ではまだサービス開始されてない&製作中のゲームが日本語ベースのため、私の頭から抜け落ちてましたが、将来的にはどこかで恩恵を受けるかもしれませんね。ゆるゆると期待しましょ〜!
管理人のみ閲覧できます
コメントの投稿