Changelog

v1.5.0
- Se arregl贸 un bug en la clase Console
- Se mejor贸 la performance de los vertex buffers
- Se quit贸 el motor de scripting AngelScript
- Se mejor贸 el m茅todo IsColliding. Ahora detecta colisiones entre cajas, cajas contra c铆rculos, cajas rotadas entre s铆 y cajas rotadas contra c铆rculo.
- Se agregaron m茅todos a la clase MathUtil para detecci贸n de colisiones
- Se arregl贸 un bug en el sistema de part铆culas
- Se rehizo la clase ConfigFile y ahora soporta n煤meros hexadecimales

v1.4.0
- Reestructuraci贸n completa del motor para evitar problemas con las dependencias
- Se arregl贸 un bug en la clase ZakSound
- Se arregl贸 un bug en la clase Messages
- Se arregl贸 un bug en la clase ParticleSystem

v1.3.2
- Se optimizaron los m茅todos de transformaciones de la clase Renderer
- Se arregl贸 un bug en la clase ScriptMgr
- Se arregl贸 un bug en la adquisici贸n del input en la clase Game
- Se agreg贸 el m茅todo ATan2 a la clase MathUtil
- Se registr贸 el m茅todo ATan2 en el motor de script
- Se optimizaron el m茅todo Draw de las clases Sprite e IsoTile
- Se agreg贸 el m茅todo Pow a la clase MathUtil
- Se arregl贸 un bug en la registraci贸n del m茅todo DrawString de la clase Renderer
- Se arregl贸 un bug en AddRef y Release de las referencias en Script
- Se agreg贸 la clase ScriptFileStream para entrada/salida de archivos
- Se registr贸 la clase ScriptFileStream al motor de script
- Se actualiz贸 la librer铆a AngelScript a la versi贸n 2.10.0 WIP
- Se arregl贸 un bug en el preproceso de #include en la clase ScriptMgr

v1.3.1
- Se arregl贸 un error en el m茅todo Stop de la clase Sound
- Se agregl贸 la posibilidad de tomar teclas desde el sistema para utilizar como entrada de texto
- Se arregl贸 un error en la clase ScriptMgr
- Se actualiz贸 la librer铆a AngelScript a la versi贸n 2.9.1
- Se agreg贸 el m茅todo GetRadius a la clase Shape
- Se arregl贸 un bug en la clase SoundMgr

v1.3.0
- Se eliminaron las clases SoundMgr y Sound de la dll del motor, se reescribieron y agregaron en una nueva librer铆a ZakSound
- Se reorganiz贸 el c贸digo en la soluci贸n
- Se reorganiz贸 el c贸digo de las clases de manejo de widgets
- Se agreg贸 la macro MouseRelease en la clase Input

v1.2.0
- Se recompil贸 el motor utilizando la versi贸n 0.9.1 de la librer铆a irrKlang
- Se arregl贸 un bug en la clase ScriptMgr
- Se arregl贸 un bug en el m茅todo SaveScreenshot de la clase Window
- Se arregl贸 un bug en la clase Sound
- Se arregl贸 un bug en la clase MathUtil
- Se modific贸 la clase Message para soportar mensajes del usuario
- Se agregaron los m茅todos getMessage y getUserMessage de la clase Message en el motor de script
- Se agreg贸 la posibilidad de invocar al Garbage Collector en el script
- Se registr贸 la clase ParticleSystem en el motor de script
- Se actualiz贸 la librer铆a AngelScript a 2.8.1
- Se agregaron los mapas y sprites isom茅tricos
- Se agregaron los m茅todos SetDivisor y GetDivisor en FPSMeter

v1.1.0
- Se rehizo el m贸dulo de sonido utilizando la librer铆a irrKlang
- Se registraron el 90% de las clases del motor y sus arreglos al motor de scripting
- Se agreg贸 la posibilidad de cargar y guardar el script en modo binario
- Ahora la ventana se crea centrada respecto del escritorio
- Se arregl贸 un bug en la clase Sprite en el m茅todo IsAnimationRunning
- Se arregl贸 un bug en MouseAbsPos
- Se agreg贸 colisi贸n c铆rculo-cuadrado entre entidades
- Se actualiz贸 la librer铆a AngelScript a 2.8.1 WIP 26/05/2007
- Se agreg贸 la posibilidad de dibujar c铆rculos en la clase Shape

