myaon が 2021年02月24日13時04分50秒 に編集
コメント無し
本文の変更
バーチャル空間における入力を色々なものに置き換えることに興味を持っていた私は、手始めにmicro:bitでclusterコントロールしてみることにしました。
*[cluster](https://cluster.mu/)はバーチャルSNSのひとつでPC版の移動はキーボード、ボタンclickによるリアクション機能等がある。
[](https://makecode.microbit.org/72357-02936-07165-35900) 

完成品:https://youtu.be/zWOsLJudnfs 仕組みとしてはmicro:botの情報(ボタンと加速度)をシリアル通信でPCに送り
[micro:bit側プログラム](https://makecode.microbit.org/72357-02936-07165-35900)
 PC側のpythonプログラムでそれを受け取りpyautoguiで仮想キー入力に置き換えることで実現しています。 [Pythonでキーボード操作!キーを打たずに自動化できちゃう!?](https://www.lisz-works.com/entry/pyautogui-key) ```python:micro_cluster.py import pyautogui as pgui def Key(word): pgui.typewrite(word) def Click(x,y): pgui.click(x,y) import serial while True: ser = serial.Serial("COM4",115200,timeout=None) line = ser.readline() line = str(line) # マウスカーソル位置確認 # print(pgui.position()) # 加速度の入力を分岐:移動 if(',' in line): l = line.split(',') s = l[0].lstrip("b'") # 左右 if (int(s) > 400): Key("d") elif (int(s) < -400): Key("a") # 前後 if (int(l[1]) > 400): Key("s") elif (int(l[1]) < -400): Key("w") # ボタンA:リアクション1 if(line[2] == "w"): Click(12070,2114) # ボタンB:リアクション2 elif(line[2] == "s"): Click(12350,2114) # ボタンA+B:停止 elif(line[2] == "q"): break ser.close() ```
これを頭に乗っけて動かしたり、対応する情報とキー入力を入れ替えることでより没入感がアップするかも!? お試しあれ
これを頭に乗っけて動かしたり 対応する情報とキー入力を入れ替えることでより没入感がアップするかも!? お試しあれ~!