Comunidad de diseño web y desarrollo en internet online

Exíste alguna lógica o metodología para la creación de juegos en AS3 ?

Citar            
MensajeEscrito el 19 Jul 2013 07:31 pm
Saludos ActionScriptianos();

Se me ha surgido un problema al momento de empezar a programar juegos y aplicaciones con AS3. Entiendo perfectamente la programación orientada a objetos, lo que no entiendo es como puedo llegár a organizar de manera correcta tal modo que esté optimizado, o sea que se esté utilizando los recursos necesarios en tiempos necesarios.

Por ejemplo, yo uso una combinación de los frameworks Starling y Away3D en sus ultimas versiones, Starling para las interfaces o Menus, y Away3D para el juego principal. Por facilidad hago simplemente un "hide" de todas mis vistas Que llegarian ha ser (home, options, shared, credits, game, record, etc.); muestro y oculto las vistas segun se presionan los botones en el escenario. Y lo que pasa es que creo que como están ocultos siguen ejecutandose. El escenario 3D está ahí pero oculto, cuando estoy viendo la vista Records. Tengo que eliminar clases y crear nuevas? no entiendo como manejarlas, que clases principales deben estár en el main.as, la clase de manejador de vistas ?...

Espero me hayan comprendido. saludos...

Por WWCC

113 de clabLevel



Genero:Masculino  

Diseñador y desarrollador multimedia

firefox
Citar            
MensajeEscrito el 26 Jul 2013 08:20 am
Para crear un juego solo hay que aplicar algo lógica ser metódico, ordenado y previsor. Siempre que puedas debes optimizar los gráficos y el código, tienes que procurar de eliminar cualquier recurso como eventos, gráficos, objetos cuando estos no sean necesarios y utilizarlos solo cuando sea necesario.

Siempre que crees una clase, grafico u objeto debes proveerlo de un método que te asegure que puedes eliminarlo completamente de la memoria o enviarlo al recolector de basura, y otro método que te permita volverlo a utilizar cuando sea necesario.

En casos en los que sea necesario en un inervarlo corto de tiempo añadir o quitar elementos del display list repetidas veces, se podría contemplar la opción de utilizar la propiedad visible en vez de addChild o removeChild ya que consumen mucho mas y posteriormente cuando ya no sea necesario dicho objeto durante un periodo más largo de tiempo utilizar removeChild para eliminarlo definitivamente. (Como este truco existen otros tantos)

Tienes que ser previsor y mirar más allá, es decir antes de empezar debes hacerte un plano mental de todo lo que puede o pueda llegar hacer el juego actualmente o en el futuro, de esa manera podrás hacer una mejor idea de cómo afrontar el proyecto y el código y ahorrarte trabajo más adelante, aunque esto no te evitara por ejemplo a mitad del juego ir viendo mejoras o impedimentos no previstos que te obligaran a reescribir el código o varias clases existentes pero te ayudara bastante y quizás evitar llegar a un error sin solución en tu motor.

En cuanto a los frameworks pues sinceramente no lo he tocado, solo he hecho pequeños experimentos con PROSCENIUM de adobe, pero me imagino que el equipo que hay detrás de cada uno de los frameworks se habrá encargado de liberar todos los recursos posibles cuando utilizas la opción hide para una escena, en caso contrario tienes que averiguar qué recursos se quedan en proceso innecesariamente y eliminarlos y reconstruirlo posteriormente cuando lo necesites. Tienes que preocuparte más por los recursos del procesador cuando es un juego basado solo en CPU sin soporte para GPU.

En fin se podría escribir un libro entero sobre metodología o logia de trabajo en un juego pero yo creo que es algo que iras aprendiendo con el tiempo y yo tampoco soy una gurú del tema.
Así que en definitiva, procura eliminar siempre que puedas cualquier cosa que este consumiendo recursos si no se está utilizando. Contempla la carga dinámica de assets, asi como separar en archivos externos pantallas como el menú o las diferentes partes que componen el juego, optimiza y ordena los gráficos, el audio y el código para que sea lo más corto y rápido posible.

Y nada no se me ocurre nada mas :) espero que te sirva de algo.
Suerte con el proyecto.

Por giskard

110 de clabLevel



Genero:Masculino  

Programador y diseñador web

msie
Citar            
MensajeEscrito el 29 Jul 2013 12:32 am
Muchas gracias Giskard, creeme que voy a tomar muy en cuenta tus consideraciones mencionadas, investigando la manera de optimizarlos a un 100% o por lo menos a un 99% y crear una metodologia de trabajo que saque el máximo provecho en proyectos aplicativos para programadores en AS3, los estaré informando por este medio, sobre mi metodologia planteada.

Saludos.

Por WWCC

113 de clabLevel



Genero:Masculino  

Diseñador y desarrollador multimedia

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.