PC以上のものをターゲットにする場合、マウスを念頭に置いて開発する必要がありますか?


15

かなり簡単な質問ですが、答えはわかりません。

マウスを使用するユーザーコントロールを開発するか、マウスを完全に無視してボタンコントロールのみを使用する必要があります。

例は次のとおりです。

アイテムをクリックしてピックアップするか、アイテムの近くに移動してボタンを押してピックアップします。

特にPC以外のプラットフォームをターゲットにしたい場合、これについてどう思いますか?


4
「アイテムをクリックしてピックアップするか、アイテムの近くに移動してボタンを押してピックアップする」これに関する警告。それを実装することは可能でしたが、Diablo IIIの開発者は、ユーザーが取得した略奪品の感覚をユーザーに与えるのを助けたため、それをしませんでした。考慮すべきことです。
ベイランクール

3
離散入力にマウス入力を強制しないでください。極端に言えば、典型的なローグライクゲームは、マウスなしで完全にプレイ可能でなければなりません。正確な入力が必要な場所でのみマウスを使用してください(例:画面上の特定の範囲のピクセルをクリックする、オブジェクトをターゲットにするなど)。より高速で簡単な入力を好む人のために、メニューオプションのナビゲートとダイアログオプションの選択は、ホットキーと矢印/タブナビゲーションで利用できる必要があります
-KABoissonneault

回答:


37

はい、ゲームをPC上で実行したい場合は、初期の設計段階からマウスの最適な使用方法を検討する必要があります。同じことは、ターゲティングを検討する他のすべてのプラットフォームの入力機能にも当てはまります。

異なるプラットフォームへの良いポートと悪いポートの主な違いの1つは、異なる入力スタイルに対応するためにどれだけの労力を費やしたかです。

  • コンソールプレーヤーはゲームパッドを使用します。これらの不器用なサムスティックで物事を正確に指し示す方法は、PCゲーマーとしての私には常に謎です。しかし、標準のゲームパッドで利用できるすべての異なるアナログ入力軸には、いくつかの興味深い可能性があります。テキスト入力はいらいらし続けますが、人々が思いついた本当に興味深いUIソリューションがいくつかあります。
  • 時々 PCユーザーはゲームパッドを持っているますが、多くのは持っていないか、マウスの使用を好みます。彼らは、マウスが利用可能なときにキーでメニューをナビゲートしなければならないとき、それを本当に嫌います。また、キーボードショートカットを使用して一般的なアクションを使用できることも期待しています。
  • モバイルユーザーにはタッチスクリーンがあります。マウス入力よりも精度ははるかに低くなりますが、圧力感度、スワイプ、マルチタッチジェスチャなどの追加の入力方法を提供します。「仮想ゲームパッド」、つまりゲームパッドのボタンを隅に置き、プレーヤーがそれらを押すことを期待することは、触覚フィードバックの欠如と画面スペースの減少に悩まされる非常に怠zyな回避策です。

そのため、別のプラットフォームへの適切な移植を行うには、入力方法を再検討する必要があります。多くの場合、ユーザーインターフェイスをゼロから再設計する必要があります。開発の初期段階からそれを考慮し、すべてのゲーム機能を異なる入力方法で適切に実装できるようにすることで、痛みを軽減できます。


応答する前に、これについて2回目の確認を得るまで待っていました。皆さん、すべての答えをありがとう。これで問題が解決しました。PC用のマウスを使用して開発し、さまざまなプラットフォームの入力を調整します。
シェル

私の経験では、ほとんどのPCゲーマーはゲームパッドを持っています。それが私の唯一の批判です。
ファラプ

@Pharapただし、ゲームによっては、PCのユーザーはコントローラーを使用したくないため、PCでコントローラーのデザインがイライラする場合があります。このトピックについて考えると、忘却とスカイリムの在庫システムが頭に浮かぶ。キーボードとマウスの点では巨大なPITAですが、ゲームパッドの点では意味があります。
TyCobb

3
PCゲーマーとして、ゲームに適している場合は実際にマウスを使用する必要はないことを指摘したいと思います。そのため、キーバインドの設定を許可してください。たとえば、ロケットリーグではキーボードのみを使用しています。これには、メニューのナビゲートが含まれます
-lucidbrot

1
@CGriffinそれは、人々がプレイを好むと言ったゲームの種類に依存すると思います。誰かが主に暴力的なFPSゲームやビジュアルノベル、ポイント&クリック、RTSゲームをプレイしている場合、コントローラーを所有していない、または欲しくないのは理にかなっていますが、第三者のアクションゲームやプラットフォーマーや特定のパズルゲームのようなものは所有するのがはるかに理にかなっています入力用のコントローラー。残念ながら、これに関する統計を見つけることができないので、YMMVに書き留めます。私は、ゲームがユーザーにゲームパッドを必要とさせるべきだと言っているわけではありませんが、ゲーマーがゲームパッドを所有することは「珍しい」ことではありません。
ファラプ

6

はい、そうすべきです。

PCユーザーは、ゲームをプレイするためにマウスを使用することを期待しています。それを使用しない場合、特にゲーム内の一部のアクションをマウスでより自然に達成する必要がある場合、ゲームは「貧弱なモバイルポート」としてラベル付けされる危険があります。

