タグ

ブックマーク / esprog.hatenablog.com (10)

  • ECS完全に理解した勉強会で登壇した話 - しゅみぷろ

    はじめに connpass.com 上記勉強会で登壇させていただきました。 今回の登壇では、あまり触れられることのないHybrid ECSについて、基礎部分をお話してきました。 Hybrid ECSでSpringBoneを高速化した話をしようか迷ったのですが、こちらはコード解説も必要になり、勉強会では煩雑になるかなと考えたため、後日改めてブログで書こうかなと思います。 おわりに いつもSNSや他勉強会等で観測している方々とお話することが出来、当に勉強になりました。 最近ブログ自体のモチベーションがあまり上がっていませんでしたが、そういった方々がブログを読んで下さっているとの事なので、ちょっと頑張ろうかなと思います。 再来週あたりにはShader勉強会を主催する予定なので、それ以降になるとは思いますが... Shader勉強会、まだまだキャンセル等で繰り上がるチャンスもあるかと思いますので

    ECS完全に理解した勉強会で登壇した話 - しゅみぷろ
  • UnityShader勉強会 資料公開 - しゅみぷろ

    はじめに connpass.com 上記イベントの資料を公開します。 登壇時間の15分では話せなそうなボリューム感になってしまったため、登壇の際は資料を大幅に削ったものを利用しました。 リンクは以下から。 docs.google.com 最後に Oren-Nayar、記事書いてなかったっぽいので今度詳細書きます。

    UnityShader勉強会 資料公開 - しゅみぷろ
  • SpringBoneのJobSystem化でわかったこと - しゅみぷろ

    はじめに Unityで揺れもの動かすの、重くない...? ということで最近ちょこちょこ作っているのがuSpringBone。以下のやつ。 github.com 揺れもの用のBoneを揺らすSpringBoneの計算処理をJobSystem使ってごっそりWorkerThreadに持っていこうというのがコンセプトです。 ベース部分しか作っていないのでまだまだ未完成なんですが、JobSystemを使う上で気をつけるべき事がわかってきたのでメモがてら色々書き残しておこうと思います。 ちなみにuSpringBoneは試行錯誤しながら場当り的に書いたので、今後ちゃんと作るとしたらよりパフォーマンスを改善するために色々変わると思います。というか変えてます。 ちょっと前の検証結果ですが、パフォーマンスの変化はこんな感じ。 パフォーマンス改善大分成果が出てきた。 ①某所SpringBone ②IJobPar

    SpringBoneのJobSystem化でわかったこと - しゅみぷろ
  • Unityのシェーダーまとめスライドを作ってみた - しゅみぷろ

    予習復習を兼ねてスライドをまとめてみました。 4日くらいでガサッと作ったので、まだまだまとめきれていない項目やそもそも書いていない項目も多いです(途中で書くの飽た)。 なのでちょっと時間を置いてからまだ書けていない項目についてもまとめたいなぁと思います。 また、間違い等ありましたらご指摘くださると幸いです(多分めちゃくちゃ間違ってる)。 記事書いていろいろと整理できて、前よりもUnityシェーダー書くのがとても楽しくなりました。 今後追加したいと思っている項目 ポストエフェクト Unity5のDeferred Rendering(G-Buffer) ComputeShader CommandBuffer

    Unityのシェーダーまとめスライドを作ってみた - しゅみぷろ
  • ECSとJobSystem 基礎 - しゅみぷろ

    はじめに やる気がある。全部Uniteのせい。 今回はECS(Entity Component System)とJobSystemについて色々触ってみたので、基礎部分のメモを残しておきます。 サンプルのプロジェクトは以下から見れます。 github.com どの程度自分の解釈が正しいのかちょっと怪しい部分もあるので、今後も色々と検証も行っていきます。その段階で間違いとか新たな発見とかがあったらその都度記事を更新します。 あと、今回の内容は非同期処理について多少知見があると理解が早いです。 なんか4年前くらいに書いた資料が発掘されたので、興味がある方は見てみてください。 後ろの方(スライド92枚目あたり)に非同期処理についての何かが書いてあります。 ECSとJobSystemを使うメリット そもそも、ECSやJobSystemはどんな時に役立ってくれるのでしょうか。 これからECSとJobS

    ECSとJobSystem 基礎 - しゅみぷろ
  • Unite 2016 Tokyo まとめ(1日目) - しゅみぷろ

    はじめに Uniteで聴講させていただいたものをとりあえず整理してまとめておきます。 2日分まとめて書こうと思ったんですがめちゃくちゃ長くなりそうなので分割することにしました。2日目はまた後日。記事では1日目の内容を書いていきます。 個人的に興味深かった講演については後日もっと深く掘り下げようと思っています。今回は大雑把にどんなことをお話しされていたか等を残しておきます。 講演の資料はこちらからDLできます。 モバイル端末向けのUnityアプリケーションの最適化実践テクニック モバイル端末のアプリケーション最適化テクニックについての講演でした。 この講演で強調されていたのは「良いデータを取ること」でした。 ここで言う良いデータとは、プロファイラ等を用いて計測されるパフォーマンス測定データのことで、これらのデータを正確に取得し、リソースを喰い潰している原因を特定することが最適化の第一歩とな

  • RenderDocによるUnityシェーダーデバッグ - しゅみぷろ

    はじめに RenderDocでUnityシェーダーをデバッグする方法を紹介します。内容はUnityマニュアルとほぼ同じですが、簡単に導入方法をメモしておきます。 docs.unity3d.com RenderDocは以下からダウンロードしてきます。 RenderDoc Downloads 使い方 RenderDocをインストール後、Unityを開き、GameビューかSceneビュータブ部分を右クリックすると、以下のように「Load RenderDoc」という項目が現れます。 この項目を選択すると、GameビューとSceneビューのツールバーに新しいボタンが表示されます。 このボタンを押すことで、そのウィンドウをキャプチャすることができます。 キャプチャすると以下のようにキャプチャしたフレームが表示されます。 このキャプチャ結果をダブルクリックすることで、特定フレームの描画情報をロードする

    RenderDocによるUnityシェーダーデバッグ - しゅみぷろ
  • 歩いた場所の雪が凹むやつ作った - しゅみぷろ

    はじめに 雪が積もって高さがもとに戻っていくやつ書いた。Uniteでセツナの講演聞いててよかった。パーティクルの逆LODもやりたい。 pic.twitter.com/tGdu0RxZ41— Es (@Es_Program) October 26, 2016 こんな感じで、歩いた箇所の雪を凹ませるやつ作ってみました。 蛇足ですが、雪が積もって元の高さに戻るような処理も追加してあります。 短い動画でわかるよう積もるスピードめちゃ速くしてます。 見やすいように最初からかなり雪を厚くしていますが、DisplacementMapのおかげでInspectorから高さを調節できます。 歩いた後の雪がキレイに平で違和感がありますが、UnityTexturePaintで利用しているブラシ設定の問題で、ちゃんとブラシ設定割り当てるともうちょっとリアルになります。 この処理ですが、Unite2016 Tokyo

    歩いた場所の雪が凹むやつ作った - しゅみぷろ
  • UnityTexturePaintでリアルタイムにオブジェクトを変形する - しゅみぷろ

    はじめに UnityTexturePaintは、リアルタイム(ゲーム実行中)にオブジェクトの持つテクスチャに対してペイントを行うアセットです。 UnityTexturePaintは以下で公開しています。 github.com 基的には メインテクスチャへのペイント ノーマルマップへのペイント ハイトマップへのペイント をサポートしていますが、応用次第でとにかく色々できそうな予感がします。 ちょっとした凹凸を表現するために頂点を増やしてしまうと、ザラザラしたオブジェクトの場合頂点数がスゴイことになってしまいます これを解決できるのがバンプマップです。 バンプマップでは、面の細かな法線や高さの情報をテクスチャに格納しておき、描画の際にその法線と高さを考慮したシェーディングを行うことで、実際には無い凹凸を表現する方法です。 この画像はノーマルマップのみを利用した凹凸表現です。 実際のモデルはた

    UnityTexturePaintでリアルタイムにオブジェクトを変形する - しゅみぷろ
  • UnityTexturePaintで出来ること - しゅみぷろ

    はじめに esprog.hatenablog.com 上記記事でTexturePaintを公開しました。 公開当初より出来ることが多くなってきたためメモがてら機能を整理しておくのが今回のエントリです。 TexturePaintを使ってみたい場合は、GitHubから落としてきてUnityで開いてみて下さい。 サンプルのシーンがいくつか入っているので、適当にシーンの構造とか見てもらえれば使い方がわかると思います。 Packageも配布しているので、以下のURLからDLしてUnityで開いても大丈夫です。 https://github.com/EsProgram/UnityTexturePaint/raw/master/UnityTexturePaint.unitypackage どんなことが出来るか エフェクトはAsset Storeからお借りしました 普通にペイントしてみた例です。 モデルは

    UnityTexturePaintで出来ること - しゅみぷろ
  • 1