Novo mecanismo para troca de fases
Percebi que precisava de um método mais dinâmico para trocar de cenas (entre um arquivo blend e outro) e persistir os dados entre as cenas.
Uma coisa que nem sempre agente nota em jogos é que as vezes o mesmo cenário é usado mais de uma vez só mudando um pouco o roteiro dentro dele.
É o caso da minha taverna. E de cenas onde Cibele volta mais vezes.
Ao começar a fazer os scripts percebi que em vários momentos eu sofria por ter um trabalho excessivo ao trocar de um arquivo de teste para outro. E que muitas coisas tinham que ser repetidas sem usarem os mesmos valores iniciais.
Podem chamar de vício, afinal trabalho com isso todo dia, mas resolvi seguir a linha de frameworks de web e...
Pegando a nova roupagem que fiz para a API da OgreKit as funções de manipulação de objetos ficaram mais simples. E também estou usando a Lua LOOP uma biblioteca que monta um mecanismo de classes próximo ao sistema de Orientação a Objetos convencional.
Comecei a modular os componentes necessários para o sistema funcionar, até aqui foi muito importante eu ter feito as cagadas iniciais para ter aprendido o caminho.
Baseado em frameworks estilo Rapid Development como Ruby e Zendy eu montei um mecanismo que tem um arquivo de configuração que chama a primeira classe de controle.
Se eu precisar de outro .blend eu simplesmente troco o nome da classe.
Cada controle carrega seus valoes de inicialização, e pode usar o mesmo .blend de outro.
Tudo gerido por um SceneManager no nível do script mesmo. Esse SceneManager aproveita a troca de frames (ticks) e troca a imagem em cena, dando os avisos de “carregando”, etc.
Esse modelo de “encaixe” deve ser seguido de agora em diante ^^
Comentários
Postar um comentário
Como fiquei sabendo que um pobre blogueiro foi processado por um comentário anonimo esses dias, so me resta me precaver contra a ineficácia da legislação em tratar o meio online. Mas eu prometo que libero rapido ^_~