2021-01-01から1年間の記事一覧
はじめに 実装 Unity上 カメラのInspector PlaneのInspector ソースコード スクリプト 影を描画するシェーダー 影を受け取るシェーダー 解説 初期化 視錐台 DirectionalLightカメラ Update MainCameraを4分割した、視錐台の計算 各視錐台のnearとfar 各視錐…
Cascade Shadow Mapsとは ジャギーが目立ってしまっている例 発生してしまう原因 考え方 CSMsでのシャドウマップイメージ ソースコード無しでの実装 オブジェクトの配置 ライトの設定 影をレンダリングするカメラの距離を伸ばす 設定後 Cascadeの追加 Cascad…
はじめに 実装 Unity上 オブジェクト マテリアル スクリプト シェーダー 解説 Trail() InverseTransformDirection バーテックスシェーダー weight tex2Dlod tex2Dlodの詳しい解説 結果 参考サイト様 はじめに UnityのTrailRendererに似た、オブジェクトに追…
投影テクスチャシャドウとは 実装 Unity上 影用のカメラのInspector オブジェクト Scene スクリプト シェーダー 解説 CameraSettings() depth allowHDR UpdateRenderTexture() フラグメントシェーダー 結果 参考サイト様 投影テクスチャシャドウとは 前回行…
前回の成果 オブジェクトの影を受け取った。 soramamenatan.hatenablog.com 今回やること 投影テクスチャマッピングを実装します。 light11.hatenadiary.com 事前準備 Scene上にGameObjectを配置し、今回制作したスクリプトをアタッチします。 スクリーンと…
前回の成果 オブジェクトの影を落とした。 soramamenatan.hatenablog.com 今回やること 前回のコードのままですと、他のオブジェクトからの影を受け取ることができません。 なので、その部分を修正します。 影を受け取れていない 手前のオブジェクトが前回、…
前回の成果 Bloomシェーダーについて学んだ。 soramamenatan.hatenablog.com 今回やること シェーダーでの影について学んでいきます。 事前準備 Scene上にCubeを配置します。 Cubeの影が出るようにPlaneを配置して準備は完了となります。 影 Unityのデフォル…
前回の成果 3Dモデルを液体のようにするシェーダーについて学んだ。 soramamenatan.hatenablog.com 今回やること 以下のサイト様を参考に、Bloomシェーダーを実装します。 www.shibuya24.info 事前準備 Scene上にSpriteRendererを配置します。 そして、MainC…
前回の成果 その他のオペレータについてまとめた。 soramamenatan.hatenablog.com 今回やること 以下のサイト様を参考に、3Dモデルを液体のようにするシェーダーを制作します。 qiita.com 事前準備 Scene上に適当な3Dモデルを配置します。 そして、今回制作…
前回の成果 Observableが完了したときに処理を行うオペレータについてまとめた。 soramamenatan.hatenablog.com 今回やること その他のオペレータについてまとめます。 前回の成果 今回やること 購読時に指定したメッセージを最初の値として発行する StartWi…
前回の成果 エラーハンドリングのオペレータをまとめた。 soramamenatan.hatenablog.com 今回やること Observableが完了時に処理を行うオペレータをまとめます。 前回の成果 今回やること ストリームのOnCompletedが呼ばれたら、同じストリームを生成する Re…
前回の成果 非同期処理のオペレータをまとめた。 soramamenatan.hatenablog.com 今回やること エラーハンドリング系のオペレータをまとめます。 前回の成果 今回やること 例外発生時に、例外を補足せずに処理を行う DoOnError ソースコード 結果 例外発生時…
前回の成果 時間系のオペレータについて学んだ。 soramamenatan.hatenablog.com 今回やること 今回は非同期処理のオペレータについてまとめます。 前回の成果 今回やること 処理を別スレッドで実行したい ToAsync ソースコード 結果 Invoke()の呼ぶタイミン…
前回の成果 メッセージを変換するオペレータについて学んだ。 soramamenatan.hatenablog.com 今回やること 今回は時間系のオペレータについてまとめます。 前回の成果 今回やること 一定時間後にメッセージを発行したい Timer 一定時間後にメッセージを発行 …
前回の成果 Observableを分岐させるオペレータについて学んだ。 soramamenatan.hatenablog.com 今回やること 今回はメッセージの変換をするオペレータについてまとめます。 前回の成果 今回やること 値を変換したい Select 値を変換する 結果 型変換をし、失…
前回の成果 メッセージを合成するオペレータについて学んだ。 soramamenatan.hatenablog.com 今回やること 今回はObservableを分岐させるオペレータについてまとめます。 いわゆるHot変換になりますので、そちらに関しては以下を参考にしてみてください。 so…
前回の成果 Observable自体を合成するオペレータについて学んだ。 soramamenatan.hatenablog.com 今回やること 今回はメッセージ同士の合成についてまとめます。 前回の成果 今回やること 前回のメッセージの結果と今回の結果を使用したい Scan 前回のメッセ…
前回の成果 Obsevableを合成するオペレータについて学んだ。 soramamenatan.hatenablog.com 今回やること 今回はObservable自体の変換をまとめます。 前回の成果 今回やること ObservableをReadOnlyReactivePropertyに変換 ToReadOnlyReactiveProperty ToRea…
前回の成果 メッセージのフィルタリングをするオペレータについて学んだ。 soramamenatan.hatenablog.com 今回やること 今回はObservableを合成するオペレータについてまとめます。 前回の成果 今回やること 複数のObservableから一番早く値が流れてきたもの…
前回の成果 ファクトリメソッド系のオペレータについて学んだ。 soramamenatan.hatenablog.com 今回やること 今回はメッセージのフィルタのオペレータについてまとめます。 前回の成果 今回やること メッセージのフィルタ 条件を満たすものを流す Where 結果…
前回の成果 UniTaskのキャンセルについて学んだ。 soramamenatan.hatenablog.com 今回やること UniRxで何かしたいときに、どのオペレータを呼べばよいのか混乱したので、具体例も合わせてまとめます。 前回の成果 今回やること ファクトリメソッド 値を1つだ…
前回の成果 UniTaskのAwaiterについて学んだ。 soramamenatan.hatenablog.com 今回やること 前回に引き続き、UniTaskについて学んでいきます。 キャンセル 非同期処理ではキャンセルについて考えなければなりません。 UniTaskも同様に、何らかの原因で例外が…
前回の成果 UniTaskの大まかな概要と静的なメソッド群について学んだ。 soramamenatan.hatenablog.com 今回やること 前回に引き続き、UniTaskについて学んでいきます。 Awaiter Awaiterとは、オブジェクトのawaitに必要なものとなっています。 あるオブジェ…
前回の成果 UniRxのHotとColdについて理解した。 soramamenatan.hatenablog.com 今回やること UniTaskについて学びます。 UniTaskとは Unityでasync/awaitを最高のパフォーマンスで実現するライブラリ UniTask – Unityでasync/awaitを最高のパフォーマンスで…
前回の成果 UniRxとコルーチンの変換について学んだ。 soramamenatan.hatenablog.com 今回やること UniRxのHotとColdについて学びます。 HotとColdとは IObservableの性質になります。 これらを理解せずにUniRxを使用すると意図せぬ挙動となる場合があります…
前回の成果 Updateをストリームに変換するメリットを学んだ。 soramamenatan.hatenablog.com 今回やること 引き続き以下サイト様の手順に習って、UniRxを学んでいきます。 qiita.com 事前準備 アセットストアからUniRxをインポートします。 assetstore.unity…
前回の成果 ストリームソースを用意する方法を学んだ。 soramamenatan.hatenablog.com 今回やること 引き続き以下サイト様の手順に習って、UniRxを学んでいきます。 qiita.com 事前準備 アセットストアからUniRxをインポートします。 assetstore.unity.com U…
前回の成果 ストリームソースを用意する方法として、SubjectシリーズとReactivePropertyシリーズを学んだ。 soramamenatan.hatenablog.com 今回やること 引き続き以下サイト様の手順に習って、UniRxを学んでいきます。 qiita.com 事前準備 アセットストアか…
前回の成果 IObserverインターフェースとストリームの寿命について学んだ。 soramamenatan.hatenablog.com 今回やること 引き続き以下サイト様の手順に習って、UniRxを学んでいきます。 qiita.com 事前準備 アセットストアからUniRxをインポートします。 ass…