* Development 16 | Beta 0 | Development 0 | Experimental 0 *

* Added Game
* Added GameResource
* Added GameResourcePack
* Added GameImageResourcePack
* Added GameAudioResourcePack
* Added Applet
* Added AppletTest
* Added JavaApplet
* Added OpenGLApplet
* Added RenderVariablesJava
* Added Tile2D
* Added GUISlider
* Added GUISliderBuilder
* Added SliderTest
* Added ScrollEvent
* Added GUIScrollBar
* Added GUIScrollBarBuilder
* Added ScrollBarTest
* Added Rectangle
* Added TileMap2D
* Added OpenGLBufferUtils
* Added OpenGLShaderUtils
* Added Shader
* Added FontPack
* Added FontStore
* Added OpenGLUtils
* Added GUIWindow
* Added GUIImageWindow
* Added GUIRendeableWindow
* Added WindowSizeChangedEvent
* Added WindowListener
* Added GUIMessageDialogBox
* Added GUIConfirmDialogBox
* Added GUIInputDialogBox
* Added DialogBoxTest
* Added GUIDropDownMenu
* Added GUIRenderableDropDownMenu
* Added GUIImageDropDownMenu
* Added GUIDropDownMenuTest
* Added GUIDropDownList
* Added GUIImageDropDownList
* Added GUIRenderableDropDownList
* Added GUIDropDownListTest
* Added GameValues
* Added LogIgnore
* Added Console
* Added Time
* Added GUIRenderer
* Added ShaderTest
* Added HeightmapTerrain
* Added HeightmapTerrainTest
* Added Light
* Added LightData
* Added AndroidFileUtils
* Added Android support for FileUtils
* Added Face
* Added Model
* Added OBJLoader
* Added OBJModelTest
* Added Material
* Added MaterialLoader
* Added ModelParserUtils
* Added Camera
* Added DisplayList
* Added Rectangle3DTest
* Added Skybox
* Added Cube3DTest
* Added Skybox3DTest
* Added Vector3D
* Added BasicRenderer2D
* Added BasicRenderer3D
* Added BasicRenderer3DOpenGL
* Added the variable 'renderText' in GUITextBox
* Added the method toStringArray(List<String> list) in ArrayUtils
* Added the method toStringList(String[] stringArray) in ArrayUtils
* Added the method clearDepthBuffer() in OpenGLUtils
* Added the method setupDepthTest() in OpenGLSetupUtils
* Added the method getVersion() in OpenGLUtils
* Added the method enableTexture2D() in OpenGLUtils
* Added the method disableTexture2D() in OpenGLUtils
* Added the variable "ShowImageBoxes" in Debugging in Settings
* Added scrolling events
* Added a lot of variables and a few methods in KeyboardInput
* Added the method create(int r, int b, int g) in Colour
* Added the method create(int r, int b, int g, int a) in Colour
* Added the method renderInCentre() in GUIFont for convenience
* Added the method renderInCentreAtX() in GUIFont for convenience
* Added the method renderInCentreAtY() in GUIFont for convenience
* Added the method movePanel() in GUIPanel
* Added the method setPanelPosition() in GUIPanel
* Added the method onScroll() to InputListener
* Added the method setupRemoveAlpha() in OpenGLSetupUtils
* Added the method tick() in EngineLoop
* Added the abstract method resetEffect() in Effect
* Added the variable maxNumberOfCycles in EffectColourFade
* Added the variable inFolder to read() method in FileUtils
* Added some methods in Vector2D such as asPoint()
* Added the variable Applet in Settings
* Added the variable: selected to GUIComponent
* Added the tileSize variable in the constructor of TileMap2D
* Added the startYvariable in the constructor of TileMap2D
* Added the constructor Image(int id, String filePath, String format,
boolean inFolder) in Image
* Added the method load(int id, String filePath, String format, boolean
inFolder) in Image
* Added the method setText(List<String> text) in GUITextDisplayArea
* Added the method getText() in GUITextDisplayArea
* Added the parameter 'gridSize' in BitmapFont
* Added the keys BACK_SLASH and FORWARD_SLASH to KeyboardInput
* Added entirely new GUITextBox
* Added a bit more line spacing in GUITextDisplayArea
* Added the methods setValuef() and setValuei() in Shader
* Added the method getFlippedFloatBuffer(Colour colour) in OpenGLUtils
* Added the method getIntegerBuffer(int[] data) in OpenGLUtils
* Added the method getFloatBuffer(float[] data) in OpenGLUtils
* Added the method getFlippedIntegerBuffer(int[] data) in OpenGLUtils
* Added the method setValuei(String variableName, int[] arrayValues) in
Shader
* Added the method setValuef(String variableName, float[] arrayValues)
in Shader
* Added the method getValues() in Colour
* Added the method getFloatValues() in Colour
* Added the method getFlippedFloatBuffer() in OpenGLUtils
* Added the static method log(Log log, LogIgnore logIgnore) in Logger
* Added the static method getMessage(String time, String type, String
source, String message, LogIgnore logIgnore) in Logger
* Added the abstract method loadResources() in Game
* Added the ability to remove text in a text box

