Pages

Saturday, November 5, 2011

Plugin system

Plugin system added to dge.

Developed Plugins:
  • Assimp for model loading
  • DevIL for texture loading
  • DDS loader, fast and cheap plugin for loading dds files
Assimp plugin in action, loaded knight.md2 model

Thursday, April 7, 2011

Bitmap font

Bitmap fonts are implemented in the engine, at now dge can load bitmap fonts created with the BMFont and render them. dge supports Unicode and can render any Unicode character  but "right to left" languages (like as Persian ) aren't supported yet.

Bitmap font rendering with OpenGL 3.x renderer

Friday, March 18, 2011

Textures

i wrote a .dss loader for dge without using any 3D party library. and I 'm implement compressed textures in OpenGL renderer

for implementing virtual texture in engine I must write a basic scene manager and some basic scene nodes like as camera and static meshes.
loaded compressed texture (with format DXT1) in OpenGL 3.x renderer

Thursday, March 3, 2011

OpenGL 3 and DirectX

i wrote OpenGL 3.x, OpenGL 4.x and Direct3D 9 renderer for the dge and also i wrote my own OpenGL extension loader for both windows and linux platforms. this extension loaders works very fast and loads only required extensions by dge

the next step is writing a texture format for internal use of dge. i decided to use texture compression by default, because i want to implement  virtual texturing  in the dge as the next step. at now I'm work on the an Image Toolset for dge in the MFC


first triangle using OpenGL 3.3 under windows


first triangle using D3DX9 under windows

Friday, December 31, 2010

I/O and core namespace implemented

the following namespaces and classes implemented:

  • I/O
    • keyboad 
    • mouse
    • joystick (windows only)
    • VFS (Virtual File System) with archiving support
  •  core
    • String (UTF-16 based string class with UTF-8 and ASCII support)
    • Functores (at now I'm use Boost)
    • Timer
    • Profiler
    • and ...
I also wrote some basic class like as window and a Basic OpenGL 2 renderer for test purpose


and first rendered triangle with engine:
dge under Linux (ubuntu) 





dge under Windows 7

Wednesday, September 22, 2010

Compiling luabind with Microsoft Visual Studio 2010

luabind is a very helpful library for integrating Lua and C++ which is a part of boost library. unfortunately like as boost there aren't any percompilied binary on the luabind site and you must compile it. but if you try compile luabind with MSVC 2010 and bjam you got some errors for fixing them simply find following line:

std::pair(mem, 0);
and replace with this one
std::pair(mem, ( void*)0);
and find this line:
std::pair(0, -1);
and replace to this one
std::pair(( void*)0, -1);

also you can get Lua and luabind binaries from Here

and some useful Lua tutorials:

  • Quick introduction to luabind
  • Deriving in Lua
  • Thursday, August 5, 2010

    OpenGL 4.1 Allows the Use Of Binary Shaders

    Among the new specifications of OpenGL 4.1, there is this one:

    * The ability to query and load a binary for shader program objects to save re-compilation time

    This is possible via the new GL_ARB_get_program_binary extension that makes it possible to handle the binary representation of an ASCII GLSL shader and load them in video memory without compile.

    NVIDIA driver R259.09 exposes this extension for an OpenGL 4 context but also for an OpenGL 2 context. so if using this extension haven't compatibility problem with multiple video cards then it's safe to use this extension in Game Development. (with an Updated Driver)