/// <summary> /// //TODO. Refactorizar los parametros que recibe!!!! /// </summary> /// <param name="contexto"></param> /// <param name="elemento"></param> public override void ActualizarRenderizar(SuvirvalCraft contexto, Elemento elemento) { if (HayQueIluminarConElementos(contexto)) { var iluminador = AlguienIluminaAElemento(elemento); if (iluminador != null) { //Setea primero aquellos parámetros que son propios del efecto en cuestión. GetEfectoShader().SetValue("time", contexto.tiempo); iluminador.Iluminar(this, contexto.personaje.mesh.Position, elemento.ColorEmisor(), elemento.ColorAmbiente(), elemento.ColorDifuso(), elemento.ColorEspecular(), elemento.EspecularEx()); elemento.Mesh.render(); } else { GetEfectoShader().SetValue("time", contexto.tiempo); contexto.dia.GetSol() .Iluminar(contexto.personaje.mesh.Position, this, elemento.ColorEmisor(), elemento.ColorAmbiente(), elemento.ColorDifuso(), elemento.ColorEspecular(), elemento.EspecularEx()); elemento.Mesh.render(); } } else { GetEfectoShader().SetValue("time", contexto.tiempo); contexto.dia.GetSol() .Iluminar(contexto.personaje.mesh.Position, this, elemento.ColorEmisor(), elemento.ColorAmbiente(), elemento.ColorDifuso(), elemento.ColorEspecular(), elemento.EspecularEx()); elemento.Mesh.render(); } }
public override void ActualizarRenderizar(SuvirvalCraft contexto, Elemento elemento) { if (HayQueIluminarConElementos(contexto)) { var iluminador = AlguienIluminaAElemento(elemento); if (iluminador != null) { //this.Tecnica(GuiController.Instance.Shaders.getTgcMeshTechnique(elemento.Mesh.RenderType)); //this.Aplicar(elemento.Mesh); //Setea primero aquellos parámetros que son propios del efecto en cuestión. iluminador.Iluminar(this, contexto.personaje.mesh.Position, elemento.ColorEmisor(), elemento.ColorAmbiente(), elemento.ColorDifuso(), elemento.ColorEspecular(), elemento.EspecularEx()); elemento.Mesh.render(); } else { contexto.dia.GetSol() .Iluminar(contexto.personaje.mesh.Position, this, elemento.ColorEmisor(), elemento.ColorAmbiente(), elemento.ColorDifuso(), elemento.ColorEspecular(), elemento.EspecularEx()); elemento.Mesh.render(); } } else { //this.Tecnica(GuiController.Instance.Shaders.getTgcMeshTechnique(elemento.Mesh.RenderType)); //this.Aplicar(elemento.Mesh); contexto.dia.GetSol() .Iluminar(contexto.personaje.mesh.Position, this, elemento.ColorEmisor(), elemento.ColorAmbiente(), elemento.ColorDifuso(), elemento.ColorEspecular(), elemento.EspecularEx()); elemento.Mesh.render(); } }