株式会社サイバーエージェントを退職しました
はじめに
2018年9月28日をもって、株式会社サイバーエージェントを退職しました。
退職に至った経緯と、今後について記したいと思います。
TL;DR
- 評価に関してミスマッチを感じた
- 新しい環境でもxRをやっていく
【イベントレポート】CEDEC2018に3日間 参加してきました。
あまり盛れてないトップ画
はじめに
CEDEC2018に行ってきました。 今年は20回目となる節目の年で、任天堂の宮本さんによる基調講演などがありました。 テーマは『空想は現実になる』ということで、VRやVTuber、AI系のセッションが注目されていた気がします。
この記事では、聴講した各セッションの感想をまとめたいと思います。 VRやインディーゲーム、描画系に興味がある人には役に立つと思うので、ぜひ参考にしてみてください。
基本的に感想は全部ツイートしたので、ツイートの埋め込みメインです。
続きを読むGoogleカレンダーの過去の予定を全て非公開にする
TL;DR
- Export
hoge.ics
sed -e 's/TRANSPARENT/OPAQUE/' hoge.ics
sed -e 's/^CLASS:.*?$\n//' hoge.ics
sed -e 's/(^UID:.*?$)/$1\nCLASS:PUBLIC/' hoge.ics
- Import
hoge.ics
はじめに
誰かと予定を調整する時にいちいち空いてる日時のホワイトリストを作らなくても済むように、共有Googleカレンダーを作りたいと思いました。
そこで、折角なのでこの機会に自分の予定をすべてオープンにすることにしました。 Googleカレンダーには全体の共有範囲を、「非公開」「時間のみ公開」「全て公開」というように設定することが出来るので、「全て公開」に変更しようと思いました。
ここで一つ問題がありました。 今後登録する予定については公開前提ということを踏まえた上で登録できるし、もし差支えがある場合は個別に非公開に設定すれば良いです。しかし今までの予定は公開することを踏まえずに登録してきたものばかりです。そう大したことが書いてある訳ではないですが、公開することには抵抗があり、とはいえ削除してしまうのも可逆性の観点から微妙です。
そこで掲題のようにGoogleカレンダーの過去の予定を全て非公開設定に書き換えることにしました。
続きを読むHugo + GitHub Pagesでポートフォリオを作る
出来たもの
Nakaji Kohki https://nkjzm.github.io/
[
urlの先の内容が変わって趣旨が伝わらなくならないようにするためのgif
はじめに
知り合いがGitHubにResume(職務経歴書)をまとめていて良さそうに見えた。
土曜日を1日使ってポートフォリオを公開してみた。
続きを読むARKitのFace Trackingを使った『私、転がります。』を作った
この記事はOculus Rift Advent Calendar 2017の11日目の記事です。
元ネタ
ポノスさんの『私、転がります。』という生首を転がして遊ぶゲームからインスピレーションを得ました。
作ったもの
※ ぜひ音量を出してご覧ください!
解説
ARKitのFace TrackingはiPhone Xで追加された前面のTrueDepthカメラ(depthセンサー)を使った機能で、顔の各部位を認識や追跡を行うことができます。
今回はその機能を利用し、自分の口の動きを認識して画面上の生首を操作するゲームを作りました。
開発環境
MacBook Pro (Retina, 13-inch, Early 2015) macOS High Sierra Unity 2017.2.0p2 XCode 9.2
作り方
まず、AssetStoreからUnity ARKit Pluginをインポートしておきます。 https://www.assetstore.unity3d.com/jp/#!/content/92515 (ProjectSettingが上書きされるので、はじめにインポートした方が良さそう)
Assets/UnityARKitPlugin/Resources/UnityARKitPlugin/ARKitSettings.assetsでチェックを入れないと実機で動かないので注意してください。
インゲームを作る部分は省略します。 マウス押下で生首が飛ぶようなシステムを作りました。 小さな力で右回転をかけてあげるところがポイントです。
口の状態を取得するためには、Blendshapeを利用します。
UnityARSessionNativeInterface.ARFaceAnchorUpdatedEvent
にイベントを登録することで、Dictionaryから約50個ほどの状態を取得することができます。
ARFaceAnchor.BlendShapeLocation - ARFaceAnchor | Apple Developer Documentation
今回はjawOpen
というキーを利用して口の動きを取得しています。
これは顎の状態を取得するイベントですが、今回の用途には合致していました。
jawOpen - ARFaceAnchor.BlendShapeLocation | Apple Developer Documentation
ちなみに当初はmouthClose
やmouthFunnel
を利用しようと考えていましたが、うまく値を拾えませんでした。
mouthFunnel - ARFaceAnchor.BlendShapeLocation | Apple Developer Documentation mouthClose - ARFaceAnchor.BlendShapeLocation | Apple Developer Documentation
最後に
今回作成したプロジェクトは以下のリポジトリにpushしてあります。 github.com
ちなみに
ARKitRemoteという実機を繋ぐとUnityのEditor上でテストをできる仕組みが用意されていますが、遅延が酷すぎてビルドしちゃった方が効率がいいように思いました。(今回の規模なら1分くらいで実機ビルドできるので)
最後に
できればリアルタイムに今の自分の顔を転がすところまで作りたかったです。 ちなみに実際に声を出す必要もありませんが、出した方が楽しかったです。
以前DK2で頭を振り回すゲームを作ったのですが、今回のようにセンサーが増えると色々なインプットができるようになって幅が一気に広がるように思いました。
参考
ARKit+Unity ARKit PluginでFace Tracking - Qiita https://qiita.com/mybdesign/items/65a11d289c8fb5c4ae57
UnityARKitPlugin FaceTracking FaceBlendshapeで取得できるパラメーター - Qiita https://qiita.com/A_kkie/items/94c6cb0c290f04d55755