v1.0.1 Estable
- Se agregaron los m茅todos SetMinFilter y SetMagFilter a la clase Renderer
- Se agregaron las variables MinFilter y MagFilter a los archivos de definici贸n de Sprite y Font

v1.0
- Se arregl贸 un bug en el m茅todo ToggleMouseExclusive de la clase Input
- Se arregl贸 un bug en la clase Entity2D
- Se agregaron los m茅todos Tan, ATan, ASin, ACos y Round a la clase MathUtil
- Se agreg贸 la posibilidad de modificar el pivot en el emisor de particulas

v1.0.0.0 RC 6
- Se arregl贸 un bug en MouseWorldPos
- Se arregl贸 un bug en MouseRelPos

v1.0.0.0 RC 5
- Se arregl贸 el c谩lculo de los UV de las texturas de los mapas y sprites
- Se agreg贸 la posibilidad de utilizar #include en scritps
- Se hicieron modificaciones menores en la clase Entity2D
- Se agregaron las funciones RadToDegree y DegreeToRad al motor de scripts
- Se implement贸 la registraci贸n de clases y m茅todos escalonada en el motor de script
- Se recompil贸 la librer铆a AngelScript para que evitar el log a disco
- Se agregaron las opciones TextureFilter y TextureMipFilter al archivo de definici贸n de sprites que permite seleccionar los diferentes filtros para las texturas
- Se arregl贸 un bug en la clase Input (posici贸n del mouse en el mundo)

v1.0.0.0 RC 4
- Se arregl贸 un bug en la clase Game que si no le pasamos la configuraci贸n lanzaba una violaci贸n de acceso
- Se arregl贸 un bug en la clase Texture Manager al remover las texturas
- Se arregl贸 un bug en la clase Input que invert铆a el mouse verticalmente en MouseWorldPos
- Se arregl贸 un bug en la consola

v1.0.0.0 RC 3
- Se agreg贸 que si est谩 activada la propiedad CollisionVisible se dibuje al momento de dibujar el sprite.
- Se agreg贸 el dibujado del 谩rea de colisi贸n circular
- Se agreg贸 la posibilidad de cargar sonidos por tipo efecto sonoro o m煤sica para poder modificar el volumen por tipo
- Se modific贸 la clase Sprite de manera tal de poder funcionar tambi茅n como un Shape
- Se actualiz贸 la librer铆a AngelScript a la versi贸n 2.8.0a
- Se cre贸 un sistema de consola in-game
- Se arregl贸 un bug en el m茅todo SetAngleZ y GetAngleZ
- Se optimizaron las rotaciones
- Se registr贸 la clase Entity2D en el motor de script
- Se arregl贸 un bug que al hacer resetear el dispositivo D3D no se liberaban las texturas y cortaba la ejecuci贸n (Gracias Jonee)
- Se modific贸 la clase TextureManager para que use un vector de texturas
- Se elimin贸 la clase EntityList
- Se agreg贸 la clase GameConfig que permite, si as铆 lo deseamos, cargar y guardar la configuraci贸n del motor desde el archivo .ini
- Se arregl贸 un bug en la clase SoundMgr y Sound
- Se agreg贸 el m茅todo virtual OnLostDevice en la clase Game que ser谩 invocado al perderse el dispositivo D3D ante un ALT+TAB

v1.0.0.0 RC 2
- Se agreg贸 en la clase Map la posibilidad de cargar, mostrar y hacer uso de mapas en formato .AMF (AnaConda Map Editor)
- Ahora es posible descargar las texturas cargadas de memoria RAM y de video por medio del m茅todo Unload
- Se arreglo un bug en el m茅todo SetToPreviousPos de la clase Entity2D (Gracias NEXUS)

