actionScript書きの日記

アラフォーFlashデベロッパのブログ。actionscriptやobjective-cを経て、現在はUnity、Spine、AfterEffectsがメイン。

Unityのシェーダーにおけるプロパティアトリビュートに関して

例えば、あるテクスチャの計算を乗算にするか加算にするか、という設定をマテリアルから行いたい場合、トグルで選択できれば便利なのだが、どうやってマテリアル上にトグルのパラメータを表示するのか、という点がなかなか分からなかった。 以下のリンクを大…

画像をタイリングした際に繰り返し表示するか否かの設定

画像をタイルのように敷き詰めたいときもあれば、繰り返したくないこともあるわけだが、この設定をどこでするのか、シェーダー関連の検索を色々としていたのだが、テクスチャ側の「Wrap Mode」をClampにすることで繰り返しをしないようにできた。単純だが、…

UnityのURPシェーダーでUVスクロールする際のオフセットの取り扱い

UnityのURPシェーダーでUVスクロールをする際にどのように記述するのかを調べてみると、以下のようなコードが出てきた。 float2 offset = float2(_Time.x, 0); o.uv = TRANSFORM_TEX(v.uv + offset, _MainTex); 変数「offset」内に、時間経過に比例して増大…

Unityで知らなかったショートカット二点

Alt + 左クリック→現在のシーンビューの中心点を基準として視点が回転。 Alt + 右クリック→シーンビューのカメラ画角の拡大縮小。 全然知らなかったので、備忘録として。 以下の記事に助けていただいた。感謝申し上げる。 learn.unity.com

MacBookPro(2023 M2 14インチ)の外部モニタ接続について

技術的な問題ではないのだが、環境面での話ってことで。 もともとはMac側のUSB-Cからモニタ側のDisplayPort端子につないでいたのだけれど、これだとスリープ復帰時にMacがモニタを認識せず、毎回ケーブルを繋ぎ直す必要がある。それで「Mac側のHDMI端子から…

UnityのURP環境でMutliPassのシェーダーが機能しなかった件

前提 Unity 2021.3.9f1において、URP環境でMultiPassのUnlitシェーダーを作成しても、最初のパスしか実行されなかった。 対応 1つ目のパスに以下を追加。 Tags{ "LightMode" = "UniversalForward"} これにより、MultiPassが機能するようになった。 以下の記…

Unityで動的にMeshの頂点数を増やしたらメッシュが縮小されてしまった件

前提 UnityのScriptで動的にMeshを生成し、SetVerticesとSetTrianglesを使用して頂点数を変更する処理を作成した。試しに縦横500ずつ頂点を作成すると、Meshの大きさが突然小さくなるという現象が発生した。頂点数をある程度減らすと解決した。 対応 デフォ…

メインスレッド以外からUnityのUIを操作しようとして途方に暮れた件

いやもう本当に、そもそもメインスレッド以外で処理が走っているってことを想像できなかったし、それを指摘されたあとも本当に苦労した。いろいろと書くべきテーマがてんこ盛りの数日間だったのだが、まずは複数スレッドでの命令の受け渡しから。 前提 ある…

Unity Test Runner を使おうとして詰まってしまった3点

新しい仕事においてややコーディングよりの仕事をすることになったので、テスト駆動開発の方法くらいは知っておかないと、と思って泥縄で調べ始めたのだが、いやあ、敷居が高かった。 最初に検索して上位に来たいくつかの記事を読ませていただいた。例えば以…

Houdiniでファイル書き出し時に「TypeError: 'newline' is an invalid keyword argument for this function houdini」と出た際の対処

前提 HoudiniからUnityで使用する「PointCashe」のファイルを書き出そうとした所、「TypeError: 'newline' is an invalid keyword argument for this function houdini」というエラーが出て書き出しができなくなった。 対応 Pythonのバージョンが3未満だとこ…

Houdiniで作成したFlowMapの書き出しとUnityでの使用 その2

前提 前回の記事でHoudiniで作成したFlowmapを、Unityで表示するためのシェーダーを作成する。 ビルトインのシェーダーもあるようなのだが、大まかな構造だけでも把握するために、処理の流れを追ってみることとする。 作業内容の概要 Flowmap上の色情報を元…

Houdiniで作成したFlowMapの書き出しとUnityでの使用 その1

前提 HoudiniでFlowMapを作成し、必要なデータを書き出してUnityに読み込んで表示する。 作業内容の概要 HoudiniでFlowMapを適用するためのジオメトリを作成。 HoudiniでFlowMapを作成。 FlowMapの画像を書き出し。 ジオメトリをFBXで書き出し。 書き出したF…

HoudiniでFlowMapやVectorFieldsを作成してUnityに持っていきたい

※一部自分の認識にずれがあったので、本文やタイトルを直しました。 前提 Unityでのエフェクト制作において、外部の3Dソフトとの連携がほぼ必須になりつつあると感じている。数年前まではテクスチャ画像を After Effects や Substance Designer で作成してパ…

LoadAssetAsyncで動的に生成したPrefabのSetParentを実行してエラーが出る件

前提 「Addressables.LoadAssetAsync<GameObject>」関数で動的に生成したPrefabに対して「SetParent」関数を実行すると、 Setting the parent of a transform which resides in a prefab is disabled to prevent data corruption. とエラーが出る。 対処法 生成したPrefa</gameobject>…

UnityでResourcesフォルダを使用せずに動的にオブジェクトを生成する方法

前提 Resourcesフォルダが非推奨になっているとは知っていたのだが、ではどうするのか、ということを知らなかった。動的にオブジェクトを生成したいときはpublicで変数をもたせてそこに生成したいオブジェクトを代入し、Instantiate関数で生成する方法を撮っ…

