【しずおかアプリ部】活動ログ　第30回

![しずおかアプリ部2.jpg](https://qiita-image-store.s3.amazonaws.com/0/88105/ee800648-fa25-1829-20c3-bad9c2055d35.jpeg)


##■タイトル##
第３０回


##■開催日##
２０１６年１２月３日（土）　１６：００～１８：００


##■参加者##
９名


##■活動内容（概要）##
・菅原プレゼン「Unityはじめるよ～NavMesh応用～」
・部員さんプレゼン「Gitでバージョン管理～リベース編～」
・菅原プレゼン「Unityはじめるよ～ブレンドシェイプ～」
・しずおかアプリ部でSlackを使おう
・雑談

##■活動内容（詳細）##

【実演・プレゼン】

**・菅原プレゼン「Unityはじめるよ～NavMesh応用～」**

　　前回のプレゼンで解決できなかった、オフメッシュリンクにまつわる問題の調査結果を発表。

　　・オフメッシュリンク間を不自然な動きで移動してしまう問題
　　　スクリプトを使って解決する。
　　　手順
　　　　　1、自動でオフメッシュリンクを超えないように NavMeshAgentの設定を変更する
　　　　　2、NavMeshAgentがオフメッシュリンクにたどり着いたか調べる
　　　　　3、NavMeshAgentからオフメッシュの始点と終点情報を受け取り、
　　　　　　　　スクリプトでオフメッシュリンクの終点まで移動
　　　　　4、NavMeshAgentにオフメッシュリンクを超えたことを通知
　　　手順３の移動処理に関しては、ゲームごと異なる実装になる。

　　・オフメッシュリンクを自動で作成した場合、飛び乗るオフメッシュリンクが作成されない問題
　　　　結論：手動で作るしかない。
　　　　自動でオフメッシュリンクを作成するGeneratedOffMeshLinksの設定項目「JumpDistance」は
　　　　飛び乗る高さを表しているものではなく 飛び越える距離を表すプロパティでした。
　

　　資料：[第29回_プレゼン資料(Unityはじめるよ～NavMesh応用～).pdf](http://monolizm.com/sab/pdf/第29回_プレゼン資料(Unityはじめるよ～NavMesh応用～).pdf)
　　プロジェクト一式：[NavMeshTest(応用編2)完成版.zip](http://monolizm.com/sab/src/NavMeshTest(応用編2)完成版.zip)

![スクリーンショット 2016-12-03 19.53.26.png](https://qiita-image-store.s3.amazonaws.com/0/88105/bd17a9ce-3880-db36-389e-d6f8e88594a7.png)


<hr>
　
**・部員さんプレゼン「Gitでバージョン管理～リベース編～」**

　今回の目的１　「リベースを覚える」
　　リベースとは、
　　　最新に対して再コミット (rebase) すること。
　　自分のブランチで行ったコミットを、別のブランチ(任意のコミット地点)に対して全てコミットし直す。
　　複数ブランチで運用中の履歴がキレイになる。

　今回の目的２　「競合の解決」
　　　リベースやマージを行った際に、他人と同じ箇所を変更してコミットし合った場合に競合がおこる。
　　　どちらの変更を適用するか、または手動で編集して競合を解決する必要がある。
　　　同じファイルを同時に変更しない予防が大切。


　　今回は部員が体験する部分が多く、やりごたえのある内容でした。
　　やはり「見る・聞く」だけより「体験」した方が覚えやすいですね。


　　資料：[第30回_プレゼン資料(Gitでバージョン管理～リベース編～).pdf](http://monolizm.com/sab/pdf/第30回_プレゼン資料(Gitでバージョン管理～リベース編～).pdf)
　　プロジェクト一式：[Git_Rebase.zip](http://monolizm.com/sab/src/Git_Rebase.zip)

![IMG_7438.JPG](https://qiita-image-store.s3.amazonaws.com/0/88105/a8cd48e3-ca0b-ae91-a5b7-3600f93a56f3.jpeg)


![IMG_7435.JPG](https://qiita-image-store.s3.amazonaws.com/0/88105/e079b8ef-e41d-dab0-e9d8-1c1352469644.jpeg)

<hr>


**・菅原プレゼン「Unityはじめるよ～ブレンドシェイプ～」**

　　　ブレンドシェイプは3Dモデルをアニメーションさせるための仕組みの一つである。
　　　ボーンを使わずにメッシュの頂点を動かしてアニメーションさせる技術。
　　　キャラクターの表情をコントロールするのによく使われるらしい。（瞬きとか）

![スクリーンショット 2016-12-03 20.14.31.png](https://qiita-image-store.s3.amazonaws.com/0/88105/45c890c1-72a6-c4f8-bfe5-4c48d3e7f799.png)

　　利用手順
　　　１、モデリングソフトでブレンドシェイプを設定する
　　　２、Unityでモデルデータを読み込んでブレンドシェイプを操作

　　Unity側でブレンドシェイプをコントロールする方法
　　　・モデリングソフトでアニメーションを作っておく
　　　・UnityでおなじみのAnimationを使う
　　　・スクリプトで制御（SkinnedMeshRendererのSetBlendShapeWeight関数で制御）

![スクリーンショット 2016-12-03 20.11.49.png](https://qiita-image-store.s3.amazonaws.com/0/88105/c88c0528-ba14-3c6e-8b36-b0a53a6d9371.png)


　　資料：[第30回_プレゼン資料(Unityはじめるよ～ブレンドシェイプ～).pdf](http://monolizm.com/sab/pdf/第30回_プレゼン資料(Unityはじめるよ～ブレンドシェイプ～).pdf)
　　プロジェクト一式：[blendshape.zip](http://monolizm.com/sab/src/blendshape.zip)



<hr>
　
**・しずおかアプリ部でSlackを使おう**
　　しずおかアプリ部内での情報交換、コミュニケーションツールとして、
　　「Slack」を部員さんにご紹介いただきました。

　　開発者を中心に右肩上がりで利用者が増えているサービスです。
　　現段階ではまだ英語版ですが、近いうちに正式に日本語対応するとのことです。
　　Slackの使い方自体、アプリ部の勉強会に取り入れて行きますので、
　　これを機にSlcakの使い方を覚えてはいかがでしょうか。

　　本日ご参加いただいた部員さんはその場で「しずおかアプリ部チーム」に参加いただきました。
　　本日参加されていない部員さんには、改めてご案内させていただきます。
　　しずおかアプリ部のSlack名は、

　　shizuapp.slack.com

　　になります。


<hr>

**・雑談**
　・Unity5.5がリリースされた
　　　パーティクルや、アニメーションの管理、スプラッシュスクリーンをGUI上で設定など、
　　　さらに使いやすいゲームエンジンに進化。

・部員さんがOculusTouchを予約したので、次回のアプリ部にお持ちいただけるかも

・AutoDeskのCadツール「fusion360」が個人では無料利用可能