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
You can learn more about the excellent Defold Game Engine and the Druid UI framework in the video below.