* Changed the type of imageResourcePacks from LinkedList to List in Game
* Changed the type of audioResourcePacks from LinkedList to List in Game
* Changed the default value of the Debugging setting: ShowImageBoxes
from true to false
* Changed the type of the buttons in GUIDropDownMenu from a LinkedList
to a List
* Changed the all LinkedList's to List's in FileUtils
* Changed the all LinkedList's to List's in PropertiesFile
* Changed the way GUILabel works to allow it to be created on Android
before the Android update or render
* Changed the way GUITextDisplayArea works to allow it to be created on
Android before the Android update or render
* Changed the variable type in GUITextDisplayArea for text, from
LinkedList<String> to List<String> for increased performance
* Changed the method isVisble() to isVisible() in Window
* Changed some methods in Vector2D to return a new vector instead of
affect the current one
* Changed the type of the 'tiles' array in TileMap2D to be Tile2D
* Changed the type of the tileSize and startY variables in TileMap2D to
* Changed the cursor in a TextBox so that is is now rendered as a
rectangle rather than with a |
doubles instead of integers
* Changed KeyboardInput so that all of the keyboard's keys have key
codes and boolean values stored there
* Changed the type of the tileSize and startY variables in TileMap2D to
doubles instead of integers
* Changed variable in GUI from the type GUIPanel to GUIComponent
* Changed method in GUIButton isSelected() to isButtonSelected()
* Changed the method name update() to updatePanel() in GUIPanel
* Changed the method name render() to renderPanel() in GUIPanel
* Changed Game to such a way that you should be able to extend it and
use it on android (Only need to extend AndroidActivity then give an
instance of Game) (NOTE: Don't call createGame())
* Changed the parameter: width from the type integer to double in
GUITextDisplayArea
* Changed the way Entity2D is updated. The velocity is multiplied by the
current delta then added to the entity's position and the same for the
rotation
velocity. This means that the velocity may be different from before ,
however the speed of the computer the game is running on will not effect
the time it takes an entity to move a certain distance.

* Changed the type of imageResourcePacks from LinkedList to List in Game
* Changed the type of audioResourcePacks from LinkedList to List in Game
* Changed the default value of the Debugging setting: ShowImageBoxes
from true to false
* Changed the type of the buttons in GUIDropDownMenu from a LinkedList
to a List
* Changed the all LinkedList's to List's in FileUtils
* Changed the all LinkedList's to List's in PropertiesFile
* Changed the way GUILabel works to allow it to be created on Android
before the Android update or render
* Changed the way GUITextDisplayArea works to allow it to be created on
Android before the Android update or render
* Changed the variable type in GUITextDisplayArea for text, from
LinkedList<String> to List<String> for increased performance
* Changed the method isVisble() to isVisible() in Window
* Changed some methods in Vector2D to return a new vector instead of
affect the current one
* Changed the type of the 'tiles' array in TileMap2D to be Tile2D
* Changed the type of the tileSize and startY variables in TileMap2D to
* Changed the cursor in a TextBox so that is is now rendered as a
rectangle rather than with a |
doubles instead of integers
* Changed KeyboardInput so that all of the keyboard's keys have key
codes and boolean values stored there
* Changed the type of the tileSize and startY variables in TileMap2D to
doubles instead of integers
* Changed variable in GUI from the type GUIPanel to GUIComponent
* Changed method in GUIButton isSelected() to isButtonSelected()
* Changed the method name update() to updatePanel() in GUIPanel
* Changed the method name render() to renderPanel() in GUIPanel
* Changed Game to such a way that you should be able to extend it and
use it on android (Only need to extend AndroidActivity then give an
instance of Game) (NOTE: Don't call createGame())
* Changed the parameter: width from the type integer to double in
GUITextDisplayArea
* Changed the way Entity2D is updated. The velocity is multiplied by the
current delta then added to the entity's position and the same for the
rotation
velocity. This means that the velocity may be different from before ,
however the speed of the computer the game is running on will not effect
the time it takes an entity to move a certain distance.

* Created the package org.simplecorporation.myengine.core.game3d.terrain
* Created the package org.simplecorporation.myengine.core.logger
* Created the package org.simplecorporation.myengine.core.applet
* Created the package org.simplecorporation.myengine.core.game2d.tilemap
* Created package org.simplecorporation.myengine.core.gui.slider
* Created the package org.simplecorporation.myengine.core.rectangle
* Created the package org.simplecorporation.myengine.core.opengl.shader
* Created the package org.simplecorporation.myengine.utils.opengl.shader
* Created the package org.simplecorporation.myengine.core.gui.window
* Created the package org.simplecorporation.myengine.core.event
* Created the package org.simplecorporation.myengine.core.game3d.model
* Created the package org.simplecorporation.myengine.core.game3d.camera
* Created the package
org.simplecorporation.myengine.core.game3d.camera.skybox
* Created the package org.simplecorporation.myengine.core.game3d
* Created the package org.simplecorporation.myengine.core.game2d.vector

* Moved FileUtils to org.simplecorporation.myengine.utils
* Moved PropertiesFile to org.simplecorporation.myengine.utils
* Moved ArrayUtils to org.simplecorporation.myengine.utils
* Moved MessageBox to org.simplecorporation.myengine.utils
* Moved ScreenUtils to org.simplecorporation.myengine.utils
* Moved SystemUtils to org.simplecorporation.myengine.utils
* Moved ThreadUtils to org.simplecorporation.myengine.utils
* Moved Timer to org.simplecorporation.myengine.utils
* Moved Settings to org.simplecorporation.myengine.core
* Moved GUIButton to org.simplecorporation.myengine.core.gui
* Moved GUICheckBox to org.simplecorporation.myengine.core.gui
* Moved GUIComfirmDialogBox to org.simplecorporation.myengine.core.gui
* Moved GUIInputDialogBox to org.simplecorporation.myengine.core.gui
* Moved GUIMessageDialogBox to org.simplecorporation.myengine.core.gui
* Moved GUIDropDownMenu to org.simplecorporation.myengine.core.gui
* Moved GUILoadingBar to org.simplecorporation.myengine.core.gui
* Moved GUIScrollBar to org.simplecorporation.myengine.core.gui
* Moved GUISlider to org.simplecorporation.myengine.core.gui
* Moved GUITextBox to org.simplecorporation.myengine.core.gui
* Moved GUITextDisplayArea to org.simplecorporation.myengine.core.gui
* Moved GUIWindow to org.simplecorporation.myengine.core.gui
* Moved GUIButtonEvent to org.simplecorporation.myengine.core.gui
* Moved GUICheckBoxEvent to org.simplecorporation.myengine.core.gui
* Moved GUIButtonListener to org.simplecorporation.myengine.core.gui
* Moved GUICheckBoxListener to org.simplecorporation.myengine.core.gui
* Moved Event from org.simplecorporation.myengine.core.input.event to
org.simplecorporation.myengine.core.event
* Moved all game update methods to tick() in EngineLoop instead of
start()

* Renamed Game to BaseGame
* Renamed Point2D to Vector2D
* Renamed package org.simplecorporation.myengine.core.game2d.point to
org.simplecorporation.myengine.core.game2d.vector
* Removed the constructor Colour(int r, int g, int b) in Colour
* Removed the constructor Colour(int r, int g, int b, int a) in Colour
* Removed everything to do with the old scripting engine
* Removed AndroidGame
* Removed duplicate method from GUIBuilder
* Renamed BasicRendererJava to BasicRenderer2DJava
* Renamed BasicRendererOpenGL to BasicRenderer2DOpenGL
* Renamed BasicRendererAndroid to BasicRenderer2DAndroid

* Removed Script
* Removed ScriptClass
* Removed ScriptCleaner
* Removed ScriptConsole
* Removed ScriptFile
* Removed ScriptInterpreter
* Removed ScriptLibraries
* Removed ScriptLibrary
* Removed ScriptMain
* Removed ScriptMethod
* Removed ScriptModule
* Removed ScriptObject
* Removed ScriptParser
* Removed ScriptSyntax
* Removed ScriptValues
* Removed ScriptVariables
* Removed LibraryBasicRenderer
* Removed LibraryGame
* Removed LibrarySettings
* Removed LibrarySystem
* Removed AABB
* Removed Circle
* Removed CollisionDetector
* Removed CollisionResolver
* Removed Gravity2D
* Removed Manifold
* Removed PhysicsEngine
* Removed PhysicsObject2D
* Removed PhysicsObject2DValues
* Removed PhysicsScene2D
* Removed PhysicsUtils
* Removed AI
* Removed BaseAI
* Removed GUIImageButton
* Removed GUIRenderableButton
* Removed GUIImageCheckBox
* Removed GUIRenderableCheckBox
* Removed GUIImageDropDownMenu
* Removed GUIRenderableDropDownMenu
* Removed GUIImageDropDownList
* Removed GUIRenderableDropDownList
* Removed GUIImageLoadingBar
* Removed GUIRenderableLoadingBar
* Removed GUIImageSlider
* Removed GUIRenderableSlider
* Removed GUIImageScrollBar
* Removed GUIRenderableScrollBar
* Removed GUIImageTextBox
* Removed GUIRenderableTextBox
* Removed GUIImageWindow
* Removed GUIRenderableWindow
* Removed GUIPanelParseTest
* Removed the key SLASH

* Fixed bug: GUICheckBox wouldn't work properly on Android
* Fixed bug: Calling createGame() in BaseGame resulted in an error when
on Android
* Fixed bug: GUIScrollBar didn't work after the new input system
* Fixed bug: When using Java2D the mouse cliked event was called twice
* Fixed bug: When using Java2D the mouse pressed event was giving the
wrong mouse button id's
* Fixed bug: InputManagerJava was calling mouse clicked when the mouse
was pressed/released
* Fixed bug: InputManagerJava was using the wrong x and y values when
calling a mouse released event
* Fixed bug: GUITextDisplayArea word wrapping was ignored when a new
line started
* Fixed bug: GUISlider wasn't sliding properly
* Fixed bug: Spelling mistake when writing Settings config, this
prevented the setting of the MusicVolume setting (MusicVolument)
* Fixed bug: MusicVolume not setting due to looking at split[1] instead
of split[0]
* Fixed bug: A null tile in TileMap2D caused a NullPointerException
* Fixed bug: The delta value was always 0, this will cause movement and
velocities to move alot faster now
* Fixed bug: JavaWindow was calling Thread.sleep() with a minus number
causeing an excpetion on slower computers
* Fixed bug: A null tile in TileMap2D caused a NullPointerException
* Fixed bug: The delta value was always 0, this will cause movement and
velocities to move alot faster now
* Fixed bug: JavaWindow was calling Thread.sleep() with a minus number
causing an excpetion on slower computers
* Fixed bug: Current position of mouse not set when not using OpenGL and
mouse clicked
* Fixed big: If a component in a panel equaled the panel's x, y, width,
or height it didn't update or render
* Fixed bug: If the panel x + height was less than a button it didn't
show (Should of been x + width)
* Fixed bug: IndexOutOfBoundsException when writing an empty file
* Fixed bug: When changing screen size, and using OpenGL, the OpenGL
view port wasn't resized
* Fixed bug: Problems when changing from fullscreen to not fullscreen
when using OpenGL
* Fixed bug: The width of GUILabel was never set
* Fixed bug: The following settings caused a problem
(IllegalStateException):
		Android: false
		Window.Title: Elements
		Window.Fullscreen: true
		Window.Border: true
		Window.Size.Width: 1366.0
		Window.Size.Height: 768.0
		Video.MaxFPS: 60
		Video.VSync: true
		Video.OpenGL: true
		Video.AntiAliasing: true
		Audio.SoundEffectVolume: 100
		Audio.MusicVolument: 100
* Fixed bug: Rendering the information text when using OpenGL and not in
an orthographic view rendered in the wrong place
* Fixed bug: Rendering the information text when using OpenGL rendered
as a white rectangle if removing alpha was not enabled
* Fixed bug: TextBox's didn't display the cursor in the correct position
* Fixed bug: After adding the new Input system, TextBox's didn't work

* NOTE: It should now be even easier to allow for multi-platform
programs and games using the new Image methods
* NOTE: By passing a LogIgnore parameter into the logger you can ignore
certain things when logging a message
* NOTE: Hopefully increased performance of running big move/copy
operations on PC using FileUtils (Now using List instead of LinkedList)
* NOTE: Found bug GUITextBox doesnt work properly with GUIDialogBox
* NOTE: I haven't tested the applets because of Java 7 because it is
blocking my application unless I sign it
* NOTE: TouchEvent now uses the constance EVENT_DOWN and EVENT_UP
* NOTE: TileMap2D now sets the positions of all of the tiles
* NOTE: When using keyboard input the key code is now in the format of
the codes in KeyboardInput
* NOTE: When using Java only the left of left/right keys will be called
e.g. only the left shift will ever be called
* NOTE: GUIPanel now extends GUIComponent
* NOTE: GUI now takes GUIComponent's instead of GUIPanel's
* NOTE: If you wish to move a GUIPanel with components in it use the
method setPanelPosition() and movePanel()
* NOTE: GUI now holds GUIPanels instead of GUIComponents
* NOTE: GUIPanel no longer descends from GUIComponent
* NOTE: It is now possible to read a file from within the same .jar file
* NOTE: You can call methods in OpenGLSetupUtils and OpenGLUtils without
causing error when not using OpenGL
* NOTE: Now using LWJGL V2.9.1
* NOTE: The AndroidGameThread now uses the methods in EngineLoop to
update and
render the game. This means that the FPS and DELTA values are now
measured and the DEBUGGING setting now affects the output of debug info
onto the screen when using MyEngine on Android