The Defold SDK

The Defold SDK contains the required functionality to declare a native extension as well as interface with the low-level native platform layer on which the application runs and the high-level Lua layer in which the game logic is created.


You use the Defold SDK by including the dmsdk/sdk.h header file:

#include <dmsdk/sdk.h>

The header file is not publicly published but all of the available SDK functions are documented in our API reference. The SDK contains the following namespaces with functions:

  • Align - Alignment macros. Use for compiler compatibility
  • Array - Templatized array with bounds checking.
  • Buffer - Buffer API for data buffers as the main way to communicate between systems. Lua API for buffer creation also exists.
  • Condition Variable - API for platform independent mutex synchronization primitive.
  • ConfigFile - Configuration file access functions. The configuration file is compiled version of the game.project file.
  • Extension - Functions for creating and controlling engine native extension libraries.
  • Graphics - Platform specific native graphics functions.
  • Hash - Hash functions.
  • Json - API for platform independent parsing of json files.
  • Log - Logging functions.
  • Mutex - API for platform independent mutex synchronization primitive
  • Script - Built-in scripting functions.
  • Shared Library - Utility functions for shared library export/import
  • Sony vector Math Library - The Sony Vector Math library mainly provides functions used in 3-D graphics for 3-D and 4-D vector operations, matrix operations, and quaternion operations.

Did you spot an error or do you have a suggestion? Please let us know on GitHub!