Tuesday, October 28, 2008

Galactic Engine 2 Version 0.50 released

Just another small update. Galactic Engine 2 version just got iterated++.

This version brings allot of changes (mainly because it took almost a year to get GUI into usable stage), so any other things that were made during this time, also were added.

Here is a partial list of changes:

The major addition to the version 0.50 is the addition of new GUI system (still in testing) 
 
Additional changes:  
 
New features:  
-Added new StepInto command for the config. This allows to StepInto to next unstepped block.  
-Added new Vertex2d reading for the config.  
-Added Clone function for the list.  
-Added new ReferenceList class. It uses external memory storage and doesn't allocate memory for object, just stores it (something like std::list).  
-Added a function that returns config block name and function that generates config block debug data.  
-Added new triangle table to the trig table list. It holds smooth interpolated values in ranges from 0..360 degrees.  
-Added new String split function. It allows to split one string into array of strings by using a separator character as divider.  
-List - added function to put element to the top (end of the list).  
-Added new compare operator to the String class.  
-Added new generic HashMap implementation.  
-Added new FlexibleArray generic type prototype for the engine. It should allow to dynamically access parts of the array.  
-Added new RenderData2 structure to the main project.  
-Added new DebugManager. It adds additional ways to debug memory. Such as break point at the memory request place.  
-Updated input manager . The mouse events now pass the button pressed as object.  
-Added new StackWalker used to debug the program more easily. It was created by Jochen Kalmbach.  
-String implementation is rewritten with additional documentation and contracts. A new feature includes ability to insert into any specific part of the string as well as to remove a portion from it.  
-Added FastDelegates made by Don Clugston. 
 
Fixed: 
-Remade the event and stateManager system.  
-Fixed config reading problems when it didn't show all the fields.  
-The Config now returns list of fields for specific block. So they can be later easily iterated and read from.  
-Fixed issues when Textures tried to free default texture, making it further crash or leak.  
-BlockField now returns UV coordinates from the config group.  
-String can now be generated from dynamic array of chars, or subString of existing string , also dynamic conversion to int or float is added.  
-Fixed an issue when reading floats from config group. The floats with negative numbers caused application to hang.  
-Fixed issues with DynamicArray. The initial dynamic array version used memcpy for cloning arrays.

And a screenshot for a reference:

My next goal, that I am working on right now is to finalize the engine API, implement all the prototypes that I have made so far, and make a few editors at the same time with new GUI system.



P.S. Here is a lines of code graph from the Ohloh.net
It shows the large spike of 150 new files added to the project:



Galactic Engine 2 sourceforge project

Sunday, October 26, 2008

Blog design changed.

How you like the new design ?

I have picked a new template from blogger and upgraded it to the new format. The new blogger template format allows the blog author to add gadgets.

For my new template I have added gadgets like
- links
- slideshow
- youtube videos
- blog list
- archive

Adding new gadgets is so easy, that you don't need to know any html ! Previously I had to manually add the same functionality by writing it to the HTML template file.

I have also made the template post area a little bit wider (200) pixels, so the photos, that I post sometimes would fit in it correctly. I had to change the HTML template manually and modify few images in order to achieve this.

For a header I am using this image (green as a my new blog color ):

Автор: Агент@Mail.Ru Dmitri - dminator.blogspot.com, альбом: макро

Monday, October 20, 2008

GE2 GUI Prototype 1.9 - DialogWindow

Here is another update in epic GE2 GUI battle. This time I am going to show new control - DialogWindow.

DialogWindow is another typical control that is present in almost any GUI systems. Its main purpose is to prompt user for a specific response.

For example DialogWindow can request user confirmation when file is going to be deleted or PC is going to be restarted.

Here is a simple example that demonstrates DialogWindow in action:

Monday, October 06, 2008

New photo - seagull


Автор: Агент@Mail.Ru Dmitri - dminator.blogspot.com, альбом: Птицы

Thursday, October 02, 2008

GE2 GUI Prototype 1.8 - ComboBox

The progress in the development of the new GE2 GUI system is slow but steady. 

Another addition to the system is the new control - ComboBox.

ComboBox is a control that drops a list of items that can be selected. It is quite similar to the ListBox but saves some space when it is required.

The drop-down functionality was created with a new control type - TopFrame. TopFrame is a special type of the control that always remains on top of any other controls. TopFrame can have other controls added to it. For ComboBox the drop-down TopFrame includes ListBox and ResizeButton controls.

Here is a small video to demonstrate ComboBox in action:



Check the ADOgames forum post for more detailed information