ピクシブ株式会社が2019年2月27日~3月8日に実施した短期インターンシップ「pixiv SPRING BOOT CAMP 2019」のVRoidコースに参加しました。
エントリー期間は2018年12月26日~2019年1月26日。 Twitterの告知ツイートを見て存在を知り、そのまま応募に至りました。
エントリー方法には通常選考とGitHub選考があり、私は前者で応募しました。 通常選考のフォームにもGitHubアカウントの欄があったので、伝えられる情報量の面ではGitHub選考の上位互換になっていたと感じます。 全10コースの中から技術セットが自分に合っていそうなものを探し、VRoidコースとpixivFANBOXコースを選びました。
応募からしばらくして、書類選考通過と面接案内のメールが届きました。 ピクシブのオフィスへの訪問は初めてだったので、わくわくしながら向かいました。 新宿駅に近くて(最寄りは代々木駅)便利な立地です。
面接にはVRoidプロジェクトから2名、pixivFANBOXプロジェクトから1名の社員の方々がお見えになりました。 各々の自己紹介や雑談を経た後、簡単な(ホワイトボード)コーディングテストを受けました。 応募フォームの「一番情熱を注いだこと」に「競プロ」を書いていたこともあって、テストは半ば形式的なものだったと思います。
記載したGitHubアカウントからthree-vrmの開発が認知されていたため、残りの時間では、three.jsにおけるVRMについての話題でVRoid Hubの方と盛り上がることができました。
ピクシブオフィスエントランス名物の絵馬
朝10:30、他の参加者と顔を合わせて自己紹介をしました。 「pixiv INTERNSHIP」と書かれたパーカーと名札を受け取り、毎週水曜日に開かれているという「全社会議」と「ランチ会」に参加しました。
その後、VRoid Studioチーム(とVRoid Hubチーム)のもとで環境構築を始めました。 セキュリティ、機密保持の観点から、インターンシップ参加者は貸し出されたマシンしか使わないことを義務づけられます。 面倒な面もありましたが、結果的に自分のマシンよりも高性能なゲーミングノートを借りることができ、終始快適に作業できました。
一段落ついたところで、メンターののりおさんや他の社員さん、もう1名のVRoidコース参加者の方と、インターンシップ期間中に取り組む課題について話し合いました。 かくして私は、VRoid Studio製モデルの軽負荷化に取り組むことになりました。
オフィスの一角でピザと寿司とスパゲティが振舞われました。
初めにVRoid Studioのリポジトリを共有いただきましたが、その後の作業のほとんどは新規作成したUnityプロジェクトで行いました。 VRoidモデルの軽負荷化にあたって、タスクが具体化・細分化されていなかったため、その調査が私の仕事となるそうです。 Unityや3DCGに特段詳しいわけではなかったので、終始Unityのリファレンスのタブを沢山開きながら作業していました。
マテリアルやメッシュをUnityスクリプトから操作するにあたって、リファレンスだけでは知識が不十分で、プログラムが思い通りに動かないことが多々ありました。 しかし、Slackで質問すると、非常にありがたいことに、強い方々に解決策をご教示いただけました。 そのおかげで、インターンシップを通して、3DCGの知見が大幅に広がりました。
実装方針を考える中で、箱詰め問題を解いたりトポロジカルソートの利用を検討したりするなど、競プロの知識が活かされそうな場面に出会いました。 結果的に実装工数の大きさを考慮して没案としましたが、その判断もまた競プロで培ったものなのだと思いたいです……。
ピクシブのオフィスは一見すると派手なのですが、実際に身を置いてみると適度な生活感があり作業に没頭できました。 社員さんの私物のイラスト本やフィギュアなどが至る所に置かれている点もピクシブらしいと思います。 ある日には、メンターさんが購入したSegway Driftを体験させていただきましたが、私は全く乗りこなせませんでした。
インターンシップを通して連日の満員電車を体験し、通勤の厳しさも学びました。
漁火 親子丼定食(700円 税込)
土古里 焼き牛丼(880円 税込)
焼肉を食べながらのFMS_Catさんとの雑談で、VRMの物理演算にはUnityに頼らない独自の仕様がある(UniVRMに実装が含まれている)旨を知り、後日three-vrmに実装を加えました。
インターンシップの課題はVRoid Studioを対象としており、幸か不幸かVRoid Hubのコードを閲覧する権限が与えられなかったので、機密保持契約に抵触することなくthree-vrm開発を続けられています。3月5日、招待制の勉強会イベントpixiv TECH SALONに参加しました。 Twitterで存在を知っていたものの、自分が参加できるとは思っていなかったので、招待をいただけて驚きました。
発表の中でもやはりthree.jsでVRMを表示するまでの道のりが興味深く、VRMを触っていくモチベーションも高まりました。
最終日、各参加者がスライドにまとめたインターンシップの成果を大勢の社員の前で発表しました。 発表時間を超過してしまい、猛省しました。
作業期間が終わり、課題を思っていたほど達成できなかったことに落ち込み気味でしたが、メンターさんは「十分な成果を残せている」と励ましてくださりました。
代々木駅近くの店で鍋をいただきました。 そして、メンターののりおさんからVRoidからVR、創作全般のことまで、様々なお話を聴くことができました。
ある人事の方にはTwitterのアカウントのアイコンやヘッダのものが何か尋ねられ、サメのぬいぐるみであることをお伝えし布教(?)しました。
ピクシブは遠い存在だと思っていたので、選考の通過にまず驚きました。 pixivなどのウェブサービスを提供している印象が強いだけに、ウェブにあまり強くない自分が通過したことを意外に思いました。
今回VRoidコースを体験し、社員さんや他コースの参加者さんたちを見て、クリエイターを第一に考えて柔軟に技術を取り入れていく空気を間近に感じました。
この8日間はとても楽しく、翌日何を実装するかわくわくしながら眠る日々を過ごせました。 そんなインターンシップ期間が終わってしまい寂しいです。
ピクシブの皆さん、ありがとうございました。