実現したいこと
shader graphでの、指定した要素のランダム生成
前提
いつもありがとうございます
unityの2Dのshader graphでひし形の星を作りました それをランダムな場所に大きさを変えて複数生成したいのですが、やり方が分かりません
試したこと
unityのvisual effect graphで大量に生成して、それをshader graphに反映させようとするも、その方法がないです
関連情報の検索(日本語・英語) 該当する情報は見つかりませんでした
chatGPT 言っていることが難しく、具体的にどう動けばよいのか分かりません
補足情報(FW/ツールのバージョンなど)
unity version: 2022.3.9f1
windows11
chatGPT:
エクスポートの準備:
エクスポートの準備は、エフェクトからカスタムシェーダーにデータを渡すための準備作業です。
VFX Graphでエクスポートするデータには、通常、テクスチャ、カラーデータ、ベクトルデータ、スカラーデータ、パラメータ、ポイントキャッシュなどが含まれます。これらのデータは、エフェクトの外観や挙動に関する情報をカスタムシェーダーに提供します。
エクスポート設定は、VFX Graph内で設定され、エクスポート対象のデータタイプやエクスポート名を指定できます。エクスポートされたデータは、Unityのプロジェクト内の指定されたフォルダに出力されます。
データのエクスポート:
エクスポートしたデータは、Unityプロジェクト内の適切なディレクトリに配置する必要があります。これにより、カスタムシェーダーがこれらのデータにアクセスできるようになります。
たとえば、テクスチャデータはUnityの「Resources」フォルダ内に配置することができ、シェーダーコードからアクセスできます。カラーデータやパラメータも同様に、プロジェクト内の適切なフォルダに配置します。
エクスポートされたデータは、シェーダーコード内でロードし、エフェクトの描画や挙動に使用されます。
エフェクトの制御:
エフェクトをカスタムシェーダーと連携させるために、スクリプトを使用します。これにより、エフェクトのパラメータを調整し、エフェクトの表示を制御できます。
Unityのスクリプティング言語であるC#を使用して、エフェクトを制御するスクリプトを作成します。スクリプト内で、エクスポートされたデータやエフェクトのパラメータを読み込み、設定できます。
たとえば、スクリプトを使用してエフェクトのサイズ、色、位置、再生状態などを制御できます。これにより、エフェクトがシーン内で正確に配置され、アニメーションされることが確保されます。
これらのステップを順番に実行することで、Visual Effect Graphで設計したエフェクトをカスタムシェーダーに統合し、他のオブジェクトに適用できるようになります。 Unity内でのエフェクトの設計と統合は、プロジェクトの要件に合わせてカスタマイズできるため、非常に強力なツールです。
写真
最終的には瞬いている星が一つできます(菱形というより、星型というより なんていう形なんですかね? しいたけの切り目型?)
一番右の一列がTiling And Offsetです 右から二番目の一列がEllipseです この写真の一番左がAddです
Addで画像を合体させ、One Minusで反転させ、それを一方に渡し(これをXとする)、TimeのTimeをRandom Range の seed値に渡し、Sine Time を最大値(Max)に渡し、出力をSubtractのBに渡しXをAに渡す。その差をMultiplyのAに渡し、XをBに渡す
さっきの写真の出力と、用意してある星空の色です

バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2023/10/02 03:35
2023/10/02 21:04 編集
2023/10/05 21:59
2023/10/06 08:23
2023/10/06 16:59
2023/10/07 07:52
2023/10/09 09:49
2023/10/10 10:35