質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

Q&A

解決済

1回答

4866閲覧

unityのマテリアルの設定をスクリプトで変更したい

Colet

総合スコア45

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

0グッド

0クリップ

投稿2020/08/19 16:52

unityのマテリアル(shader skybox/panoramic)の設定のExposureの値を1から0にスクリプトで変えたいのですが中々できません。。教えてくださると助かります
イメージ説明

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

2020.08.21追記-2

前回、Cubeオブジェクトのマテリアルに対して変更を行いましたが、
[Lighting Settings]で指定しているマテリアルを直接渡せば変わるかもしれません。
※こちらでは値が変わってるっぽい動きになりましたが、質問者様の方の設定次第では動かないとかあるかもです。

C#

1public class Sample : MonoBehaviour 2{ 3 [SerializeField]private Material mat; // <- [Lighting Settings]で指定しているマテリアルを設定する 4 5 void Start() 6 { 7 mat.SetFloat("_Exposure", 3f); 8 } 9}

こちらでは、「MaterialSample」というマテリアルを設定。
イメージ説明

以下、動作結果(ボタン押下によってExposureの値を変更して確認)。
GIF画像


2020.08.21追記-1

コメントに関してご確認です。
こちらの理解力も無くて申し訳ないのですが、もし違ったら質問文に詳細を追記頂けると助かります。

Lightingに入れたskyboxマテリアルの値

とは、「Lighting Settings」で指定しているマテリアルということでしょうか
※以下ウインドウ内のマテリアルに、独自のマテリアルを設定しているということでしょうか?

Unity Lighting Settings


以下の様な方法ではどうでしょうか。
値を変更するタイミングは、適宜変更お願いいたします。

C#

1using UnityEngine; 2 3public class Sample : MonoBehaviour 4{ 5 [SerializeField]private GameObject obj; // 対象のシェーダーが適用されたGameObjectを設定する 6 7 // Start is called before the first frame update 8 void Start() 9 { 10 // 値変更処理 11 Renderer r = obj.GetComponent<Renderer>(); 12 r.material.SetFloat("_Exposure", 0f); 13 } 14} 15

シェーダーのプロパティ値参照について
シェーダーは各プロパティを持っていて、そちらを指定することで値を変更することが可能になります。
プロパティ値の参照方法などについては、以下などをご参照ください。

投稿2020/08/20 03:30

編集2020/08/21 13:03
tsuki01

総合スコア1751

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Colet

2020/08/21 11:43

回答ありがとうございます。Lightingに入れたskyboxマテリアルの値を変更したいんですがその場合どのようにすればいいか分かりますか。。言葉足らずで申し訳ないです
Colet

2020/08/21 12:14

その通りです。そこに独自のマテリアルを設定しています。画像追記すればよかったですね。。申し訳ないです。
Colet

2020/08/21 13:16

できました!本当にありがとうございます。助かりました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問