いんでぃーづ

ゲームいろいろ、いろいろ自由

Unity : Randomを使うとエラーが出る場合の解決方法

Random.Range 関数でランダム値を取得しようとすると以下のようなエラーが出る場合があります。

error CS0104: 'Random' is an ambiguous reference between 'UnityEngine.Random' and 'System.Random'
error CS0104: 'Random' is an ambiguous reference between 'Unity.Mathematics.Random' and 'UnityEngine.Random'

これは複数の名前空間に Random クラスが定義されているのでコンフリクトが起きているせいです。

以下のようなかんじでC#スクリプトの先頭にどこのRandomを使うか明記すればエラーは消えます。

using Random = UnityEngine.Random;

Unity : エッジつきディゾルブシェーダーを自作する

前回 Shader Graph でディゾルブシェーダーを作りましたが、Shader Graph だと ComputBuffer に対応してなくて、
これだとやりたいことできへんやんということで結局コードを書くことにしました。

でせっかくなので紙が燃えるときのようなエッジのエフェクトを追加します。

f:id:sugar_affordance:20201130111032g:plain

  • シェーダーファイルの作成
  • プロパティの設定
  • フラグメントシェーダー内でプロパティを参照できるようにする
  • ディゾルブ効果の関数を作成する
  • フラグメントシェーダー内で関数を呼ぶ
  • マテリアルの設定
続きを読む

“Unity” and Unity logos are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere, and are used under license.


免責事項

当サイトの広告バナー、リンクによって提供される情報、サービス内容について、当サイトは一切の責任を負いません。

また、当サイトの情報を元にユーザ様が不利益を被った場合にも、当サイトは一切の責任を負いません。

すべて自己責任でお願いします。