Fonte : http://eareis.wordpress.com/2011/05/17/tutorial-%E2%80%93-jogo-em-1%C2%BA-pessoa-em-unity-3d-%E2%80%93-parte-2/

Continuando…
  • Vamos agora inserir a arma, para isto simplesmente arasste-o para a janela Project, caso você não tenha uma arma vc pode baixar a que usei, clique aqui , primeiro importe a textura e depois o objeto.
  •  
  • Adicione-o junto a Main Camera e posicione-o com os seguintes parametros do Transform:  position(0,-3.3,0.9),rotation(86.2,173.1,83.8) e Scale(0.2,0.2,0.2) .
  • Crie um cubo e adicione a arma, coloque na ponta da arma, deixe o rotation como (0,90,0) e a Scale como 1 .
  • Crie um novo TAG, para isto selecione o cubo, vá na janela Inspector, clique em Tags ( fica em cima dos campos do Transform) e AddTag, na janela que abrie clique em Tags e coloque size como 2 e nos elementos crie as Tags bala e balaIni, veja a imagem abaixo:
  • Crie um novo JavaScript , renomeio como arma e clique dias vezes nele para editá-lo.
  • Copie e cole o código abaixo
    //Velocidade do tiro
    
    var velTiro = 150.0;
     //Bala
     var balaObj : GameObject;
    
    function Atira () {
     //Cria a bala, adiciona fisica e aplica velocidade
     var bala = Instantiate(balaObj,transform.position,transform.rotation); //GameObject.CreatePrimitive(PrimitiveType.Sphere);
     bala.tag = "bala";
     //bala.transform.parent = transform;
     bala.AddComponent(Rigidbody);
     bala.transform.position = transform.position;
     bala.transform.rotation= transform.rotation;
     //bala.transform.localScale= Vector3(0.1,0.1,0.1);
     bala.rigidbody.velocity = transform.forward * velTiro*-1;
     bala.rigidbody.mass = 1;
     //toca o som do tiro
     audio.Play();
     }
    
    function Update () {
     //Atira quando aperta o botão correspondente
     if (Input.GetButtonDown("Fire1")) {
     Atira();
     }
     }
    

  • Adicione o escript ao cubo na ponta da arma
  • Crie uma esfera, scala para .1 e adicione a particula Fire1 nela, é só arrastar e soltar para a sphere.

  • Crie um novo javascript para retirar a bala da cena e aplique a bala(esfera).
  • Renomeie este Script para mataBala e edite-o.
  • Copie e código o código abaixo:
function Start () {
 meMate();
}

function meMate(){
 //Mata a bala depois de 5 segundos que ela foi criada
 yield WaitForSeconds(5);
 Destroy(gameObject);

}



  • Crie um Prefab (Asset/Create/Prefab) e adicione a efera, para isto arraste a esfera até o Prefab criado, meu prefab eu chamei de  bala.
  • Arraste o prefab criado para o campo balaObj do componente cubo que vc colocou na ponta da arma.
Agora de um Play e teste, o jogo deverá estar funcionando a função de atirar.