Mai 19

O projeto deu pau !!!

É pessoal…más notícias.

Houve uma atualização da versão 3.5.2f2 que simplesmente detonou todo meu projeto, como era tudo nas nuvens (com uso do dropbox) acabei perdendo o backup do PC (vou amanhã fazer uma cópia da versão do notebook) e ver se vai dar certo (esperança ainda me resta).

Para vocês terem idéia do que aconteceu na última versão basta ver pela caixa de dialogo de documentação inline (eu esperava um online, mas enfim). A coisa ficou tão feia que eu perdi todas as referências para minhas texturas e começou a ter bugs muito malucos (só de mover um objeto em design time eu não visualizo texturas).

Um exemplo simples era o level que eu estava montando para conferir as animações do space car. O modelo está no ambiente de desenvolvimento, porém sem nada, nem se quer o mesh existe. São somente referências (repare que as animações ainda são referenciadas).

Mai 14

Placa de vídeo nova

Infelizmente fiquei algum tempo parado (aproximadamente 3 semanas) por conta da minha placa de vídeo (uma GEForce 8400 GS) ter ido desta para melhor.

Realmente minha placa me deixou na mão quando eu estava mais exigindo dela.

So para constar, agora tenho uma GEForce 430 (é … o dinheiro não deu para comprar uma super-ultra-mega placa, mas dá para o gasto). :)

Edit: só para constar não adiantou $#%@ nenhuma, o erro mesmo no Windows 7 permanece :x :x

Abr 29

npc20093 – revisão e generalização

Muito tempo atrás eu criei um modelo gordinho para ser usado em partes específicas do jogo. O trabalho tinha ficado legal, então resolvi aproveitar o modelo novamente de forma a reutilizar ele para outras partes do jogo.

O primeiro passo foi limpar as áreas definidas do modelo anterior (mangas de blusa, volumes criados para a área do pescoço e por fim a área do tornozelo que produzia uma bota com relevo do modelo).

O modelo ficou com uma boa (e caricata) silhueta, bom saliência expressiva na barriga e assim comecei a pensar na generalização dele, e aproveitando o embalo fiz a primeira versão minerador para a fase das minas próximo ao vilarejo. Para isso fiz um sketch rápido (nem precisa falar, você mesmo vai notar) com a idéia do que seria legal para o modelo e ficasse simples.

Depois foi partir para a texturização e modelagem (das partes anexadas), uma outra vantagem do processo de reaproveitamento é não perder tempo com modelos já prontos (e nisso o Blender ajuda bastante com o processo de Append).

Modelei os objetos a anexar (no caso dele foi somente a bolsa) e pronto. Ainda vou fazer uma revisão dos highlights para deixar a textura dele (principalmente a calça) mais suave.

Aqui estão passos do rigging finalizado:

E aqui está uma pose básica

Depois de formatar meu pc estou quase conseguindo fazer animações no Blender, minha placa de vídeo está indo dessa para melhor, o PC trava , dá tela azul com erro de barramento da placa e perco tudo :x

Abr 22

Ajustando fases com novo padrão de NPC

Sim, está dando trabalho mas estou refazendo todos os NPCs que já estavam prontos usando o novo padrão de script e prefab que estou seguindo.

A idéia daqui para frente é reduzir a quantidade de modelos distintos, e passar a ter mais componentes que geram diferença visual entre versões do mesmo modelo. Texturas e objetos anexados deverão dar esta sensação e gradativamente vou retirar muitos dos NPCs que havia criado para concentrar tempo e esforço em criar objetos secundários.

Abr 16

Unity – configurando velocidades de animação

Uma das coisas mais irritantes quando se leva um modelo 3D animado para dentro da engine e começa a testar ele é que você sempre vai ter o efeito todos de uma vez só, ou seja, todas as instâncias que você criar deste modelo apresentarão obrigatoriamente a mesma velocidade de animação.

A menos é claro que você configure algo para que isso não ocorra. Na verdade é um processo simples, porém requer passos certos para fazer isso.

Quando falamos de prefabs na Unity principalmente temos a sensação de que algo precisa ser feito, senão fica tudo ridiculamente igual !

O primeiro passo para resolver o problema é criar uma variável pública no seu script:

public float velocidadeAnimacao = 0.8f;

Depois, disso no evento de inicialização dos objetos e pronto:

 void Awake()
 {
        foreach (AnimationState a in gameObject.GetComponentInChildren<Animation>())
        {
            a.speed = velocidadeAnimacao;
        }
 }

Pronto, agora no Inspector da Unity você terá o simples trabalho de configurar individualmente valores para seus prefabs, claro que estamos falando de programação, então tem várias maneiras de resolver o problema, como por exemplo usar a classe Random para que ela forneça automaticamente valores.

Nesse ponto, vai do gosto do freguês, eu prefiro ter uma variável no Inspetor e simplesmente configurar.

Artigos mais antigos «