1

最近スタークラフト II を始めたのですが、ゲーム自体よりも興味深い問題を思いつきました。

ゲームでカメラを制御するには、次の 3 つの方法があります。

  1. キーボードのキー [上][下][左][右]
  2. マウスで画面の端をスクロール
  3. スクロールするには、マウスの中ボタンを押したままにします

キーボードのスクロールがスムーズなので気に入っています。マウスでスクロールしたときのカメラの動きが気に入らない。

キーボード スクロールでは、左手がスクロールに忙しく、他のホットキーが使いにくいという問題があります。カメラのスクロールを行う手がもう 1 つあればいいのにと思います。

画面上部にウェブカメラも搭載。ウェブカメラをセンサーとして使うアイデアを思いつきました。

ウェブカメラの色や向きを簡単に見分ける方法はありますか? 実装は次のように見えます: マッチの各面を 4 色 (上、下、左、右) の各方向に 1 つずつ塗ります。マッチを口に入れ、舌を上下左右に動かします。

ウェブカメラがこれらの色を識別できれば、上、下、左、右の動きを行うのに最適なジョイスティックになります。

Starcraft II で使用したいのですが、一度実装すると、他のゲームや他のプロジェクトで使用できます。

私はいくつかのPythonを行うことができます。

ウェブカメラをセンサーに変えるプログラム可能なソリューションはありますか?

4

2 に答える 2

0

http://openkinect.org/wiki/Python_Wrapperにアクセスして、コードを入手してください。ラッパーを使用して動きを区別します (基本は、1 つのフレームを別のフレームで測定し、特定の mean_value(oldPixelArea, newPixelArea) の方向を計算することであり、それによってコントロールが得られます)。

次のステップは、スタークラフトにキーストロークを送信することです。これは、それ自体では..ブリザードを十分に知っている場合は許可されません。しかし、はい、使用できます: https://code.google.com/p/pywinauto/

Kinnect カメラを持っていない (または欲しくない) 場合。基本的にすべてを自分で実装する必要があります..画像フレームの読み取り(1つずつ)、3次元の動きの分析、または稲妻があまり変わらない選択された領域のみを「修正」として使用することからすべて方向の動きを読むためにポイントします。

Pygame はウェブカメラのデータを読み取ることができるので、それは良いスタートになるでしょう: http://www.pygame.org/docs/tut/camera/CameraIntro.html

于 2013-04-29T07:24:40.523 に答える