3

Wiimote の機能とハック可能性を見た後、「プログラミング入門」の最終回で本当に使いたいと思いました。誰もが Python プログラムを作成し、それをクラスに提示する必要があります。

Wiiリモコンを組み込んだpygameでゲームを作りたいです。c型を使用するwiiuseライブラリの非常に基本的なラッパーであるpywiiuseを見つけました。

LEDと振動以外は何も得られません。ボタン、IR、モーションセンサー、何もありません。wiiuse、pywiiuse、さらにはpythonのさまざまなバージョンを試しました。付属の例を実行することさえできません。簡単なテストとして作成したコードを次に示します。サンプル C++ コードの一部をコピーしました。

from pywiiuse import *
from time     import sleep

#Init
wiimotes = wiiuse_init()

#Find and start the wiimote
found    = wiiuse_find(wiimotes,1,5)

#Make the variable wiimote to the first wiimote init() found
wiimote  = wiimotes.contents

#Set Leds
wiiuse_set_leds(wiimote,WIIMOTE_LED_1)

#Rumble for 1 second
wiiuse_rumble(wiimote,1)
sleep(1)
wiiuse_rumble(wiimote,0)

#Turn motion sensing on(supposedly)
wiiuse_motion_sensing(wiimote,1)

while 1:
    #Poll the wiimotes to get the status like pitch or roll
    if(wiiuse_poll(wiimote,1)):
        print 'EVENT'

そして、これが実行時の出力です。

wiiuse version 0.9
wiiuse api version 8
[INFO] Found wiimote [assigned wiimote id 1].
EVENT
EVENT
Traceback (most recent call last):
  File "C:\Documents and Settings\Nick\Desktop\wiimotetext.py", line 26, in <mod
ule>
    if(wiiuse_poll(wiimote,1)):
WindowsError: exception: access violation reading 0x00000004

実行するたびに、トレースバックまでEVENTが2〜5回出力されるようです。この時点で何をすべきかわかりません。過去 2 日間、機能させるために努力してきました。

ありがとう!

4

8 に答える 8

3

pywiiuse ラッパーを更新しました。wiiuse の最新バージョン (この回答の時点で 0.12) 用に作成されたようには見えませんでした。これは、現在のイテレーションではほとんどが機能しないためです。

パッケージといくつかのサンプル スクリプトをここに投稿しました: http://code.google.com/p/pywiiuse/downloads/list

あなたもできるはずです

easy_install wiiuse

私もpypiでホストしているので。

于 2010-10-23T03:23:01.770 に答える
1

あなたのクラスはもう終わっていることは知っていますが、他の人にとっては、cwiid は本当に素晴らしいものです。次のようにUbuntuにインストールされます:

apt-get install libcwiimote-dev python-cwiid

またはgithubから最新のものを入手してください。

Wiimote センサー (加速度計からのピッチなど) の読み取りは非常に簡単です。

import cwiid
print 'place wiimote in discoverable mode (press 1 and 2)...'
wiimote = cwiid.Wiimote()
wiimote.rpt_mode = cwiid.RPT_ACC
#wiimote.state dict now has an acc key with a three-element tuple
print 'pitch: %d' % (wiimote.state['acc'][cwiid.Y])
于 2009-12-04T03:25:10.633 に答える
1

私は.NET 用のwiimotelibを使用してきましたが、かなり安定しています。また、nunchcuk などの wii リモート拡張機能も含まれています。

于 2010-11-27T06:44:36.727 に答える
1

まだ探している人のために、lightblue ライブラリを使用して Python で Wii リモコンとペアリングする簡単で簡単な方法を見つけて文書化しました。OS X でテストしましたが、クロス プラットフォーム (つまり Linux) で動作するはずです。

これが私の記事です:http://smus.com/prototyping-wii-remote-python/

于 2010-05-29T17:47:14.587 に答える
1

ほぼ 2 日間、Wii リモコンの Python ラッパーのセットを探していましたが、最新技術の概要を以下に示します。

pywiimote (Google から): ほぼ半分完成、最新バージョン (r52) をダウンロードしたときにコンパイルされませんでした。いくつかの素晴らしいアイデアがありますが、機能させるには多額の投資が必要です。

pywiiuse (上記): 理論的には素晴らしい

cwiid: 活発に開発されておらず、Linux 用のみ (Cygwin ではコンパイルできません)。

要約すると、現在 (2009 年 3 月 24 日) 既製品はありません。調査を続けます...

--ブライアン

于 2009-03-24T19:49:05.873 に答える
0

見つけたライブラリが失敗している場合は、Google Codeのpywiimoteが役立つかもしれません...時間があれば、試してみてください。

しかし、それはかなり新しい製品のようであり、これ以上良いものではないかもしれません。

幸運を!

于 2009-01-27T00:48:39.943 に答える
0

UweSchmidtによるWiimoteWhiteboardJavaバージョンをご覧になることをお勧めします。

http://www.uweschmidt.org/wiimote-whiteboard

Java用のWiiRemoteJライブラリを使用します。

私は過去にPython実装を使用しようとして失敗しました。これは、Python実装が不完全であるか、機能していないためです。たぶん、JavaでSchmidtの動作バージョンを調べることで、Pythonに何が欠けているかを判断できます。

あなたのクラスで頑張ってください。

于 2009-01-27T18:12:56.200 に答える
0

Python のバージョンを 2.5.2 に変更してください。

于 2009-06-23T18:45:22.600 に答える