  <?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Athanazio &#187; unity3d</title>
	<atom:link href="http://www.athanazio.com/tag/unity3d/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.athanazio.com</link>
	<description>Nada é Simples, Mas Tudo é Possível</description>
	<lastBuildDate>Thu, 01 Dec 2011 03:47:23 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>detonator &#8211; unity3D</title>
		<link>http://www.athanazio.com/2009/10/09/detonator-unity3d/</link>
		<comments>http://www.athanazio.com/2009/10/09/detonator-unity3d/#comments</comments>
		<pubDate>Fri, 09 Oct 2009 13:16:28 +0000</pubDate>
		<dc:creator>athanazio</dc:creator>
				<category><![CDATA[trecos]]></category>
		<category><![CDATA[explode]]></category>
		<category><![CDATA[explosion]]></category>
		<category><![CDATA[unity3d]]></category>

		<guid isPermaLink="false">http://www.athanazio.com/2009/10/09/detonator-unity3d/</guid>
		<description><![CDATA[Show de biblioteca de explosoes para unity3D !!]]></description>
			<content:encoded><![CDATA[<div id="HOTWordsTxt" name="HOTWordsTxt"><p><iframe id="" name="" src="http://variancetheory.com/wp-content/plugins/WP_UnityObject/php/WP_Content.php" marginheight="0" frameborder="0" height="337" width="600" scrolling="no"></iframe><br />
Show de <a href="http://variancetheory.com/detonator-parametric-explosion-framework-for-unity3d/">biblioteca de explosoes</a> para unity3D !!</p>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.athanazio.com/2009/10/09/detonator-unity3d/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>unity3d passo 6 &#8211; tudo junto num jogo</title>
		<link>http://www.athanazio.com/2009/09/30/unity3d-passo-6-tudo-junto-num-jogo/</link>
		<comments>http://www.athanazio.com/2009/09/30/unity3d-passo-6-tudo-junto-num-jogo/#comments</comments>
		<pubDate>Thu, 01 Oct 2009 02:23:02 +0000</pubDate>
		<dc:creator>athanazio</dc:creator>
				<category><![CDATA[games]]></category>
		<category><![CDATA[programacao]]></category>
		<category><![CDATA[unity3d]]></category>
		<category><![CDATA[alfa]]></category>
		<category><![CDATA[alpha]]></category>
		<category><![CDATA[drop then all]]></category>
		<category><![CDATA[level restart]]></category>
		<category><![CDATA[scene change]]></category>

		<guid isPermaLink="false">http://www.athanazio.com/?p=2193</guid>
		<description><![CDATA[Esta eh uma versao mais arrumada destas minhas investigacoes do Unity3D. Alguns comentarios sobre o codigo abaixo que eh novinho em folha. Este codigo esta associado ao personagem que esta em movimento, ou seja se o danado colidir com o plano chamado &#8220;bottom&#8221; que esta abaixo das plataformas, ou com algum dos inimigos a variavel [...]]]></description>
			<content:encoded><![CDATA[<div id="HOTWordsTxt" name="HOTWordsTxt"><p><a href="http://www.athanazio.com/wp-content/uploads/2009/09/dropthenall_alpha1.html"><img src="http://www.athanazio.com/wp-content/uploads/2009/09/drop-than-all-alpha1.jpg" alt="drop than all alpha1" title="drop than all alpha1" width="450" height="338" class="alignnone size-full wp-image-2194" /></a><br />
Esta eh uma <a href="http://www.athanazio.com/wp-content/uploads/2009/09/dropthenall_alpha1.html">versao mais arrumada</a> destas minhas investigacoes do Unity3D.</p>
<p>Alguns comentarios sobre o codigo abaixo que eh novinho em folha.</p>
<pre class="brush: jscript; title: ; notranslate">
static var dead:int = 0;

function Awake () {
	dead = 0;
}

function OnCollisionEnter(collision : Collision) {

	if( collision.collider.name == &quot;bottom&quot; || collision.collider.tag == &quot;enemy&quot;){
		dead = 1;
		var message = GameObject.Find(&quot;end of level&quot;);
		var message2 = GameObject.Find(&quot;end of level2&quot;);
		message.guiText.text = &quot;You failed.&quot;;
		message2.guiText.text = &quot;Click to restart&quot;;
		audio.Play();
	}
}

function Update () {

	if( dead == 1 ){
		if (Input.GetButtonDown(&quot;Fire1&quot;)) {
			Application.LoadLevel (Application.loadedLevel);
		}
	}

}
</pre>
<p>Este codigo esta associado ao personagem que esta em movimento, ou seja se o danado colidir com o plano chamado &#8220;bottom&#8221; que esta abaixo das plataformas, ou com algum dos inimigos a variavel dead eh setada para 1, algumas mensagens sao exibidas e o som correspondente toca.</p>
<p>Quando estiver neste estado de &#8220;morto&#8221; (dead==1) o update deste mesmo script vai verificar se o click foi pressionado para ai entao recarregar a cena atual, detalhe que a funcao Awake garante que nao reiniciamos a cena com o personagem morto <img src='http://www.athanazio.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  porque a variavel eh static e portanto o reload da cena nao apaga seu valor.</p>
<p>usei esta variavel em outros pontos do de outros scripts, como por exemplo para impedir que o tiro fosse disparado ou o personagem movimentado se estivesse no estado de morto, veja como foi usado</p>
<pre class="brush: jscript; title: ; notranslate">
var speed:int = 10.0;

function FireRocket () {
	// dont fire if the char is dead
	if (restart_if_char_die.dead == 1) return;
	if( count_enemies.end_level == 1) return;

	var bullet = GameObject.CreatePrimitive(PrimitiveType.Sphere);
	bullet.tag = &quot;bullet&quot;;
	bullet.AddComponent(Rigidbody);

	bullet.transform.position = transform.position;
	bullet.transform.rotation= transform.rotation;
	bullet.transform.localScale= transform.localScale;

    bullet.rigidbody.velocity = transform.forward * speed * -1;
	bullet.rigidbody.mass = 5;
	audio.Play();
}

function Update () {
    if (Input.GetButtonDown(&quot;Fire1&quot;)) {
        FireRocket();
    }
}
</pre>
<p>bom eh isto ae divirta-se jogando as caixinhas do alto, pena que elas nao gritam <img src='http://www.athanazio.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.athanazio.com/2009/09/30/unity3d-passo-6-tudo-junto-num-jogo/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>unity3d passo 5 &#8211; quero te falar &#8230;</title>
		<link>http://www.athanazio.com/2009/09/30/unity3d-passo-5-quero-te-falar/</link>
		<comments>http://www.athanazio.com/2009/09/30/unity3d-passo-5-quero-te-falar/#comments</comments>
		<pubDate>Thu, 01 Oct 2009 02:01:09 +0000</pubDate>
		<dc:creator>athanazio</dc:creator>
				<category><![CDATA[games]]></category>
		<category><![CDATA[programacao]]></category>
		<category><![CDATA[unity3d]]></category>
		<category><![CDATA[2d]]></category>
		<category><![CDATA[guitext]]></category>
		<category><![CDATA[texto]]></category>

		<guid isPermaLink="false">http://www.athanazio.com/?p=2185</guid>
		<description><![CDATA[Alem das coisas em 3D que giram explodem e coisa e tal precisamos de textos 2D pendurados em alguns lugares da tela, para isto adicionamos um GUIText, e o legal do GUIText eh o seu posicionamento na tela, que eh bem simples usando somente as coordenadas X e Y (2D pelamordeDEus) no intervalo de 0 [...]]]></description>
			<content:encoded><![CDATA[<div id="HOTWordsTxt" name="HOTWordsTxt"><p>Alem das coisas em 3D que giram explodem e coisa e tal precisamos de textos 2D pendurados em alguns lugares da tela, para isto adicionamos um GUIText, e o legal do GUIText eh o seu posicionamento na tela, que eh bem simples usando somente as coordenadas X e Y (2D pelamordeDEus) no intervalo de 0 a 1.</p>
<p>canto superior esquerdo : X=0 e Y=1<br />
canto superior direito : X=0.9 e Y=1<br />
canto inferior esquerdo : X=0 e Y=0.1<br />
canto inferior direito : X=0.9 e Y=0.1</p>
<p>bons texto pra vc <img src='http://www.athanazio.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.athanazio.com/2009/09/30/unity3d-passo-5-quero-te-falar/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>unity3d passo 4 &#8211; quando as coisas se encontram</title>
		<link>http://www.athanazio.com/2009/09/30/unity3d-passo-4-quando-as-coisas-se-encontram/</link>
		<comments>http://www.athanazio.com/2009/09/30/unity3d-passo-4-quando-as-coisas-se-encontram/#comments</comments>
		<pubDate>Thu, 01 Oct 2009 02:00:07 +0000</pubDate>
		<dc:creator>athanazio</dc:creator>
				<category><![CDATA[games]]></category>
		<category><![CDATA[programacao]]></category>
		<category><![CDATA[unity3d]]></category>
		<category><![CDATA[colisao]]></category>
		<category><![CDATA[collision]]></category>
		<category><![CDATA[destroy]]></category>
		<category><![CDATA[find]]></category>
		<category><![CDATA[findbytag]]></category>
		<category><![CDATA[tags]]></category>

		<guid isPermaLink="false">http://www.athanazio.com/?p=2178</guid>
		<description><![CDATA[Nada como controlar colisao para fazer as coisas acontecerem em um jogo, algumas referencias sao base para isto : ScriptReference/Collision.html a funcao OnCollisionEnter e os detalhes do objeto de colisao o Collider para testar quero remover o cubo do jogo se ele colidir com o personagem, considerando que o nome do personagem eh char teriamos [...]]]></description>
			<content:encoded><![CDATA[<div id="HOTWordsTxt" name="HOTWordsTxt"><p>Nada como controlar colisao para fazer as coisas acontecerem em um jogo, algumas referencias sao base para isto :</p>
<p><a href="http://unity3d.com/support/documentation/ScriptReference/Collision.html">ScriptReference/Collision.html</a><br />
a <a href="http://unity3d.com/support/documentation/ScriptReference/Collider.OnCollisionEnter.html?from=Collision">funcao OnCollisionEnter</a> e os detalhes do objeto de colisao o <a href="http://unity3d.com/support/documentation/ScriptReference/Collider.html">Collider</a></p>
<p>para testar quero remover o cubo do jogo se ele colidir com o personagem, considerando que o nome do personagem eh char teriamos algo assim :</p>
<pre class="brush: jscript; title: ; notranslate">
function OnCollisionEnter(collision : Collision) {

	if( collision.collider.name == &quot;char&quot; ){
		Destroy( gameObject );
	}
}
</pre>
<p>E este script deve ser adicionado ao prefab que dara origem a todos os cubos assim nao temos de recriar ou reassociar script a cada um dos elementos da tela.</p>
<p><strong>Contagem de inimigos</strong></p>
<p>Outra funcao importante eh contar itens na tela no caso quero contar quantos inimigos ainda estao na cena, o codigo usa o metodo <a href="http://unity3d.com/support/documentation/ScriptReference/GameObject.Find.html">Find </a>da class GameObject e o metodo de <a href="http://unity3d.com/support/documentation/ScriptReference/GameObject.FindGameObjectsWithTag.html">FindGameObjectsWithTag </a>,</p>
<p>[/code]<br />
function Update () {<br />
	var enemies = GameObject.FindGameObjectsWithTag ("enemy");<br />
	var counter = GameObject.Find("enemies counter");<br />
	counter.guiText.text = "enemies found : " + enemies.length;<br />
}<br />
[/code ]</p>
<p>Note que o "enemies counter" eh um GUIText que esta sendo usado para indicar quantos inimigos estao ativos na cena.</p>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.athanazio.com/2009/09/30/unity3d-passo-4-quando-as-coisas-se-encontram/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>unity3d passo 3 &#8211; tiros e mais tiros !</title>
		<link>http://www.athanazio.com/2009/09/30/unity3d-passo-3-tiros-e-mais-tiros/</link>
		<comments>http://www.athanazio.com/2009/09/30/unity3d-passo-3-tiros-e-mais-tiros/#comments</comments>
		<pubDate>Wed, 30 Sep 2009 05:07:59 +0000</pubDate>
		<dc:creator>athanazio</dc:creator>
				<category><![CDATA[games]]></category>
		<category><![CDATA[programacao]]></category>
		<category><![CDATA[unity3d]]></category>
		<category><![CDATA[3ds]]></category>
		<category><![CDATA[camera]]></category>
		<category><![CDATA[fontes]]></category>
		<category><![CDATA[menu]]></category>
		<category><![CDATA[shoot]]></category>
		<category><![CDATA[side camera]]></category>
		<category><![CDATA[tiro]]></category>
		<category><![CDATA[ttf]]></category>

		<guid isPermaLink="false">http://www.athanazio.com/?p=2161</guid>
		<description><![CDATA[jogue a versao atual ! tankdrop-20090929 link que salvou a noite unity3d.com/support/documentation/ScriptReference/index.html Varias novidades exploradas nesta versao disparo de tiro criacao de cena de menu princial carga de objeto no formato 3ds camera de ladinho Uso de fontes TTF vamos falar primeiro do disparo do tiro. A ideia inicial era de calcular para que direçao [...]]]></description>
			<content:encoded><![CDATA[<div id="HOTWordsTxt" name="HOTWordsTxt"><p><a href="http://www.athanazio.com/wp-content/uploads/2009/09/tankdrop-20090929.html"><img class="alignnone size-full wp-image-2165" title="tank drop" src="http://www.athanazio.com/wp-content/uploads/2009/09/tank-drop.jpg" alt="tank drop" width="450" height="340" /></a><br />
<a href="http://www.athanazio.com/wp-content/uploads/2009/09/tankdrop-20090929.html">jogue a versao atual ! tankdrop-20090929</a></p>
<p>link que salvou a noite <img src='http://www.athanazio.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
<a href="http://unity3d.com/support/documentation/ScriptReference/index.html">unity3d.com/support/documentation/ScriptReference/index.html</a></p>
<p>Varias novidades exploradas nesta versao</p>
<ul>
<li>disparo de tiro</li>
<li>criacao de cena de menu princial</li>
<li>carga de objeto no formato 3ds</li>
<li>camera de ladinho</li>
<li>Uso de fontes TTF</li>
</ul>
<p>vamos falar primeiro do disparo do tiro. A ideia inicial era de calcular para que direçao o tanque esta apontando e criar um novo objeto com um rigid body e em alta velocidade na mesma direcao do tanque. Era uma boa intencao mas as contas de determinar para que direcao ficaram um pouco chatinhas, dai tive a ideia de criar um subobjeto do tanque, que eh um quadradinho na posicao onde quero que saia o tiro e adicionei um script a este cubinho, algo assim</p>
<pre class="brush: jscript; title: ; notranslate">
var speed = 150.0;

function FireRocket () {
	var bullet = GameObject.CreatePrimitive(PrimitiveType.Sphere);
        bullet.AddComponent(Rigidbody);
	bullet.transform.position = transform.position;
	bullet.transform.rotation= transform.rotation;
	//bullet.transform.localScale= transform.localScale;
    bullet.rigidbody.velocity = transform.forward * speed * -1;
	bullet.rigidbody.mass = 3;
}

function Update () {
    if (Input.GetButtonDown(&quot;Fire1&quot;)) {
        FireRocket();
    }
}
</pre>
<p>um detalhe importante que demorei para acertar eh a rotacao do quadradinho de origem do tiro, acabei verificando que rotacionando Y em 270 fica na posicao certa do tiro. e Se for necessario redimensionar o projetil para o tamanho do quadrado por exemplo, basta descomentar o trecho 	&#8220;bullet.transform.localScale= transform.localScale;&#8221; que vai reproduzir a mesma escala aplicada  ao quadrado para o projetil.</p>
<p>a massa do projetil eh interessante se vc deseja que o tiro vah arrastando coisas com controle fisico pelo caminho, faltou adicionar um som e umas particulas de fumaca na hora do tiro mas jah jah coloco isto <img src='http://www.athanazio.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><strong>A novela do menu principal</strong><br />
para mim o mais dificil foi alinhar a camera com o cubo que resolvi colocar como fundo da tela principal, mas depois me manquei que bastava colocar todo mundo na origem, cubo e camera, e depois ir afastando a camera aos pouquinhos. Nem sei ainda se esta eh a melhor maneira, mas funcionou <img src='http://www.athanazio.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>O efeito de fazer o texto cair, fiz com a criacao de duas caixas, sendo a de cima com rigidbody e suspensa no ar, logo quando inicia a cena a caixa cai, criei um GUI Text como subobjeto da caixa que cai e pronto o texto cai acompanhando a caixa, e para que as caixas em questao nao tivessem nenhum tipo de rederizacao removi o componente Mesh Renderer de cada um.</p>
<p>e para realizar a transicao para a proxima cena, usei o seguinte script que anexei no GuiText &#8220;Play&#8221;</p>
<pre class="brush: jscript; title: ; notranslate">
function Update () {
    if (Input.GetButtonDown(&quot;Fire1&quot;)) {
		Application.LoadLevel (1);
	}
}
</pre>
<p>Observe que o numero do level fica determinado na tela de configuracao do build &#8220;File / Build Settings&#8221;, e lembre-se de nunca ficar mexendo as cenas pelos diretorios <img src='http://www.athanazio.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  fiz isto e deu uma baguncada boa nos build settings hehehe.</p>
<p><strong>carga de objeto no formato 3ds</strong><br />
Foi muito sem graça hehehe baixei o arquivo do <a href="https://www.turbosquid.com/">www.turbosquid.com/</a> (fica atento que se na hora da busca ordenar pelo menor preco tem varios modelos de graça) descompactei e arrastei sobre o projeto, e arrastei sobre a cena, mudei a escala e pronto todos felizes com o RV2 tank como subobjeto do meu &#8220;char&#8221;</p>
<p><strong>camera de ladinho</strong><br />
A camera smooth follow nao servia para o que eu queria, o que eu precisava eh uma camera que acompanhasse o tanque mas q quando ele rodasse nao rodasse junto, ou seja uma smotth follow sem rotation <img src='http://www.athanazio.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  dei uma canibalizada na smotth follow e sobrou isto aqui </p>
<pre class="brush: jscript; title: ; notranslate">
var target : Transform;
var distance = 10.0;
var height = 5.0;

// Place the script in the Camera-Control group in the component menu
@script AddComponentMenu(&quot;Camera-Control/Smooth Follow - no rotation&quot;)

function LateUpdate () {
	if (!target)	return;

	wantedHeight = target.position.y + height;
	currentHeight = transform.position.y;
	currentHeight = Mathf.Lerp (currentHeight, wantedHeight, Time.deltaTime);

	transform.position = target.position;
	transform.position -= Vector3.forward * distance;

	transform.position.y = currentHeight;
	transform.LookAt (target);
}
</pre>
<p>O Legal das fontes eh lembrar de criar um objeto de fonte para cada tamanho que sera usado, tirando este detalhe eh bem transparente o uso facim facim, arrasta o arquivo da fonte para o projeto e pimba troca o tamanho e da apply que o unity gera a imagem da fonte no tamanho que eh necessario.</p>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.athanazio.com/2009/09/30/unity3d-passo-3-tiros-e-mais-tiros/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>unity3d passo 2</title>
		<link>http://www.athanazio.com/2009/09/25/unity3d-passo-2/</link>
		<comments>http://www.athanazio.com/2009/09/25/unity3d-passo-2/#comments</comments>
		<pubDate>Fri, 25 Sep 2009 04:37:50 +0000</pubDate>
		<dc:creator>athanazio</dc:creator>
				<category><![CDATA[games]]></category>
		<category><![CDATA[programacao]]></category>
		<category><![CDATA[unity3d]]></category>
		<category><![CDATA[elevador]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[material]]></category>
		<category><![CDATA[position]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[Y]]></category>

		<guid isPermaLink="false">http://www.athanazio.com/?p=2131</guid>
		<description><![CDATA[Mais coisas interessantes no Unity3D, algumas teclas de atalho interessantes : a sequencia QWER muda a forma de manipulacao dos objetos, e de acordo com a forma que estiver selecionada, quando vc clica no fundo muda a forma como arrastar o mouse sobre a tela vai mudar a sua visualização da scene enquanto estiver trabalhando. [...]]]></description>
			<content:encoded><![CDATA[<div id="HOTWordsTxt" name="HOTWordsTxt"><p><a href="http://www.athanazio.com/wp-content/uploads/2009/09/move-box2.html"><img src="http://www.athanazio.com/wp-content/uploads/2009/09/unity-screenshot-passo-2.jpg" alt="unity screenshot passo 2" title="unity screenshot passo 2" width="450" height="339" class="alignnone size-full wp-image-2133" /></a></p>
<p>Mais coisas interessantes no Unity3D, algumas teclas de atalho interessantes : a sequencia QWER muda a forma de manipulacao dos objetos, e de acordo com a forma que estiver selecionada, quando vc clica no fundo muda a forma como arrastar o mouse sobre a tela vai mudar a sua visualização da scene enquanto estiver trabalhando. isto me deu uma dor de cabeça de primeira heheheh como me achar com os oibjetos 3D <img src='http://www.athanazio.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>outra coisa nova descoberta, como debugar ! basta usar o objeto <a href="http://unity3d.com/support/documentation/ScriptReference/Debug.Log.html">Debug</a> <img src='http://www.athanazio.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  facil facil.</p>
<p>Fiz um script para um elevador, funcionou como esperado veja soh como ficou o codigo :</p>
<pre class="brush: jscript; title: ; notranslate">
// smaller value
var start:float;

//greater value
var end:float;
var speed: int = 15;
var direction: int = 1;
var sleep:float = 4000;
var elapsed:float = 0;

function Update () {

	var y = speed * Time.deltaTime * direction;

	// check if the limit is reach and inverse the direction
	if( elapsed &lt;= 0 ){
		if( direction == 1 ){
			if( transform.position.y + y &gt; end ){
				transform.position.y = end;
				elapsed = sleep;
				direction = -1;
			}else {
				transform.Translate(0 , y, 0 );
			}
		} else {
			if( transform.position.y + y &lt; start ){
				transform.position.y = start;
				elapsed = sleep;
				direction = 1;
			}else {
				transform.Translate(0 , y, 0 );
			}
		}
	} else {
		elapsed = elapsed - Time.deltaTime;
	}

	Debug.Log(elapsed);
}
</pre>
<p>Este codigo eh arrastado sobre um gameObject que no caso eh um plano, e determino o Y inicial do objeto e o Y final, o tempo que o elevador fica parado em sleep, e a velocidade que vai se deslocar. fica assim na interface :<br />
<img src="http://www.athanazio.com/wp-content/uploads/2009/09/unity-script-details-elevator.jpg" alt="unity script details elevator" title="unity script details elevator" width="449" height="313" class="alignnone size-full wp-image-2132" /></p>
<p>Outro aprendizado importante foi como criar materiais, usa Asset / Create / Material e pronto ! dai vc configura os detalhes do material e aplica o material sobre o objeto desejado.</p>
<p>o controle do personagem ainda esta engraçado heheheh tipo quando cai e vira de cabeça para baixo inverte tudo <img src='http://www.athanazio.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  ainda estou pensando no que fazer, estou com as seguintes opções em mente :</p>
<ul>
<li>Nao deixar o personagem virar</li>
<li>Controlar se ele virou e inverter a transformacao para refletir que esta virado</li>
<li>Mudar a forma de controlar para ficar parecido com um carro, usando as setas para controlar o volante, e acelerando com seta para cima</li>
</ul>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.athanazio.com/2009/09/25/unity3d-passo-2/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>unity3d passo 1</title>
		<link>http://www.athanazio.com/2009/09/22/unity3d-passo-1/</link>
		<comments>http://www.athanazio.com/2009/09/22/unity3d-passo-1/#comments</comments>
		<pubDate>Tue, 22 Sep 2009 03:37:29 +0000</pubDate>
		<dc:creator>athanazio</dc:creator>
				<category><![CDATA[games]]></category>
		<category><![CDATA[programacao]]></category>
		<category><![CDATA[unity3d]]></category>
		<category><![CDATA[3d]]></category>
		<category><![CDATA[coding]]></category>
		<category><![CDATA[hello world]]></category>
		<category><![CDATA[javas]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[move]]></category>
		<category><![CDATA[update]]></category>

		<guid isPermaLink="false">http://www.athanazio.com/?p=2103</guid>
		<description><![CDATA[Esta eh a primeira aventura com o Unity3D, graças a um esperto tutorial do Erick consegui dar os primeiros passos no Unity3D !! o resultado pode ser encontrado aqui : move-box1 Quero registrar alguns passos importantes que aprendi : 1. O chao vira chao quando vc chama ele de chao hehehehe neste exemplo adicionei um [...]]]></description>
			<content:encoded><![CDATA[<div id="HOTWordsTxt" name="HOTWordsTxt"><p><a href="http://www.athanazio.com/wp-content/uploads/2009/09/move-box1.html"><img class="alignnone size-full wp-image-2108" title="movebox1" src="http://www.athanazio.com/wp-content/uploads/2009/09/movebox1.jpg" alt="movebox1" width="450" height="343" /><br />
</a>Esta eh a primeira aventura com o Unity3D, graças a um esperto tutorial do <a href="http://sertao3d.wordpress.com/">Erick </a>consegui dar os primeiros passos no Unity3D !! o resultado pode ser encontrado aqui : <a href="http://www.athanazio.com/wp-content/uploads/2009/09/move-box1.html">move-box1</a></p>
<p>Quero registrar alguns passos importantes que aprendi :</p>
<p>1. O chao vira chao quando vc chama ele de chao <img src='http://www.athanazio.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  hehehehe neste exemplo adicionei um cubo usando a opcao : &#8216;Game Object / Create Other / Cube&#8217;, fiz ele ficar mais larguinho para dar mais estabilidade ao movimento e adicionei o component de corpo rigido atraves de : &#8216;Component / Physics / Rigid Body&#8217; pronto isto bastaria para todos serem felizes e o cubo nao passar do chao quando dah o play.</p>
<p>2. nao entendi ainda como usar um Shader para cada elemento heheheh quando mudo a cor do plano muda a cor da rampinha que fiz</p>
<p>3. adicionei um codigo javascript e arrastei sobre o cubo, pronto !! o metodo update implementado fica valendo para o objeto, e uma variavel que declarei no codigo : var speed:int ficou on inspector do objeto, simplim simplim</p>
<p>olha o codigo usado para o controle de teclado:</p>
<pre class="brush: jscript; title: ; notranslate">
var speed: int;
function Update () {
    var x = Input.GetAxis(&quot;Horizontal&quot;) * speed * Time.deltaTime;
    var y = 0;
    var z = Input.GetAxis(&quot;Vertical&quot;) * speed * Time.deltaTime;
    transform.Translate(x , y, z );
}
</pre>
<p>4. e este links salvaram o dia<br />
<a href="http://unity3d.com/support/documentation/Manual/Creating%20Gameplay.html">documentacao sobre o gameplay</a><br />
<a href="http://unity3d.com/support/documentation/Manual/Physics.html">documentacao sobre a fisica </a><br />
<a href="http://unity3d.com/support/documentation/Manual/Input.html">documentacao sobre o input </a><br />
<a href="http://forum.unity3d.com/viewtopic.php?t=5563&amp;highlight=transform+translate+input+getaxis+horizontal">post sobre movimentacao com teclas</a></p>
<p>por enquanto eh soh, depois tem mais</p>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.athanazio.com/2009/09/22/unity3d-passo-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>thumbledrop in 2</title>
		<link>http://www.athanazio.com/2009/03/21/thumbledrop-in-2/</link>
		<comments>http://www.athanazio.com/2009/03/21/thumbledrop-in-2/#comments</comments>
		<pubDate>Sat, 21 Mar 2009 03:34:25 +0000</pubDate>
		<dc:creator>athanazio</dc:creator>
				<category><![CDATA[games]]></category>
		<category><![CDATA[estrelas]]></category>
		<category><![CDATA[estrelinha]]></category>
		<category><![CDATA[physics]]></category>
		<category><![CDATA[unity3d]]></category>

		<guid isPermaLink="false">http://www.athanazio.com/?p=1768</guid>
		<description><![CDATA[ahhahaha in two moves ! http://www.tumbledrop.com/]]></description>
			<content:encoded><![CDATA[<div id="HOTWordsTxt" name="HOTWordsTxt"><p>ahhahaha in two moves !<br />
<a href="http://www.athanazio.com/wp-content/uploads/2009/03/thumbledrop-in-2.png"><img src="http://www.athanazio.com/wp-content/uploads/2009/03/thumbledrop-in-2-450x270.png" alt="thumbledrop-in-2" title="thumbledrop-in-2" width="450" height="270" class="alignnone size-medium wp-image-1769" /></a></p>
<p><a href="http://www.tumbledrop.com/">http://www.tumbledrop.com/</a></p>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.athanazio.com/2009/03/21/thumbledrop-in-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