また、一部のPCユーザーは、キーボードを使用した基本的なゲームプレイ以上のものがあることを期待することにも留意してください。

ターゲットデバイスの入力機能を可能な限り活用して、モバイルユーザーとPCユーザーの両方を満足させることをお勧めします。


5

いつものように依存します。

何のジャンル?お金/時間はいくらですか?あなたはお金を稼ぐためにアプリケーションを開発していますか?

ユーザーは一般的に、ニッチゲーム(たとえば、独立した開発者によるJRPG)の不適切な入力コントロールについては驚くほど寛容ですが、さらに売りたい場合は、より良い入力コントロールがプラスになります。

予算が非常に少なく、販売から直接利益を得られない場合(教育ソフトウェアの開発に一定の時間を支払う慈善基金など)、1つの入力方法を適切に実行するのが賢明です-複数の入力方法をうまく行うかなりの時間がかかります。

ゲームをリーズナブルな価格(20ドル以上)で販売し、かなり多数のバイヤー(5万人以上)にリーチしたい場合は、マウス、キーボード、タッチスクリーン、最初からゲームパッドデバイス。マウス/キーボードゲームでゲームパッド入力を単に「後付け」する方法はありません。

*ゲームをタッチ、ゲームパッド、およびマウスフレンドリーにする方法を考えると、実際には良い解決策が存在しないことがわかります。このようなケースは非常に一般的です(リアルタイム戦略ゲームがクロスプラットフォームになることはめったにありません)。そのような場合、通常の解決策は、ゲームに必要な入力形式をサポートするデバイスでのみリリースすることです。


1

これは、平日の種類によってまったく異なります。

3Dゲーム
ほとんどの一人称ゲームを見ると、マウスは周りを見回すためだけに使用されます。コンソールに移植する場合、アナログスティックとボタンを使用し、モバイルでは、スワイプを使用して、画面上のボタンである他のコントロールをできるだけ少なくします。良い比較のために、Minecraftの異なるリリースのビデオを見てください。

2Dゲーム
相互作用が2D空間にあるゲームの場合。次に、説明したようにマウス操作を使用することができます。しかし、考慮すべき最も重要なことは、キーボードからマウスに手を戻したり戻したりする頻度です。モバイルでは、使用したいすべてのボタンが画面上にある必要があるため、選択の余地はありません。たとえば、モバイルで必要な場合にのみ表示されるボタンを使用することを検討できます。たとえば、アイテムに近づくと、ボタンを画面に表示できるのは、それを拾う可能性が残っている場合だけです。2Dゲームでは、ポイントアックスはPCとモバイルでうまく機能しますが、アナログスティックが使用される可能性があるため、コンソールでは少し不格好になる可能性があります。

ただし、PCでマルチプラットフォーム用に開発する際に考慮すべき最も重要なことは、他のプラットフォームよりもはるかに豊富なボタンを自由に使用できることです。したがって、必要なボタンの数を最小限に抑え、(利益PCのために)片手でマウスを、もう片方でキーボードを使用し、ゲームコントロールを他のプラットフォームに問題なく印刷できるようにします。


1

はい、そうすべきです。ただし、抽象入力クラスまたはインターフェイスに対して開発し、ハードウェアの種類に応じて、ユーザーがこれに対して対話できるさまざまな方法を実装します。

私はあなたのゲームについて具体的には知りませんが、例として、次のようなメソッドで抽象クラスインターフェースを作成します

bool lookingUp();
bool shooting();

そして、それらを具象クラスに実装します、例えば:

bool lookingUp() {
    return mouseIsMovingUp(); // e.g. PC
}

bool lookingUp() {
    return isTrianglePressed(); // e.g. Gamepad
}

bool shooting() { // e.g. phone
    return screenPressedAt(10, 10);
}

次に、ゲームで、ハードウェアタイプに基づいて具体的なクラスを作成します。これによりコードが簡潔になり、さまざまなプラットフォームに簡単に対応できます。


一般的な考え方は正しいですが、通常、ゲームでは常に状態をチェックするのではなく、入力イベントに反応します。
ロテム

@Rotem通常は、使用されるフレームワークまたはライブラリにすべて依存します。私は通常、両方の組み合わせを使用します。たとえば、「発生」時に「シュート」のイベントを取得してブールに保存し、ゲームループの反復ごとにブールをチェックします。これにより、マルチスレッドの問題も回避されます。
スティーブスミス

-3

私は悪魔の擁護者を演じるつもりです。私は最近のレポートでルートメトリックによる問題を抱えています。より多くの人がPCよりも携帯アプリを使用しています。そうです、モバイルが引き継がれただけでなく、モバイルアプリはデスクトップユーザーを合計して超えています。

そうは言っても、消費者は利便性を好み、マウスを必要とするデバイスを持っているかもしれません。ちょっとした考え。


だから.... PC以上のものをターゲットにするつもりなら、OPはマウスを念頭に置いて開発すべきですか?
ベイランクール

これがどのように質問に答えるかわからない。
ブライアンH.

これは、質問に対するコメントとしてより良いでしょう
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.