ROBLOXでVRゲーム遊んでみた
息子くんの大好きロブロックスの話です。
以前からROBLOXにVRゲームが存在してたみたいなのですが、最近遊べるVRゲームがいくつか増えてきたとのこと。
家にあるVRヘッドセットはOculus Quest(オキュラスクエスト)というものです。
本来RobloxではOculus Questには対応していないのですが、
↑ このときのブログに書いたように、Oculus Quest が Oculus Rift として使えるようになったので、今ではROBLOXのVRゲームも遊べるようになっています!
それで最近「これおもしろい!」っていって見せてくれた、他の方が公開されているRobloxのVRのゲーム。人気のゲームのようですね!
空中に大きく浮いている怪獣のような顔は、息子くんのアバター。
VR対応のユーザ(VRヘッドセットを持っている人)は、孫悟空でいうところのお釈迦様のような存在となり、非VR環境のユーザーを手に乗せて高いところに乗せたり放り出したりして遊ぶことができます!
ちょっと上記GIF動画わかりにくいですが、息子くん皆を手に乗せては放り投げています。
これぞ、神々の遊び!
みんなも神に投げられたくてたまらなくてたくさんのユーザーが神の手のひらに寄って行っています。
その遊びを見て呆然と立ち尽くす私、という構図。
「私はここよー!」と言っても神にとっては大勢の愚かな民の中の一人。
神に見つけてもらうことは困難です。
・・・うけるw
↑ 実際はこうやって操作しています。両手に持っているVRコントローラーがゲーム上の大きな手となります。
ROBLOXでVRゲーム作ってみた!
ということでVRゲームを作ってみたい!となった息子くん。
ロブロックスでのVRの実装について英語で調べてもなかなか情報はないらしくかなりいろいろ試行錯誤したとのこと。
今回はVRのコントローラーがゲーム内で拳銃となって表示されボタンを押すと発砲する、というプログラムを作っていました。
息子氏、今日またまた新しいゲームを作り始めてました。
— しろいとり子 (@siroitori0413) 2020年5月7日
ロブロックスでVRゲーム!
ピストル持たせた〜と喜んでいます。 pic.twitter.com/vhCtvAlfBc
息子くんの作ってるRobloxのVRゲーム。ボタンで銃が発砲できるようになってた!
— しろいとり子 (@siroitori0413) 2020年5月9日
動画伝わりにくいけど、実際にヘッドセットつけてやると本当に銃を撃ってる感覚!
ここまで作るのに情報少なくてかなり苦労したみたい。 pic.twitter.com/qNqkXzY1eD
息子氏の今日のVR進捗状況
— しろいとり子 (@siroitori0413) 2020年5月10日
銃を発砲して人が倒れるところまで出来てました。
人に銃向けるのは好かんなーと言ったんだけど人じゃないオブジェクトを倒すのはそれはそれで実装が大変になるからとりあえず人で。と。
ちーん pic.twitter.com/sm3Xfp49pi
実装方法
「なかなか情報が無いから、情報を公開したい」と言われました。
その心意気大したもんだ!
将来は自分でブログなりGitHubなりで公開できるようになったらいいんだけどね。なにせ文章書けない(というか書きたくないのか?書けばいいのに)
下記部分が重要だから載せてほしいと言われたので抜粋しました。
local uis = game:GetService("UserInputService") --~~省略~~ uis.InputBegan:Connect(function(input, processed) if input.KeyCode == Enum.KeyCode.ButtonR2 then Shot() end end) -- UserInputService.InputChanged:Connect(function(input, processed) -- if input.KeyCode == Enum.KeyCode.Thumbstick1 then -- print("Thumbstick 1 :",input.Position.X,":",input.Position.Y) -- elseif input.KeyCode == Enum.KeyCode.Thumbstick2 then -- print("Thumbstick 2 :",input.Position.X,":",input.Position.Y) -- end -- end)
この部分の解説をすると、入力されたVR機器のButtonR2が押されたとき、Shot()という関数を呼んでいます。Shot()は息子くんの作った関数でこの中で銃の発砲処理なんかを行っています。
また下の方のコメント部分。
Thumbstick1やThumbstick2(ジョイスティック)が操作された場合はこのようにしてX, Yを取得できるそうです。
では、ButtonR2とかThumbstick1ってどこのこと?って話です。
RobloxはOculus Riftには対応していてうちのOculus QuestではOculus LinkでOculus Riftのように動作することが出来ているものの、Oculus Rift とOculus Questでは明らかにコントローラーが違うらしく、ボタンの割り当てがわからなかったため調べたそうです。
その結果がこちら ↓
Thumbstick1と2は左と右どっちかのジョイスティックでした!ごめんなさい、メモるの忘れました!(;'∀')
動かして試してみたらすぐわかると思います。
さいごに
最近はいっとき充電期間で開発もゆっくりだった息子くんですが、またプログラミング熱が加速してきた模様。
常に2~3個同時進行で頑張っています。
Twitterでは地味につぶやいてましたが、息子くんかの有名な『未踏ジュニア』に1次通過して2次面接(リモート)をうけ、さらに追加面接をうけました。
結果発表は今月末。これがもし採択されたらとても嬉しいです。なぜなら今回の息子くんの出した提案書の内容は「息子くん的にめっちゃやってみたい開発の内容なんだけどお金がかかるもの」だから。もし採択されたら50万まで支援が出るんですよね。
まぁーとはいえ採択されたらされたでコミュ障かつ自分中心で動きたい息子くんがちゃんとやりとりしながら最後までやり遂げることができるのか?(Zoom面接を一回やるだけで「もうきつくて体力の限界だ」とめちゃくちゃぐったりしてるし・・・)不安は大きくなりますが、されてもされなくても『学び』、得るものは大きいと思っています^^
採択されたら嬉しいけど、そうでなくてもお金なるべく節約してできる範囲で形を残せるようバックアップしていけたらなぁと思います!
関連記事
ロブロックス
siroitori.hatenablog.com
siroitori.hatenablog.com
siroitori.hatenablog.com
このほかにもいろいろ書いてます(記事一覧) ↓
siroitori.hatenablog.com
スター・はてブ有難うございます^^