KGraphics is a 3D high performance graphics library designed to take care of the tedious tasks of game programming, controlling the graphics resources and providing strong data structures. KGraphics3D is based on the DirectX Direct3D9 library and complements it with lots of new features.
| - | Full access to the graphical console (windowed or fullscreen), allowing on the fly resolution changes and screen capture. |
| - | Effects based architecture allowing the use of vertex/pixel shaders or the fixed pipeline as required. The effects files can be written using Assembler or HLSL. KGraphics3D supports many semantics and can load almost all the NVidia FX files. |
| - | Texture classes allows loading, unloading and reloading of texture data. Textures can be plain, mipmapped or cubic an may be animated. Texture administrator allows simultaneous control of hundreds of textures for maximum reusability. |
| - | K3DMesh, is the mesh wrapper and allows loading Softimage XSI files or Microsoft X files. XSI meshes can be boned for matrix skinning operations. Mesh administrator allows simultaneous control of hundreds of meshes. |
| - | KEngine resource scripts allow programmers to define their graphical resources, thus reducing, simplifying the game code. Resource loading can be done in just a couple of lines. The scripts are loaded and compiled at runtime so you dont have to recompile you app to update your graphics! |
| - | Data structures designed to handle your graphics animation, as graphics servers, sprite servers, font servers and others. |
| - | Game objects like units, cameras and lights are considered scene objects and may be subclassed and adapted to any game. High level control structures are also supported in the form of lists, nets and trees (quad and octal). |
| - | Custom Graphical User Interface (KGUI) provides controls designed for creating multimedia user interfaces and includes labels, buttons, textareas, lists, droplists, sliders, textboxes and others. Each control can be programmed to capture user generated events and can use independent animations and rendering modes. |
| - | KLevel, a 256*256 matrix based map that implement the famous path-finding A* algorithm can compute about 3000 (60-step average) routes per second. |
| - | Task lists allows support for game event capture. Task scheduler allows programming game events to a especific time. Director object let you register the functions that will be executed in response to each event. |
| - | Bone information support allows for matrix palette skinning. |
| - | Dynamic shadow volumes to add realism to the scene. Shadows use the stencil buffer and may be incompatible with older hardware. |
| - | Terrain system allows 8 terrain levels using heightmaps. Terrain transitions are supported. |
| - | Compressed graphical resources are supportes through the CFL Compressed File Library, allowing high speed data compression and encryption. CFL was programmed by Jari Komppa and KEngine includes the necessary files for resource library building. |
| - | Much, much more... |
And remember KGraphics allows full access to the original Direct3DDevice object so your game can access the original DirectX functions in case you need them.