You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

64 lines
1.5 KiB
C#

3 years ago
using UnityEngine;
using System.Collections;
namespace Suimono.Core
{
public class fx_causticModule : MonoBehaviour {
//PUBLIC VARIABLES
public bool enableCaustics = true;
public Light sceneLightObject;
public bool inheritLightColor = false;
public bool inheritLightDirection = false;
public Color causticTint = new Color(1f,1f,1f,1f);
public float causticIntensity = 2f;
public float causticScale = 4f;
public float heightFac = 0f;
public int causticFPS = 32;
public Texture2D[] causticFrames;
public Texture2D useTex;
//PRIVATE VARIABLES
private float causticsTime = 0f;
private Suimono.Core.SuimonoModule moduleObject;
private GameObject lightObject;
private int frameIndex = 0;
void Start () {
//get master objects
moduleObject = (Suimono.Core.SuimonoModule) FindObjectOfType(typeof(Suimono.Core.SuimonoModule));
lightObject = transform.Find("mainCausticObject").gameObject;
}
void LateUpdate () {
if (this.enabled){
useTex = causticFrames[frameIndex];
causticsTime += Time.deltaTime;
if (causticsTime > (1f/(causticFPS*1f))){
causticsTime = 0f;
frameIndex += 1;
}
if (frameIndex == causticFrames.Length) frameIndex = 0;
if (moduleObject != null){
if (moduleObject.setLight != null){
sceneLightObject = moduleObject.setLight;
}
if (lightObject != null){
lightObject.SetActive(moduleObject.enableCaustics);
}
}
}
}
}
}