はじめまして、22のyasudaです。
この記事はrogy Advent Calender 2022の6日目の記事です。昨日のはんだ付けVR Part1の記事に引き続き、Part2では3Dモデルやゲームの背景について書こうと思います。ブログみたいなものを書いたことがないんですが、読むに堪える記事を書けていたら幸いです。
軽く自己紹介をします。
僕はAssistとCG-SQUAREに所属しています。ロ技研にいると全知全能の神の対義語が僕なんじゃないかと思ってしまうほどに、あらゆる技術についての素人ですが、優しい部員の方々の助けを借りて何とかロ技研っぽい(?)活動をしています。
最近はVRやARに興味を持ち始めました。これが今回のプロジェクトに僕が参加した一つのきっかけです。
ゲームプレイの手順のイメージ
プロジェクトの具体的な作業を進める前に決めることは、完成するゲームのイメージです。部室ではんだ付けをするVRゲームというコンセプトが決まると、次にゲームプレイの手順を大雑把に決めました。考慮するのは以下の点。
- 体験者の多くが電子工作に詳しくない(であろう)
- 展示するゲームなので体験時間が長すぎてはよくない
そこでゲーム内の達成目標を電子工作の初歩であるLチカをすることに決めました。電源には電池を使用することにしました。また、作業量を考えてはんだ付けをする部品は抵抗とLEDの二つにしました。Lチカを達成するとの達成感と操作のしやすさを考慮して、タクトスイッチを押すことではんだ付けされたLEDが光るようにしました。
プロジェクト開始!
VRゲームを完成させるために必要なことをざっくりとまとめると、
- Unityの基本的なAssetを用意する。
- 3Dモデルを作成する。
- 3Dモデルなどにスクリプトを付与する。
となります。
僕は技術力はありませんが、偶然にもUnityとBlenderに少し触れたことがあったので、この二つを使いながら3Dモデルを作成するという担当をしました。上の番号で言うと、2番を僕がやりました。以下ではこの3Dモデルについて書いていこうと思います。
3Dモデルの作成
VRゲームに利用するモデルということで、コントローラーを使って掴むときの操作感などを考慮して抵抗とLEDのモデルのスケールを現実よりよっぽど大きなものにしました。
↓手のひら大の巨大なLEDをつかむ画像
他に考えることは、どれくらいモデルを作りこむのかという点です。
ある程度こだわってリアリティのモデルにしないと、「はんだ付けをやっている感」がでない。(例えば抵抗をただの筒にすると安っぽいゲームになりそう。)でも、こだわりすぎてもゲームが重くなりそうだし、何より短い開発期間を考えると完成がままならなくなりそうだと思いました。
こんなことを考えつつモデルをつっくて行きました。それでは今回僕が作ったモデルを紹介します。
LED
ちゃんと足の長さに差をつけて極性を表現しています。透明できれい。
抵抗
実際の抵抗を参考にしてクビレのある抵抗を作りました。
カラーコードは見た目だけを重視したのでテキトーです。手のひら大の巨大な抵抗です。現実でこれくらいの大きさの抵抗を作った方の動画を見つけたのでなんとなく貼っておきます。
ニコニコ動画より↓
巨大電子部品作ってみた
基板&電池
穴が開いていて、はんだをつけるところは金属感のある色になっています。
電池とスイッチ用の台が取り付けられています。スイッチの押す部分は後付けしました。
はんだごて
部室にあるはんだごてがモデルです。少し先端にこだわりました。
このVRゲームではやけどしないので安心。
はんだ台
作るのに一番時間がかかりました。
3DモデルはすべてBlenderからUnityにfbxというファイル形式で出力したんですが、このモデルについてはUnityに持ってくるとモデルの一部の面が透明化してしまう現象に悩まされました。Blenderでの法線の設定をいじると解決しました。少し複雑なモデルであるが故の問題だったようです。
基板に盛られたはんだ
はんだ付けがされると基板上に現れるはんだです。
曲線にこだわりました。美しい。
使われなかったモデルたち
いくつかのモデル作りは徒労に終わってしまいました。
電子工作の環境を再現するために、ぐるぐる巻きのはんだを作りました。
でもよく考えてみるとゲームの体験自体にはクリティカルに必要なものではなく、実際に置くとゲーム内の机の上に邪魔なものが増えるだけなので使いませんでした。
はんだ付けをしやすいためにゲームでは切り取られたはんだの棒を使いました。
完成したゲームではきれいな円柱型のはんだ棒が使われましたが、僕は現実的なはんだを作ろうと、ちょっと曲がったはんだの棒を作りました。でも当たり判定などをつけるときに不便になるだけなので、これは使いませんでした。
ゲーム内で使用した赤色以外のLEDです。
LEDをつけたり外したりしていろんな色を試せると面白いと思いましたが、時間の都合上この案は実現せず、このモデルはむなしく残りました。
個人的まとめ
まだYoshizoeさんの担当のプログラムやゲームの背景の話がされてませんが、僕なりに今回工大祭に向けてVRゲームを作った感想を書きたいと思います。
強く感じたこととしては、自分以外の誰かに提供するものを作るときにはユーザー目線で考えることが重要だということですね。何かにこだわってものを作っても、ユーザーがそれに無関心だったら所詮は自己満足になってしまうんだなあ…と。でも技術的なことを含め、たくさんのことを勉強できた良い体験になったので個人的によかったです。
明日はYoshizoeさんによる最終回Part3です。