2012-04-11 5 views
0

私はWindows用のインターフェイスを設計しました。私はそれを開発したい。比較X.N.A&W.P.F

Windows用のシェルを書くのではなく、私がたくさんのことを学ぶ必要がありますし、もっとたくさんの新しいことを私はフルスクリーンアプリケーションを作ることを考えています。このアプリを通じて。私はMicrosoft Surfaceも同じだと思います。

私は自分のオプションを見ていました。私はマネージコードでこれを行うことに決めました。私の専門知識があり、開発が容易なC#cuzです。その後

私は、WPFまたはXNAから選ぶ私はXNAを説明させて上に保持する必要があります。私はまだWPFを知らないので、それは力はわかりませんが、XNAを使って「インテンシブグラフィックス」をいくつか入れてみると、「パーティクルシステム」やものを使うことができます。 XNAで作業したことがあれば、XNAの機能を使いながら、2Dとすべてのインターフェイスを作成して、何を意味するのか知ることができます。

他のオプションはWPFです。わかりません。したがって、自分で決断を下すことはできません。

WPFを知っている人& XNAも同様です。

「C#+ XNA」を使用してはならない理由は何でしょうか。また、この組み合わせにはどのような欠点がありますか。

なぜ私はWPFを使用するか、WPFは良い十分なグラフィックスワイズになるだろう

私は何をアニメーションのように、私は文字通り何の意味などなど意味

PS

私は私がする必要があることを知っています1つの答えを選択してくださいが、すべての答えは私にとって非常に有益な議論になります。

+1

あなたの質問はあまりにも曖昧です。具体的なものを尋ねてみてください。 – ColinE

答えて

1

ゲームプログラマーとして、私はWPFへの移行が非常に難しいと感じました。それでも、GUIデザインの面ではXNAよりも数マイル先です。あなたのアプリケーション(あなたが本当に話しておくべきことです)がGUIに依存してユーザーのやりとりをしている場合は、GUIシステム全体を最初からXNAで作成する必要があります。それは私にとって楽しいとは言えません。

WPFにはリッチメディアアクセスがあります。コントロールでレンダリング変換を実行できます。また、3Dオブジェクトのレンダリングを可能にするViewport3Dオブジェクトもあります。私はそれの有効性を確認することはできませんが、クイックGoogle検索もparticle engineを立てた。

基本的には、GUIアプリケーションを作成する場合は、WPFを使用して目的に合わせて調整する方法を学びます。 GUI /ページシステム全体をXNAに書き込まないようにしてください。これはXNAの目的ではなく、ゲームのGUI機能を作成する経験が少ないことから、それは大きな苦痛であることがわかります。

0

XNAがWPFよりも多くのプラットフォームに向いているので、あなたの状況に合わせて、XNAが良い方法かもしれません(WPFも同様のサポートを提供するはずです)。

Xiaベースのアプリケーションは、MonoGame(http://monogame.codeplex.com)経由で、iOS、Android、OS X、Linuxなどで実行できます。

+0

クロスプラットフォームは重要ではありません私はたくさんのたくさんのWindows APIコールを作っていきます... – Moon

1

XNAとWPFは基本的に異なるテクノロジなので、状況に適したテクノロジを選択する必要があります。 XNAはゲーム開発者向け、WPFはアプリケーション開発用です。

グラフィックスカードを使用する必要がありますか? Xbox 360用のゲームを書く必要がありますか? XNAを選択します。

ユーザーがデータを表示および編集できるデスクトップアプリケーションを作成する必要がありますか。これには、Webブラウザ、メディアプレーヤー、ワープロなどが含まれます.WPFを選択します。

+0

:)ゲームやアプリを分けるためのハードラインはありません。 XNAとWPFの両方があなたのグラフィックカードを大きく利用しています。 –

+0

前のコメントのリンク、http://msdn.microsoft.com/en-us/ms742196.aspxしかし、私は、この答えでは各技術が設計した基本的な方法が正しいと付け加えます。 –

+0

@LexLiあなたは大丈夫です。私の主張は、仕事のために設計されたツールを選択するだけです。 XNAはゲームを対象としているので、IMHOは何かに踏み込んではいけません。 WPF(またはその他の技術)でも同じです。 –