/Kha

Ultra-portable, high performance, open source multimedia framework.

Primary LanguageHaxezlib LicenseZlib

Build Status Build status

Kha

Kha is a low level sdk for building games and media applications in a portable way. Think SDL, but super-charged. Based on the Haxe programming language and the krafix shader-compiler it can cross-compile your code and optimize your assets for even the most obscure systems. Kha is so portable, it can in fact run on top of other game engines and its generational graphics and audio api design gets the best out of every target, supporting super fast 2D graphics just as well as high end 3D graphics. Also, Kha probably added a new target while you were reading this text.

Community

Features

  • Great performance on each platform.
  • Generational graphical/audio API design.
  • Hardware accelerated 2D and high-end 3D graphics. Fallback support (i.e. html5 canvas).
  • Can run on top of other game engines (i.e. Unity3D).
  • Write shaders in GLSL and cross-compile to target specific shaders.
  • Kha apps can also be compiled to C# or Java libraries
  • Flexible and robust backend system. Adding your own takes little effort and is straight forward.
  • One API for all platforms!
  • Support for VR technology (W.I.P).
  • Networking multiplayer support (W.I.P).
  • Dedicated IDE : Kode Studio.

Supported platforms

  • HTML5 (WebGL 2, WebGL and canvas)
  • Windows (Direct3D 12, Direct3D 11, Direct3D 9, Vulkan or OpenGL)
  • Universal Windows Platform (Direct3D 12 or Direct3D 11)
  • macOS (Metal or OpenGL)
  • Linux (Vulkan or OpenGL)
  • Android (via C++ or via Java)
  • iOS (Metal or OpenGL)
  • tvOS
  • Raspberry Pi
  • PlayStation 4
  • Xbox One
  • Nintendo Switch
  • Tizen
  • Flash
  • Unity 3D
  • Node.js (for automatically created server versions)
  • Java and AWT
  • C# and Windows Presentation Foundation