UnityのList内の要素を全て削除する方法

Unityで変数として設定したList内のオブジェクトを全て削除して空にしたいときは、Clear関数を使用する。 RemoveAll関数と混同したので、備忘録として。 ちなみに「RemoveAll」関数は、条件に合致する要素を全て削除する関数となる。 以下の記事に助けていた…

LitシェーダーをVisualEffectGraphで使用するとパーティクルが消える件

youtu.be 上記のチュートリアルがとても分かりやすく参考になったのだが、一点詰まってしまったことがあったので備忘録としてメモ。 ShaderGraphでVisualEffect用のシェーダーを作成して、それをVisualEffectGraphで使用するのだが、ふと気が向いて「Fragmen…

UnityのShaderを用いた画像の歪みの実装

なかなかに面白い動画があったので、実際にやってみた。 youtu.be この動画は自分にとって有用な情報がいくつも入っていてとても参考にさせて頂いた。この場を借りて感謝申し上げる。 さて、この動画の6分12秒あたりから、UnityのShaderを用いて画像にディス…

Substance Designerで透過画像を作成する方法

一時期離れていたSubstance Designerをまた触り始めている。理由としては、シームレスなテクスチャを作るのに便利、というのがある。UV Scrollをさせたりする場合にはつなぎ目は重要になるので。 今回は、Substance Designerで透過画像を作成する方法を備忘…

Unity2020で右クリックでUnlitShaderGraphが作成できない件

前提 Unityで「Universal Renderer Pipeline」のプロジェクトを作成し、右クリックでUnlitShaderGraphを作成しようとするも、「Create→Shader」と進んで該当項目がない。 対処法 各ShaderGraphが「Blank Shader Graph」に統合されたため、今後はこれをまず作…

Unityでオブジェクトを指定した角度に回転させる方法のまとめ

前提 Unity上のオブジェクトを、指定した角度に回転させたい。例えば、Rotationの値が(0, 0, 90)になるようにしたい。 簡単なようでいて、この対応が意外とややこしいので、備忘録として。 対応 対応は2種類の方法がある。 Transformの「eulerAngles」を指…

Houdini学習その10 Houdini17.5ではFuseのUniqueがない件

前提 「理論と実践で学ぶHoudini SOP&VEX編」の第7章で「Fuse」オペレーターを追加して「Unique」にチェックを入れてプリミティブ同士を切り離すように記載があるが、Houdini17.5では「Fuse」オペレータ内に「Unique」というパラメータがない。 対処法 「Fus…

Houdini学習その9 noise関数に関して

「理論と実践で学ぶHoudini SOP&VEX編」を読んでいる。 自分の理解が乏しいこともあって疑問点が多い。なので備忘録として。 第6章「Wrangleオペレーター」にて出てくる「noise」関数に関して。本文中では @P.y = noise(@P); と記載されているが、公式ドキュ…

UnityでProBuilderをインストールした後でツールバーが表示されない。

前提 UnityのPackage ManagerからProBuilderをインストールした後、本来表示されるはずのツールバー(下記画像の赤枠内のツールバー)が表示されない。 赤枠内のツールバーが表示されない。 検索しても何も出ず、こんな現象は他では起きないのかと思っていた…

UnityでiOSビルドを行う際に「DXT1 compressed textures are not supported when publishing to iPhone」と出た際の対処法

前提 Unity2019.4.15f1を使用して、iOS用のビルドを行う際に DXT1 compressed textures are not supported when publishing to iPhoneResources/unity_builtin_extra とエラーが出る。 対処法 結論から言うと、「Default-Checker-Gray」を使用していたのが悪…

UnityでAndroidビルドを行う際に「You are missing the recommended JDK. Install the recommended version using Unity hub」と出た際の対処法

突然出たのでめちゃくちゃ焦ったが、Unity Hubから対応可能だった。 プロジェクト生成に使用したバージョンのUnityの「モジュールを加える」メニューから追加可能。ここで「Android SDK & NDK Tools」にチェックを入れてインストールする。 yanpen.net こち…

Unityでプロジェクトを開く際に「this can happen if layout contains custom windows」とエラーが出た際の対処法

前提 UnityHubからプロジェクトを開く、もしくは新規作成する際に、「this can happen if layout contains custom windows and there are complile errors in the project」というエラーダイアログが表示される。 「Quit」「Load Default Layout」「Revert F…

Houdini チュートリアル動画に関して

なかなか学習時間も取れないが、少しずつ進めていた【理論的な知識をもってHoudiniを使う】シリーズの学習。いよいよ最後の課題に入った。 学習サンプル 引き続き「Studio Satsuki」氏の動画を学習させていただいている。今回は以下の動画。 www.youtube.com…

Houdini学習その8 【理論的な知識をもってHoudiniを使う】動画が素晴らしかった件 その1

「Studio Satsuki」さんという方がYoutubeにアップしている【理論的な知識をもってHoudiniを使う】というテーマの一連の動画が素晴らしく、本当に参考になった。 今年の春くらいからHoudiniを触り始めて、Houdini本を読み進めて来たのだけれど、元のソフトの…

Provisioning profile "XXXXXX" doesn't include signing certificate YYYY って出て困った件

Unityで作成したプロジェクトをiOS向けにビルドすると一旦Xcodeのプロジェクトが書き出されて、そこから更にXcode上でビルドなり書き出しなりをすることになるのだが、AdHoc用のipaファイルを書き出そうとしてAdHoc用のプロファイルを作成したところXcode上…