テラシュールブログ

旧テラシュールウェアブログUnity記事。主にUnityのTipsやAR・VR、ニコニコ動画についてのメモを残します。

【Unity】C#ジョブシステム、VRエディタ、タイムラインエディタにOctane Renderer対応。Unite2016 LA 基調講演で紹介されたモノ達

先日行われたUnite 2016 Los Angelsの基調講演が公開されました。
2時間の動画を見るのは面倒なので、少しまとめます。

www.youtube.com

Unityとその周辺

最初はUnityのサービスや対応プラットフォーム云々についてみたいです。

Unityの理念について

Democratize development(開発の民主化)、Solve hard problems(難しい問題を解決する)、Enable success(成功を支援する)

f:id:tsubaki_t1:20161103221241j:plain

 

Unity Connect

自分のゲームやプロジェクトに欲しい、スキルやプロダクトを持つ人を探すサービス。

Unity Connect

f:id:tsubaki_t1:20161105002717j:plain

 

対応グラフィックAPI

Metalに続きVulkanにも対応。パフォーマンスが向上します。(対応してるデバイスなら)

Vulkan向けビルドはフォーラムで公開しています。
6分頃

f:id:tsubaki_t1:20161103221506j:plain


QA(Quality assurance:品質保証)について

メインとベータ、Experimental(実験)に分けてビルド。MainBuildは安定性を維持。
Experimental版は各機能毎にUnityフォーラムや専用ページで公開するみたいです。

UKにテスト拠点を配置して、もっとバグを減らす。
7分ごろ、

f:id:tsubaki_t1:20161103222102j:plain

 

Unity Collaborateのオープンβが開始。

使い方は【Unity】Unity Collaborate(Beta)を試してみる - テラシュールブログでも紹介しています。

サービスの紹介ページはこちら。Unity - Unity Services - Collaborate
9分頃

f:id:tsubaki_t1:20161103221702j:plain

 

Unityで作られてるゲームの現状。
ゲームのインストール数は50億、ユニークデバイス数は24億。割と凄まじい

f:id:tsubaki_t1:20161103222409j:plain

 

対応プラットフォーム

FacebookFacebook Gameroomにも対応。

Facebook Gameroom - ゲーム - ドキュメンテーション - 開発者向けFacebook
14分頃。

f:id:tsubaki_t1:20161103223047j:plain

 

対応プラットフォーム一覧。新しくNintendoSwitchやXiaomi(中国市場)にも対応。中国にはGoogleが無いので(ガチで繋がらない)、多分そこらへん。
17分頃。

f:id:tsubaki_t1:20161103223419j:plain

 

パフォーマンスと新しい機能関連

”待ち時間”を短くするワークフロー

アセットのインポート(起動時に云々したり、プロジェクトに入れた時に云々するアレ)を非同期にして、インポート完了まで待たなくても作業が出来るように。

