binaryzebra edited this page Nov 19, 2014 · 12 revisions



Our framework is one of the solutions that can help you develop good games for big variety of platforms.

Main idea is easy cross-platform and cross-device game development.

Framework is C/C++ based because of the following reasons:

  • C/C++ available on almost every good platform
  • Best performance for mobile platforms
  • Tons of good existing libraries available for C/C++
  • Windows. Windows XP, Windows 7.
  • Mac OS X 10.5+
  • iOS 3.0+

Target audience

DAVA Framework will be the best solution if your initial target platforms is iOS / Android / Mac OS X and PC. It will be good for casual game developers, indie game developers and all other developers who target their product to these platforms.

You can save your time on combining everything you need and just start work on the game logic immediatelly.


  • Base - Base templates you normally need for development. Like Singleton, Reference counter, Message and EventDispatcher.
  • Rendering abstraction - It fast and efficient and support:
    • DirectX
    • OpenGL and OpenGL ES
  • 2D Render objects
    • Sprites - 2d objects with position, rotation, scale and pivot point on the screen
    • TTF Fonts - freetype integrated
    • Graphics Fonts - own tool to create graphics fonts
    • Particle Systems - own particle engine to create effects similar to Particle Illusion
  • UI
    • Basic controls - button / list / textfield / slider / static text
    • Screen flow architecture - architecture to simplify / diversify logic of your app flow
    • Yaml - loading of screen structure from yaml files
  • Math
    • Vector math - everything you need in 2D & 3D
    • Quaternions - everything you can require for animations
    • 2D Primitives - circle, polygon, rect, bounding box, and operations between them
    • 3D Primitives - plane, frustum, bounding box and operations between them
  • Collision detection
    • Basic 2D collisions - SAT based collision detection system
    • Box2D integrated - you can use Box2D if you more familiar with it
  • Physics - we've integrated Box2D for you to save your time.
  • Filesystem utils
    • XML parser - simple interface, so you do not need to learn libxml
    • Yaml parser - simple interface, and you do not need to learn libyaml
    • Keyed Archives - save / load files easily like in Cocoa
  • Animation System - cool animation system that allow to animate object properties easily.
  • Debug utils can be used for rapid prototyping / error lookup
    • Ability to download configs from internet
    • Memory manager to find memory leaks & overwrites
  • Cool stuff - features that we have and others not
    • Automatic packing to texture atlaxes - no more handwork, everything done automatically by tools
    • Photoshop integration - if you use photoshop you'll be happy, you can use PSD files to import sprites & animations


  • ResourcePacker - tool that packs all your graphics resources to texture atlases automatically.
    • Automatic packing to texture atlases - no more handwork, everything done automatically by tools.
    • Photoshop integration - if your artists using photoshop they'll be happy, you can use PSD files to import sprites & animations.
  • Font Gen - tool to create graphics fonts. Works on Mac OS X only.