昨年、サンプルにつくっていたZune Original用のコードをとりだして、Zune HDで動作させてみました。
やり方は意外と簡単。「Zune Original用XNX 3.0で書いたコードを実行させるダケ」ならば、プロジェクトをXNA 3.1に更新してやって(Zune HD Extensionを今後導入してUIしあげるためでもある)、配置するだけでした。
つまり、共通部分はZune HDだろうが、Zune Originalだろうが、それこそPCやXbox 360であってもほとんどそのまま動いてしまうってことですね。いや、まぁ、そのためのXNAなわけですが・・・
で、気がついたこと。これは各プラットフォーム間の違いそのものでもあるのですが「入力の取り扱いが異なる」ということ。そう、Zune HDではZune Originalにくらべてボタンなどの操作が物理的にできないんですw これについては今後発売されるであろうWindows Phone 7についてもおなじなのですが、新しいタッチパネルAPIを使用するような入力インターフェースを実装しないとだめってことなんですよね。
今回Zune HDでZune Originalの時に書いたXNA 3.0用コードをZune HDで単に実行させてみただけですが、たしかにボタン操作をのぞいてそのまま動作しているようでした。でも、ボタン操作をタッチパネルに置き換えるというちょっとした入力用UIを実装しないと遊べない(´・ω・`)…
でもまぁ、ほとんどのソースがそのままっていうのはやっぱ楽だな~
Windows PHone 7もこんな感じでプログラムできるのなら私には楽なんだが・・・w いや、PCからの移植は確かに私はC++派なんで、、、もろ書き直しになるし、めんどいのはそうなんですけど、Silverlight4とか、XNA 4.0組み合わせることで移植性があがっているといいなぁとか。