2016-08-15 3 views
-1

私はa gameを複数回実行してお友達と画面を分割して再生するan applicationを作成しています。私のアプリケーションで新しい、まだリリースされていないコンソールモードを使用する場合は、まずコントロールパネルで2つのカスタム解像度を手動で設定する必要があります。誰もが、ゲームインスタンスを起動する前に、これらの解像度をC#コードで設定できる方法を知っていますか?どのようにC#でカスタムウィンドウコントロールパネルの解像度を設定しますか?

+0

これは関連するかもしれません:http://stackoverflow.com/questions/15099523/changing-console-windows-size-throws-argumentoutofrangeexception – NoChance

+0

私はコンソールウィンドウの高さや幅を変更していないとは思いません。 – PlGGS

答えて

-1

解像度を設定するには、P/Invokeを使用する必要があります。 MSDNライブラリhereの例があります(タスク2までスクロールしてください)。別の例は、同じアプローチを使用するhereです。

+0

これはどのように役立つか分かりますが、悲しいことに私が探しているものではありません。 Windowsには、画面とウィンドウのレンダリング時にコンピュータが使用するためのプリセット解像度が付属しています。これらの解像度には、NvidiaおよびAMDコントロールパネルで追加できます。これらのリストのいずれかに新しい解像度を追加した後でのみ、コンピュータはHalo:Onlineなどのゲームをこれらの解像度で実行できますか?今では、手動でコントロールパネルを開いて手動で設定することなく、これらのリストのいずれかに解像度を追加する方法を見つけることができません。私は画面解像度を設定するつもりはない。 – PlGGS

+0

わかりました、ありがとう、@PlGGS。残念ながら、これを実現するためのWindows組み込み方法についてはわかりません。この場合、ベンダー固有のAPIを使用する必要があると思います。しかし、グラフィックスエンジンは、(あらかじめ定義された)解像度でレンダリングする際に何か問題があってはならないので、おそらく解像度設定を持つ設定ファイルがありますか?値を編​​集して何が起こるかテストできますか?スプリットスクリーンアプリは、ゲームを開始する前にすべての設定ファイルを編集することができます。 –

+0

私は、バストニアを参照してください。このアプリは、使用しているPCで定義されている解像度のリストからユーザーが選択した解像度を定義しています。この機能を実装する前に、人々は[this](https://www.reddit.com/r/HaloOnline/comments/4qi0qm/halo_online_split_screen_done_right/d4tbgz0)のように手動で行います。あなたのPCがリストアップしていない解像度で実行するようにゲームを設定すると、それはリストに最も近いもので実行されます。だからこそ、上のスレッドの人は、それを動かすためにリストに新しい解決策をつけなければならなかったのです – PlGGS

関連する問題