Pagina:

No fundo do mar - Tutorial

Pedido do usuario _mafnnoronha neste topico
Começando


Recursos

Vamos utilizar alguns recursos externos para ficar mais convicente!
Bolha. (Salve em png para salvar com transparência alfa!)
Peixe 1(Use o Photoshop para apagar a parte branca e salve em png com a transparencia)
Peixe 2(Use o Photoshop para apagar a parte branca e salve em png com a transparencia)
Terrain Assets

Preparando o terreno

Vamos como de custume criar um terreno:
Terrain > Create Terrain.
Molde como quiser, mais deixe um "buraco" para ser a vala do mar.
Agoro arraste a água:
Standard Assets > Water Basic > Daylight Simple Water.
Almente o tamanho dela e posicione.
Coloque um Player na cena:
Standard Assets > Character Controllers > First Person Controller.




Vamos programar

Crie um Java Script e nomeio de "DebaixoDagua":
Create > Java Script.
Abra-o e vamos começar com as variaveis:
Código:

var underwaterLevel = 9;

private var defaultFog = RenderSettings.fog;

private var defaultFogColor = RenderSettings.fogColor;

private var defaultFogDensity = RenderSettings.fogDensity;

private var defaultSkybox = RenderSettings.skybox;

var noSkybox : Material;

var underwaterLevel = 9; "É a variável que vamos usar para medir a posição de Y do player de acordo com a agua"
private var defaultFog = RenderSettings.fog; " Variavel que ativa ou desativa o fog na cena"

private var defaultFogColor = RenderSettings.fogColor; " Define a cor do fog na cena"

private var defaultFogDensity = RenderSettings.fogDensity; "Define a densidade do fog"

private var defaultSkybox = RenderSettings.skybox; "Muda o plano de fundo do jogo (o ceu)"

var noSkybox : Material; " A variavel que vai receber um novo Skybox(ceu) "

Código:
function Start ()

{ camera.backgroundColor = Color (0, 0.8, 0.8, 1); } // Define a cor do ceu

function Update ()

{

if (transform.position.y < underwaterLevel)  //Com para a posicção do player com a da agua!
{   
    RenderSettings.fog = true; 
    RenderSettings.fogColor = Color (0, 0.6, 0.8, 0.9);
    RenderSettings.fogDensity = 0.1;   
    RenderSettings.skybox = noSkybox;
}   

else  // Se for menor desativa
{   
    RenderSettings.fog = defaultFog;   
    RenderSettings.fogColor = defaultFogColor;     
    RenderSettings.fogDensity = defaultFogDensity;   
    RenderSettings.skybox = defaultSkybox; 
}

}

Agora Crie particle systens e use as imagens disponibilizadas acima e deixe o seu fundo do mar o mais realista possível!
O meu Fundo do mar:

Spoiler:


Finalisando...

Fiz esse tutorial na verção free! então funciona em ambas versões do unity!
Valeu galera e comentem os pots! Smile

3 comentários:

  1. Jhony, eu sou mais ativo no forum Unity Master, as vezes posto alguns tutos aqui ;)
    Acessa awe: http://unitymaster.forumeiros.com/

    Obrigado por comentar!

    ResponderExcluir

Cometem ou postem pedidos