土屋つかさの技術ブログは今か無しかスマートフォン用の表示で見る土屋つかさの技術ブログは今か無しか土屋つかさが主にプログラミングについて語るブログです。RPは7.1.7から、"URP"が正式な略称(?)になったぽいです。RP(旧LWRP)"という名称は7.1.7から"URP"に統一されるっぽい2020-01-10プッシュダウンステートマシンのサンプル実装(階層構造を扱える状態遷移機械の話)プッシュダウンオートマトン形式のステートマシン(以下プッシュダウンステートマシン)について人に説明するときにいつもサンプルコードを探すのに手間取るので、デモ用のコードを書きました。2019.3.0f3でマテリアルの透明度が適用直後に反映されない(実害無し)URP関連のバグ(なんだかなんなんだか)もう一個見つけました(報告済み)。昨日見つけたのはこちら。バージョンはUnity2019.3.0f3(RC3)です。2019.3.0f3で存在しないライトプローブメッシュが表示される(修正済み)あけましておめでとうございます。今年もどうぞよろしくお願いします。一昨年にブログ更新を再開し、それなりに運用できるなと感じました。今回は以前から試してみたいと思っていた、超簡単偽環境マップの作成に挑戦してみたいと思います。記事です※すみません、どうにも間に合わなそうなので、ひとまず草稿のままアップします。適宜文章足したりスクショつけたりして、クリスマスまでに完成していればと思います。プロジェクト+VS2019環境でStyleCop.Analyzersを使用するために必要な4(+1)つの手順StyleCopはいわゆるコードの静的解析ツールでして、VS2019の拡張パッケージとして提供されています。Marching)という描画手法があります。Function)」として定義し、その関数を介して物体がどのように空間に配置されているかを計算し、描画します。VS2017からVS2019へ環境を移動する。2019がインストールされないようで、毎回VS2017からVS2019に環境を移動するのに戸惑うのでメモっておきます。VS2017からVS2019へ環境を移動する。Sysytemを使ってみようと思いまして、1.0.0のPackageをインストールし、下記公式ドキュメントのサンプルコードを実行してみました。Camera.orthographicSizeプロパティドキュメント私家訳Camera.orthographicSizeプロパティが翻訳されてなかったので私家版です。ところどころ意訳してるのでご自身の責任でどうぞ。ちなみに8割Google翻訳。最近のGoogle翻訳ホント精度が上がってて助かる。Camera.orthographicSizeプロパティドキュメント私家訳2019-10-07頂点アニメーションとはなにか9月19日に新宿で「カプコンオープンカンファレンス」というイベントが開催されました。canvasを作るとシーンに対して無茶苦茶大きく表示されてしまう問題(?)の対応方法Canvasを使う時、毎回焦るのが、ヒエラルキーにCanvasを追加した時、通常のオブジェクトに対してCanvasがめちゃくちゃ大きなサイズでシーンに配置される事です。SRP(LWRP=UniversalRP)のシングルPassフォワードレンダリングとはなにかUnityシェーダー本4に向けてSRP(LWRP=UniversalRP)の勉強を始めています(ちなみに来春予定です。直近の技術書典には間に合わないですごめんなさい)。今回はFlatBuffersでシリアライズされたバイナリデータが、実際にどのようなルールでメモリにレイアウトされているかを解説します。前回作成したバイナリデータの、メモリレイアウトを以下に示します。Unityゲームに限らないんですが、メニュー画面を実装する際、ひとまず仮で使うボタン画像の素材が欲しいという時がよくあります(......ありますよね?)。シリアライズ/デシリアライズのサンプルコードいよいよデータのシリアライズ/デシリアライズを実行します。テストなので一個のプログラムで「データの作成→シリアライズしてファイルを保存→保存したファイルを読み込み→デシリアライズしてデータを再構築する」という手順を一気に行います。FlatBuffersを使用するには、以下の3つの手順を経る事になります。データをバイナリ配列にシリアライズしてファイルに保存する。C#前回、ゲームで用いる数値データを管理する手段として一般的な、バイナリデータを構造体配列にマッピングする手法について解説しました。Unity前回の記事でJSONデータを構造体配列に読み込むことができたので、次はこれをバイナリデータとしてシリアライズ/デシアライズする方法を検証します。どちらかと言えばここからが本番です。FlatBuffersというライブラリの挙動を検証します。C#ゲームでは大量の(本当に大量の)数値データを管理する必要があり、そのデータをどのように管理するかは、ゲーム開発では常に重要なテーマとなります。ここで言う数値データとは、武器のデータやモンスターのデータ(構造体)などのことです。APIは何を使うんだっけ?」となってネットを漁ることになり非効率なので、また忘れても大丈夫なように、ここに「Unityセ...Unityセーブデータ実装3原則【2019】2019-06-19Vue.jsを理解するシリーズここ最近Vue.jsでの開発を延々しています。Scriptな物で、Node.jsベースのモダンなWeb開発のスタイルがさっぱりわかりませんでした。2019.1にプロジェクトを移行した時に出たエラーと対応処理UnityUnity2018.2で開発していたプロジェクトを2019.1で開くと「TextMeshProがどうたら(ちゃんと読んでない)」というエラーが大量に出て実行できなくなりました。ライティング&GI(大域照明)解説編」のPDF版を、BOOTHさんに登録しました。シェーダー"で土屋のシェーダー本にリーチしないのが悔しいUnity悔しいのでエントリ名にしました。本文とは関係ありません。シェーダー本3の作業が佳境に入っていましてブログを書く余裕がありません。小ネタを幾つかまとめて。2018.2と2018.3でLightingウィンドウのタブ切り替えボタンの仕様が変わってる小ネタ。シェーダー本3用にUIをスクショしている時に気づきました(マジかよ)。2018.2まではこちら。Mapsには選択中のオブジェクトの情報が表示されます。現在、技術書典6に向けてシェーダー本の第3巻を執筆中です。Renderer.lightmapScaleOffsetプロパティ私訳Renderer.lightmapScaleOffsetプロパティのについて正確な情報が必要になり、ドキュメントを訳出しました。2018.3版だと部分的に公式訳がなくなっていたので、欠落分を2017.3版から取得しています。TextAssetを使ってcsvファイルをアセット化しUnityで読み込む急にダミーデータが必要になり「csvファイルを最小工数でUnityに展開する方法ないかなー」とググッていたら、テキストアセット(TextAsset)なる物があると知りました。これを使おうとしてしょっぱなでハマったのでメモ。VS2017からVS2019へ環境を移動する。新InputSystemを試そうとしてハマッた話Archiveスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。