Quantcast
Channel: C#タグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 9703

BPMに合わせてオブジェクトを点滅させる(HDRP/lit編)

$
0
0
HDRPでオブジェクトを点滅させたい させたいですよね。 最初はHDRP/litの_EmissiveIntensityをスクリプトから操作して点滅させようとしましたが、値は変わるのにGameViewに反映されませんでした。 あきらめて、_BaseColorで点滅させられるように作りました。 EmissiveColorを前もって明度の高い色(白)にしておけば、 ぴかぴか点滅してくれます。 色はスクリプト上でいじります。 インスペクタ―で設定できるのはBPMだけです。 using System.Collections; using System.Collections.Generic; using UnityEngine; public class EmissionBlinking : MonoBehaviour { private Material material; private float length = 1.0f; public int bpm = 120; void Start() { material = GetComponent<Renderer>().material; } void Update() { float span = bpm / 60; //1秒に何ビートか? float val = Mathf.PingPong(Time.time * span * 2f, length); //BPMの拍に合わせて点灯させるために *2 する Color color = new Color(1.0f - val * val, 0f, 0f); //RGBで任意の色にする material.SetColor("_BaseColor", color); } } プログラミングなんてできねえ! と思いながら始めたC#学習も、なんとかかんとか触りだけはこなせました。 よい映像制作につながるように来年もがんばります。

Viewing all articles
Browse latest Browse all 9703

Trending Articles