v1.0.0.0 RC 1
- Se arregl贸 un bug en la clase Input donde la posici贸n relativa del mouse en modo no exclusivo no coincid铆a con la posici贸n absoluta
- Se arregl贸 un bug en el m茅todo FlipVertical de la clase Sprite que a veces no invert铆a verticalmente
- Se agregaron dos variables en el archivo de definici贸n de los sprites: OffsetX y OffsetY que permiten decidir en qu茅 posici贸n de la textura est谩n las figuras
- Se agreg贸 la variable CollisionRadius en el archivo de definici贸n de sprites que permite indicar el radio de colisi贸n del mismo
- Se agreg贸 un m茅todo GetAnimation a la clase Sprite que devuelve un puntero a la animaci贸n actual
- Se agregaron los m茅todos GetTileNumCount, GetWorldCoordsFromTile y GetColRowFromTile en la clase Map
- Se modific贸 la clase Window para que el area de cliente sea del tama帽o indicado y no menor (Gracias Santiago Isidro!)
- Se arregl贸 el bug que no permit铆a readquirir el foco de la ventana con un click del mouse
- Se agreg贸 la variable Set a la clase Font que permite seleccionar el set de fuentes a mostrar
- Se agregaron los m茅todos getRepeat, getLength, getPosition, setPosition, setPan, getPan, reset e isPlaying a la clase Sound
- Se separaron las librer铆as del motor con las de red para evitar confusiones en las dependencias entre ambas

v0.3.4.3
- Ahora se muestran los fonts de debug en DirectX 8.1
- Se agreg贸 un m茅todo IsEnabledSystem para determinar si el sistema de part铆culas esta activado o no

v0.3.4.2
- Se agreg贸 una clase est谩tica MathUtil que permite tomar senos, cosenos y n煤meros aleatorios a partir de una tabla utilizando los m茅todos SinCos y Random
- Se optimizaron las clases Entity2D y ParticleSystem
- Se arregl贸 un bug que no permit铆a quitar la sincronizaci贸n vertical en pantalla completa
- Se agreg贸 un m茅todo SetCursorFromFile en la clase Window que permite la carga de un puntero del mouse personalizado

v0.3.4.1
- El mouse ahora es adquirido en modo cooperativo
- Ahora el m茅todo MouseAbsPos devuelve la posici贸n del mouse con respecto a la ventana tomada a partir de las coordenadas de windows
- Se recompil贸 el framework utilizando la versi贸n 2.7.1b del motor de scripting AngelScript
- Ahora el motor est谩 compilado para DirectX81 y DirectX9
- Se agreg贸 la posibilidad de determinar la velocidad de las animaciones de los sprites en FPS por medio de la variable SpeedFPS
- Se agreg贸 el sistema de part铆culas
- Se agregaron las constantes DegreeToRad, RadToDegree y PI
- Ahora es posible cambiar la posici贸n del pivot de un sprite desde el archivo de configuraci贸n del mismo

v0.3.3.1
- Se implement贸 la carga de mapas exportados con el formato .map del editor Anaconda Map Editor
- Se arregl贸 un bug de compatibilidad con m煤ltiples procesadores en la clase FPSMeter
- Se agreg贸 un m茅todo setGlobalVolume a la clase SoundMgr que permite modificar el volumen de todos los sonidos abiertos

v0.3.2.5
- Se arregl贸 un bug en el m茅todo DrawString que provocaba un cuelgue aleatorio en el motor.
- Se arregl贸 un bug en el m茅todo SetTile que modificaba el tile visualmente pero no l贸gicamente
- Se modific贸 el m茅todo GetWorldCoordsFromColRow para que devuelva true si la columna y fila dada est谩 dentro del mapa y false en caso contrario

v0.3.2.4
- Se agreg贸 que si el archivo config.ini y msg.ini no existen, se cree uno nuevo sin provocar error

v0.3.2.3
- Se agreg贸 un m茅todo GetTileFromColRow en la clase Map para adquirir un tile mediante una columna y una fila del mapa
- Se arregl贸 un bug en el m茅todo GetWorldCoordsFromColRow de la clase Map (Gracias Ezequiel 鈥淜elo鈥 Maldonado)
- Se arregl贸 un bug en la traslaci贸n de la clase Entity2D (Gracias Andres 鈥淣exus鈥 Chamarra)

v0.3.2.2b
- Se agregaron dos m茅todos a la clase Sound que permiten adquirir y setear el volumen

v0.3.2.2
- Se arregl贸 un bug en la clase Map
- Se implement贸 sistema de cambio de resoluci贸n en tiempo de ejecuci贸n
- Se arregl贸 un bug en la clase List (Gracias Juan Manuel Alvarez)
- Se agregaron m茅todos para adquirir la posici贸n anterior de una entidad GetPreviousPosX, GetPreviousPosY y GetPreviousPos
- Se agreg贸 la posibilidad de forzar la inicializaci贸n del motor evitando las opciones del archivo config.ini
- Se agreg贸 el m茅todo GetLastMessage en la clase Log que permite leer el 煤ltimo mensaje escrito en el archivo de log