また、毎回ビルドするのではなくホットリロード的なモノを追加する(予定
20分頃より。

f:id:tsubaki_t1:20161103223945j:plain

f:id:tsubaki_t1:20161103224156j:plain

 

CPUコアを目一杯使うネイティブレンダージョブスとC#ジョブシステム

ネイティブレンダージョブ機能の実装で描画速度が2.5倍になるそうで。とりあえずPS4向けに。

あとC#ベースのジョブシステムによって、複数コアによる制御が出来るようになるみたいです。

f:id:tsubaki_t1:20161103224327j:plain

f:id:tsubaki_t1:20161103224514j:plain

 

Metal対応、iOS/tvOS、それとMac

5.5でShader Cross Compile、GPU Instancing、Native Shader、5.6でCompute Shader、ソレ以降にTessellation等に対応みたいです。
40分頃

f:id:tsubaki_t1:20161103225154j:plain

f:id:tsubaki_t1:20161103225255j:plain

 

ImageSequencerについて

スプライトをパーティクルのアニメーションとして再生するImageSequencerの紹介。スプライトはHoudini から持ってきてるらしいです。オーバードローを減らす為にサイズを調整したり、コマ数やらその辺りも調整出来るみたいです。

ImageSequencer向けビルドはフォーラムで公開しています。

https://forum.unity3d.com/threads/release-thread-vfx-toolbox-image-sequencer.438465/
45分頃。

f:id:tsubaki_t1:20161103225532j:plain

f:id:tsubaki_t1:20161103225703j:plain

 

綺麗な画面効果

PostProcess-stackについての紹介。

アーティストに優しい、簡単に設定できるインターフェース。とりあえず綺麗に出来るので中々良い感じです。

PostProcess-stackはGithubで公開しています。

tsubakit1.hateblo.jp
53分頃

f:id:tsubaki_t1:20161103225823j:plain

f:id:tsubaki_t1:20161103225753j:plain

 

見てる場所のライトマップを優先的に焼くProgressive Lightmapper

一々ベイク完了を待たなくても良いので、ライト調整がかなり楽になりそうです。

1時間頃。

f:id:tsubaki_t1:20161103230036j:plain

f:id:tsubaki_t1:20161103230129j:plain

 

事例紹介

モバイル向けMMOを作った話で、エディタ拡張を超頑張ってます。
1時間7分頃。

f:id:tsubaki_t1:20161103230317j:plain

f:id:tsubaki_t1:20161103230221j:plain

 

タイムラインエディターについて

単なるシーケンスエディタではなくプロシージャルなカメラなど自由に組み合わせ、ブレンドができるそうです。
そう言うの良いからとっとと欲しかったと思わなくも。まぁでも、コンポーネントの動きとかもタイムラインで確認出来るのは便利に見えます。

1時間12分ごろ

f:id:tsubaki_t1:20161103230618j:plain

 

Octane RendererのUnity統合

Octane RendererがUnityに!5.6に統合されて誰でも使えるようになるそうです。曰く、

OctaneRenderは、世界初と最速のGPUアクセラレーション、先入観のない、物理的に正しいレンダラーです。

だそうです。ゲーム向けというよりは、リアルタイムレンダー向けですかね。

f:id:tsubaki_t1:20161103231228j:plain

f:id:tsubaki_t1:20161103231236j:plain

f:id:tsubaki_t1:20161103231242j:plain

そしてこのシャツである。

f:id:tsubaki_t1:20161103231606j:plain

 

VRとその周辺

Daydream対応。5.6から。一応Experimental Buildは公開してるみたいです。

Daydreamには是非ともdアニメストアを入れてもらいたい。大画面で動画を見るのは思ってたよりも楽しい

1時間32分頃

f:id:tsubaki_t1:20161103232249j:plain

 

新しいビデオプレイヤー

HWアクセラレータにも対応し、クロスプラットフォームで動作と中々。Unity 5.6で導入予定。360度ムービーとかをデモしています。
1時間42分頃

f:id:tsubaki_t1:20161103232547j:plain

f:id:tsubaki_t1:20161103232520j:plain

 

VRエディター

InspectorやProjectView、Profilerといった項目の他、小さな専用ウィンドウ上で俯瞰的に操作出来るっぽいです。

12月頃にソースコード含めてとして公開するみたいです。

f:id:tsubaki_t1:20161103232958j:plain

f:id:tsubaki_t1:20161103232828j:plain

 

Made with Unity

f:id:tsubaki_t1:20161103233338j:plain

f:id:tsubaki_t1:20161103233352j:plain

f:id:tsubaki_t1:20161103233548j:plain

f:id:tsubaki_t1:20161103233945j:plain

 

今回は結構盛りだくさんですね。

関連

blogs.unity3d.com

 

一方、日本の開催は5月8~9日で、東京国際フォーラムで開催予定みたいです。

japan.unity3d.com

UnlimitedHandを触ってきた話

先日参加したUnlimitedHandのためのUnity勉強会にて、UnlimitedHandに触る機会があったので、色々と遊んでみました。

unlimitedhand.connpass.com

UnlimitedHand

UnlimitedHandは、腕に巻くだけで直感的にVRゲームを操作でき、VRゲーム内の擬似的な触感も得られる2種類の新技術が搭載された「触感型ゲームコントローラ」という物らしいです。

実際、腕を振る・手を握るといった入力を受けると同時に、電気信号や振動によるフィードバックを返せるコントローラーという位置づけみたいです。

内蔵されたモーションセンサと筋変位センサアレイ*により、ユーザの手の動きをVRゲームに入力する。また、装置に内蔵された機能的電気刺激* により、ユーザの手の筋肉を収縮させてユーザに擬似的な触感を与える。

www.youtube.com

実際に触る

参加者はケースの袋を剥がして開封の儀から。袋を破くのは何時もワクワクします。

機能的電気刺激をする所(多分)には最初はシートが貼られているので、それを剥がす系の作業です。曰く、一番面倒くさい作業

ボタンを押して起動。

  本体にArduino studio(だったかな)で命令を送る系のお仕事。
テスト用は出力が超高いらしく、触ったら痛そうなので触るな危険

 Unityとの連携。

 ジェルパットを機能的電気刺激をする所(多分)に付けて腕に装着!
ボタンを操作するとビクンビクンって感じになるので、割とドキドキです。ビリ!チク!ってよりは、腕が勝手に動く。

 

最後のデモは写真撮ってなかったですが、鷲が手に止まり、しかも腕を突っつくなる、中々に凶悪な感じのデモが体験出来ました。手を突かれる度にビクビクアババババ

 

ちなみに聞いた感じ、実際には手に「手前・奥の圧力」を感じれる位のモノらしいです。やっぱりビクンビクンするのは出力高すぎなんじゃないかな。

 

感想

Arduinoが若干面倒臭い感じはありましたが、思ってたよりも簡単にセットアップ出来ました(同席の方が)

ただ、幾つか気になった事があって、

  • 装置を剥がす時にジェルシートが剥がれる(ヘタってきたら大丈夫)
  • 電気信号の初期値が強いのか、鷲が乗ってるというよりは痛い
  • 設定の問題か、手の形を思ってたより認識してくれない
  • Unity 5.4で不具合が出る
  • やってる人のリアクションが面白い(やる側は結構マジ)

この辺りは今後に期待という事で。

 

次回はハッカソンで実際にモノを作るみたいです。

unlimitedhand.connpass.com

関連

qiita.com

ascii.jp

ブログのロゴをもらった話

友人がブログのロゴを作ってくれました! ヽ(`▽´)/

中々に迫力満点な感じです。あと判子。

f:id:tsubaki_t1:20161027004147p:plain

 

とりあえず適応してみました。

ブログのトップに突っ込んでみたけど、どうだろう。登録してるデザインのせいか、フォームのせいか、ヘッダーの色が白一色になっちゃったのは、何だか違和感がありますね…何だかんだいって2年間同じデザインでしたし。
せめてヘッダーの背景色だけでも同じにしたい所ですが、やり方よくわからんとです(´・ω・`)

 

…いっその事、コレを機にデザイン変えるのもアリ…か?

f:id:tsubaki_t1:20161027005707j:plain

f:id:tsubaki_t1:20161027005837j:plain

 

そしてTシャツ。  …これはYシャツの下に着てバッと脱ぐ感じですね。スーパーマンみたいに

f:id:tsubaki_t1:20161027004223j:plain

…プロトタイプだったらしい。

 

せっかく作ってくれたので、10/29のUnity Style Developerにはコレ着ていこうかしら。

unitystyle.connpass.com

【Unity】壁や床の絵がチラチラするアレを何とかする

f:id:tsubaki_t1:20161026231609j:plain

今回は壁や床の絵がチラチラパタパタするアレ、
要するにZファイティングについてです。

 

壁や床の絵がチラチラするアレ

Unityを始めたばかりの人がよくやるミスなのですが、カメラを動かした際に地面の色がパタパタしてるケースがあります。

これは Z-fighting と呼ばれる物で、同じ空間に二つの面がある場合に発生します。どちらもZ値的には同じ値を持っているので、ピクセルを塗る際に競合し戦う事から、この名前が付いてるんじゃないかなと予想です。

f:id:tsubaki_t1:20161026232301g:plain

 

Zファイティングの解決方法

解決方法は大きく分けて3つです。

最も楽な方法が、片方の板をほんの少しズラす事です。同一の位置に無ければ問題は無いので、少しカメラ的に手前にズラす事で、Zファイティングはある程度回避出来ます。

例えば下の図では、y方向に(Unity 5.5なら)0.0001程ズラす事で、Zファイティングの範囲をかなり抑えています。

f:id:tsubaki_t1:20161026232845j:plain

 

なお小数点誤差やらで値を丸められると効果は無いです。例えば0.00001だけズラす場合、Zファイティングは起こります。

f:id:tsubaki_t1:20161026233146j:plain

 

Transform的にズラす他、シェーダーでoffsetを指定して少し手前もしくは奥にズラすアイディアもあります。

d.hatena.ne.jp

またCameraのNear Farの設定を狭くする事でも、ある程度の効果が見込めました。

f:id:tsubaki_t1:20161026234126j:plain

 

Unity 5.5の仕様変更

Unity 5.5にてZバッファを逆転したみたいです。これはGTA5で使われてる手法(WIkiperidaによると)らしく、より精細な情報を格納出来るようになるみたいです。

 実際確認してみると、Unity 5.4では0.001でZファイティングが起こるのに対し、5.5では0.0001からZファイティングが起こっています。

ただし、それによって幾つかのシェーダーは修正する必要があるみたいです。

qiita.com

docs.unity3d.com

あとで追記予定