Read full description about this version to find out what's going on this and maybe next time :)
As always small list of changes:
- String class simplified a little bit.
- String 'SubstrTo' function changed or fixed. It depends how you look at it :)
- BitmapFont potential bug patched.
- LiveData releasing data bug fixed. (Twice :P I hope this time is last)
- Some platform specific function are now cross-platform thanks to C libraries.
- Some Input 'KeyCodes' renamed, deleted or changed. We just don't need them all.
- Auto profiling struct added to Profiler.
- Language system bug fixed. Language template name changed a little because of potential bug (Renamed from: 'en_us_English.ini' to 'en_us-English.ini').
- Window resolutions are now sorted and no larger than the size of the primary monitor default size.
- Lavgine C++ SDK defines and compilation simplified.
- Window resolution problem fixed.
- Few very clever macros added to C++ SDK.
- Added simple 'MemoryProfiler' for profiling memory use and visualy detecting memory leaks.
- Input KeyCode renamed again (in C++ SDK and LuaScript).
- Code clean up. As always ^^
- Lavgine crypting is changing every time you start engine (Crypting via network works by sharing the public key).
- Lavgine now trys to disable VSync (This can be overrided by driver settings so if you have constant value equal to your monitor refresh rate and you want more FPS try to set your "VSync" driver settings to "Use application settings")
- Added 'Debug.ShowShaderInfo' to config file 'Mod.ini'. Enable this to log more information about compiled shader.
- OpenGL minimal requirement is still 1.5 but if you use GLSL you need OpenGL 2.1+.
- OpenGL redutant state changes removed ;)
- Profiler is now thread-safe. Same profile time name on diffrent threads are allowed.
- GUI text positioning fixed. It was a little off the center.
- GUI desing simplified a lot.
- OpenGL context locking profile info added. This will let you know how much time engine is spending doing OpenGL stuff.
- Profile statistics are now sorted by profile name.
- ModuleImport class added to C++ SDK to simplify things and add future 'LavgineModule' functionality.
- OpenGL functions are now imported manually by engine to get rid of external library. This means easier compilation on all platforms.
- Lavgine use UTF8 internally but can convert any string to "Wide" platform specific type.
- Profiling information can be turned off in 'Mod.ini' config in section ('Debug.Profiler.Modules').
- Zlib and ZIP libraries removed due to unexpect behaviours. Besiades I don't need it any more :)
- Popping up message about new version of Lavgine removed. I think it's kinda redutant. Besides this removes another DLL.
- Missing 'PSAPI.dll" library won't crash engine. This will only disable some functionality ^^
Whoa! It's been ages since I've updated Lavgine. Don't you worry I'm still working on it. My efforts are now focused on Linux port. There are few working prototypes but they still need to be perfected. I really hope that the next update will bring many great things. Such as Linux port and maybe Lavgine C++ SDK version to play around. The API has been cleaned alot and since I'm not making that much changes anymore I think it is ready to test it. Naturally time will tell.