E ae Galera!!

Esse é o Blog do Canal Games Indie e eu sou o Bruno, aqui tentarei trazer notícias, vídeos, analises, tutoriais e mais um montão de coisas que no canal do youtube não tem como eu trazer! Ou seja mais conteúdo pra quem gosta do Canal!!

Tutorial de Unity 3D - Sistema de Ciclo de Dia e Noite : Script Dia e Noite

Script Dia e Noite:




#pragma strict

var DuracaoDiaH: float;
var DuracaoDiaM: float;
var DuracaoDiaS: float;

var DuracaoTDia: float;

var VelocidadeRotacao: float;

var TempoAtual: float;
var RotacaoAtual: float;

var Horas: int;
var Minutos: int;

var CorDia: Color;
var CorNoite: Color;

var CorLuzDia: Color;
var CorLuzT: Color;

var CorCeuDia: Color;
var CorCeuT: Color;
var CorCeuNoite: Color;

var CameraP:Camera;



function Start () {
RotacaoAtual = TempoAtual*360/24  -90;
transform.rotation.eulerAngles.x = RotacaoAtual;
}

function Update () {

DuracaoTDia = DuracaoDiaS;
DuracaoTDia += 60*DuracaoDiaM;
DuracaoTDia += 60*60*DuracaoDiaH;

VelocidadeRotacao = 360/DuracaoTDia*Time.deltaTime;

transform.Rotate(VelocidadeRotacao,0,0);
RotacaoAtual +=VelocidadeRotacao;
if (RotacaoAtual>360)
{
  RotacaoAtual -= 360;
}

TempoAtual = (RotacaoAtual+90)*24/360;
if (TempoAtual>24)
{
  TempoAtual -= 24;
}

if (TempoAtual>17)
{
  light.intensity = 0.5*(18-TempoAtual);
 if (TempoAtual>17.5)
 {
  CameraP.backgroundColor = Color.Lerp(CameraP.backgroundColor,CorNoite,2*Time.deltaTime);
  RenderSettings.ambientLight = Color.Lerp(RenderSettings.ambientLight,CorNoite,2*Time.deltaTime);
 }
 else
 {
  CameraP.backgroundColor = Color.Lerp(CameraP.backgroundColor,CorCeuT,2*Time.deltaTime);
  light.color = Color.Lerp(light.color,CorLuzT,2*Time.deltaTime);
 }
}


if (TempoAtual> 5 && TempoAtual< 6)
{
  light.intensity = 0.5*(TempoAtual-5);
  RenderSettings.ambientLight = Color.Lerp(RenderSettings.ambientLight,CorDia,2*Time.deltaTime);

  if (TempoAtual<5.5)
  {
   CameraP.backgroundColor = Color.Lerp(CameraP.backgroundColor,CorCeuT,2*Time.deltaTime);
   light.color = Color.Lerp(light.color,CorLuzT,2*Time.deltaTime);
  }
  else
  {
   CameraP.backgroundColor = Color.Lerp(CameraP.backgroundColor,CorCeuDia,2*Time.deltaTime);
   light.color = Color.Lerp(light.color,CorLuzDia,2*Time.deltaTime);
  }

}

if (TempoAtual> 6 && TempoAtual<17)
{
 light.intensity = 0.5;
 light.color = CorLuzDia;
}
}

function OnGUI()
{
 Horas = Mathf.FloorToInt(TempoAtual);
 Minutos = Mathf.FloorToInt((TempoAtual - Horas) * 60);

 if (Minutos<10)
 {
  GUI.Button(Rect(0,0,100,100),Horas+":0"+Minutos);
 }
 else
 GUI.Button(Rect(0,0,100,100),Horas+":"+Minutos);

}




Nenhum comentário:

Postar um comentário