Defold Druid UI Framework

The DrUId framework for the Defold game engine just turned 1.0. DrUId, as the capitalization suggests, is a UI framework for the defold game engine. The project is open source and released under the MIT license.

Defold Druid is described as:

Druid – powerful Defold component UI framework that empowers developers to create stunning and customizable GUIs by leveraging a wide range of embedded components or effortlessly designing their own game-specific components.

Druid comes with several examples to get you started. Here is an example of Druid source code, setting up Druid and creating a Button:

local druid = require("druid.druid")

-- All component callbacks pass "self" as first argument
-- This "self" is a context data passed in `druid.new(context)`
local function on_button_callback(self)
    print("The button clicked!")
end

function init(self)
    self.druid = druid.new(self)
    self.button = self.druid:new_button("button_node_name", on_button_callback)
end

-- "final" is a required function for the correct Druid workflow
function final(self)
    self.druid:final()
end

-- "update" is used in progress bar, scroll, and timer basic components
function update(self, dt)
    self.druid:update(dt)
end

-- "on_message" is used for specific Druid events, like language change or layout change
function on_message(self, message_id, message, sender)
    self.druid:on_message(message_id, message, sender)
end

-- "on_input" is used in almost all Druid components
-- The return value from `druid:on_input` is required!
function on_input(self, action_id, action)
    return self.druid:on_input(action_id, action)
end

Key Links

Druid GitHub

Defold Game Engine

You can learn more about the excellent Defold Game Engine and the Druid UI framework in the video below.

Scroll to Top