v0.3.2.1
- Se arregl贸 un bug en la clase Map
- Se implement贸 el sistema de Scripting y est谩 funcionando (AngelScript)
- Se implement贸 el sistema de red por medio de paquetes UDP utilizando la librer铆a gratuita ENet
- Se reimplement贸 la clase List

v0.3.1.11
- Se arregl贸 un bug en la clase Message
- Se agreg贸 la propiedad Spacing a la clase Font para permitir la parametrizaci贸n del espaciado de los Bitmap Fonts
- Se agreg贸 la macro KeyEvent en la clase Input que permite chequear las teclas por eventos Down, Up y Pressed
- Cambi贸 el nombre de la macro para verificar si una tecla est谩 presionada de KeyDown a KeyPressed

v0.3.1.10
- Se arregl贸 el bug de la clase Sprite que no permit铆a mostrar un frame en particular con el m茅todo SetFrame
- Se implement贸 la clase Font que permite dibujar en pantalla Bitmap Fonts creados a partir del programa Bitmap Font Creator (gracias Thom Wetzel, Jr)
- Se arregl贸 el bug en la toma de valores enteros negativos durante el parseo de archivos .ini en la clase ConfigFile

v0.3.1.9
- Varias optimizaciones
- Aparentemente se arregl贸 el problema visual en modo ventana y pantalla completa (Gracias Santiago Isidro)
- Se invirti贸 el eje Y en el mouse para que coincida con el eje Y de la pantalla
- Se agregaron las propiedades de posici贸n del p铆vot en X e Y

v0.3.1.8
- Se agreg贸 el flipeo horizontal y vertical de las entidades.
- Se optimiz贸 la actualizaci贸n y el dibujado de las entidades.
- Ahora la clase Input enumera los dispositivos de entrada y adquiere la informaci贸n de todos ellos.
- Adquisici贸n del estado de los joysticks.

v0.3.1.7
- Cambio en el m茅todo Draw de las entidades. Ahora no es necesario pasarle el deltaT por par谩metro.
- Se agregaron dos m茅todos m谩s en la clase Entity2D que permiten cambiar la posici贸n en X y en Y independientemente.
- Se agreg贸 un m茅todo SetTile en la clase mapa que permite cambiar un tile en particular.
- Se implement贸 la carga de animaciones desde un archivo de definici贸n.
- Arreglo de un bug que al tratar de apagar el motor cuando fall贸 la inicializaci贸n daba una violaci贸n de acceso.

v0.3.1.6
- Arreglo de un bug al mostrar el 谩rea de colisi贸n de un Sprite.
- Se agregaron las opciones de cambio de tama帽o de las 谩reas de colisi贸n desde el archivo de definici贸n de los Sprites.
- Se modific贸 el nombre del tipo enumerador de ShapeTYPE a ShapeType.
- Se cambi贸 el sistema de Update de los Shapes y los Sprites.

v0.3.1.5
- Arreglo de algunos bugs en la carga de archivos de definici贸n de los sprites (gracias Alejandro Luna).
- Arreglo de un bug al mostrar un sprite que no pudo ser cargado (se colgaba la aplicaci贸n).
- Arreglo de un bug en el parser de archivos de definici贸n.
- Arreglo de mensajes de error en el log sobre archivos que no pueden ser cargados.
- Se implement贸 un sistema de scripting a trav茅s de AngelScript (no testeado).

v0.3.1.4
- Se implement贸 el sistema de carga de texturas en modo no persistente.
- Arreglo de un bug referente a la recarga de las texturas ante un ALT+TAB.
- Cambio en parte de algunos headers del motor por el problema con las carpetas relativas (Gracias Gabriel Beranger).
- Arreglo de un par de bugs del sonido. Adem谩s se agreg贸 la opci贸n en el config.ini que permite apagar el sonido.

v0.3.1.3
- Se implementaron las clase SoundMgr y Sound embebiendo la librer铆a Audiere.
- Se implement贸 el sistema de recuperaci贸n del dispositivo D3D y recarga de texturas ante un ALT+TAB.

v0.3.0.0
- Primera versi贸n del motor 2d.

Cerrado para comentarios.