2015年7月3日 星期五

自定義遊戲控制器

自定義遊戲控制器

by楊禮忠

簡介:這是一個能夠自定義6個鍵盤按鍵、滑鼠移動和滑鼠左鍵的一個控制器。


說明:通過攝像機讀取我手上的LED燈泡,然後可以控制滑鼠移動(綠色LED),按下左鍵(紅色LED)。

也能夠自定義6個位置,分別代表6個鍵盤按鍵,然後手中藍色LED進入這6個位置的其中一個,就會輸入對應的6個鍵盤按鍵的其中一個。

開始時先到Strat->Webcam->Capture開啟攝影機,且放置到pnlWebcam中顯示。


接下來到Video Format去設定畫面解析度與影像的格式。
若是沒有設定,之後的所有顯示都會出現問題,因為畫面解析度太大可能會導致控制錯誤,格式不一致會讓程式的計算錯誤,所以這一步必須確認大小與格式。


 開啟CallbackFunction,讀取視訊中我的動作,圖中有基本說明。


設定想要模擬的按鍵位置與按鍵字元。


控制滑鼠的部分,需要把Control Mouse打勾,然後就會偵測綠色LED的位置,然後設定滑鼠在螢幕上的對應位置,滑鼠左鍵是偵測紅色LED。

此為控制鍵盤模擬輸入的部分,圖中使用記事本做測試接收,且因為目前還沒買藍色LED,所以使用紅色LED做代替。


這是一個類似大魚吃小魚的遊戲(可以到agar.io去玩玩看)
使用滑鼠,來讓細菌前進
空格鍵可以分裂細菌細胞
w鍵可以噴射部分細胞出去
以上的滑鼠,空格鍵,W鍵都可以通過本控制器來控制。

以下,來看看影片吧~~



心得:

因為我想不出一個遊戲方案,所以我就想:“不如做一個可以玩很多遊戲的一個控制器。”
實體控制器因為時間關係,且我的美工較差,所以實在不美觀,請大家見諒。
這個控制器還需要通過多次的微調才能更順利的使用(例如顏色偵測的RGB範圍精確等)。
我在這堂課學到了基礎的視訊的相關技能,可以通過攝影機,偵測拍攝到的部分,然後編寫程式來完成自己的要求,將來也能夠與有深度的攝影機做結合,這樣也能夠做出更多的變化。不過真正有用的還是了解了互動視訊程式的編寫。

沒有留言: