Software:Defold

From HandWiki
Defold
Логотип Defold.svg
Original author(s)Christian Murray, Ragnar Svensson
Developer(s)Defold Foundation
Stable release
1.5 [1]
Repositoryhttps://github.com/defold/defold
Written inC++
MiddlewareBox2D
Operating systemWindows, macOS, Linux
PlatformWindows
Linux
macOS
HTML5
iOS
Android
Nintendo Switch
PlayStation 4
Size300 MB (Editor) 976 kB (Build)
Available inEnglish
TypeGame engine
LicenseDefold License (Source Available)[2][3]
Websitedefold.com

Defold is a cross-platform, free, and source-available game engine developed by King, and later the Defold Foundation.[4][5][3][6] It is used to create mostly two-dimensional (2D) games[7], but is fully capable of three-dimensional (3D) as well.[8][9]

Defold is a downloadable desktop app, and ships with its own embedded IDE. Defold targets desktop, mobile, web, and console platforms. The development model of the maintainers (Source-available) keeps the engine free to use, because it is maintained by its community.[4][8][10] Defold has over 30,000 users, and has been used to publish over 100 games.[11] Exported games with Defold typically use less than 100kB RAM[12] and very small bundle sizes, less than 2 MB.[13] due to the Engine's modularization and efficient core.[11][14]

Features

Defold uses Lua for scripting[12], but also allows native extensions, written in C, C++, and target-specific native languages. Defold projects are organized as collections, which consist of a hierarchy of game objects containing in-game entities. Scripting between game objects is handled using the message-passing paradigm, which allows scripts to intercommunicate in call-response and event-based models.[15] Defold's IDE natively supports in-editor Git tracking.[16][17]

Supported platforms

The Defold editor can be run on three platforms and natively supports targeting eight platforms.[4] Defold supports exports for:

The editor is currently supported on:

  • Windows (Vista or newer; 64-bit)[4]
  • macOS (11 Big Sur or newer)[4]
  • Ubuntu (18.04 or newer; 64-bit)[4]

Scripting and editor

Users communicate with the engine via a Lua API.[15] LuaJIT is used on all platforms except HTML and just-in-time compilation is enabled on permitted platforms. Users can extend the engine using C, C++, Java, Objective-C, and JavaScript for platform-specific or more performant code. In addition, the community maintains TypeScript[19] and Haxe[20] bindings. Scripts are platform-agnostic.

The editor includes a visual scene editor, debugger, asset management, tilemap editor, and all templates required for bundling the game.[15] Newer versions support hot-reloading, to make changes to assets and scripts without rebuilding the project.

Rendering

The render pipeline can be customized via a render script API, which can be translated into OpenGL, OpenGL ES, Vulkan,[21] or Metal (via MoltenVK) depending on the user's needs. Shaders can be written in GLSL for various post-processing effects.[15]

Engine extensions

Defold has support for extensions, which are plugins that extend the engine, where users can integrate auxiliary solutions into their projects. There are libraries for simplifying game systems, interacting with hardware, and integration with third-party software. Both the Defold Foundation and the community host their extensions on the Defold Asset Portal.[22]

History

Defold was created in 2008[23][24] by Christian Murray and Ragnar Svensson[4][25] as a side-project while they were working at Avalanche Studios, and later as a full time business before being acquired by King in 2014.[4] Defold was developed and used internally at King for a few years before the decision was made to make Defold available to developers outside of King.[8][26] The announcement and release of Defold as a free to use game engine was made at the Game Developers Conference in San Francisco in March 2016,[27] which initially was met with suspicion. Some mobile developers have expressed concern about King's true motives as intentions of King with Defold engine weren't fully known and no business goal was clearly expressed in the announcement.[28][clarification needed] Development has continued with bi-weekly[12] incremental releases of the engine and editor, with a major milestone being the release of the new editor in 2017.[14] Defold was nominated for best engine in the 2018 Develop Awards, the 2018 and 2019 Mobile Games Awards.[29][30][31]

In 2020, the Defold Foundation was established to oversee the development and stewardship of the engine, ensuring its independence from any single entity.[4] In the process, the source code for the engine was made public.[32] King released the source on GitHub as open source game engine, but community of developers questioned the choice of licence, as it was initially unclear. Many assumed it was released under an Apache 2.0 - popular open source license. However, King had used a custom license that prevented commercial reuse, calling into question whether it could be considered open source as defined by the Free Software Foundation and the Open Source Initiative.[10][5][33] Shortly after, Defold added support for Nintendo Switch target platform exports.[34]

Licensing

Defold is released under the "Defold License", derived from the Apache License, Version 2.0. The engine is "source available" and developers can access the engine's source code on GitHub.[3] The "Defold License" license permits any use of the code except for the sale of the Defold engine itself, but games made can be distributed freely, without royalties or restrictions.[33][9]

Funding

The Defold Foundation is funded entirely by community donations and corporate partnerships.[3][35] The Defold engine is maintained by both the Defold foundation and open source developers.[36][37][38]

References

  1. "Вышла новая версия движка Defold — 1.5" (in ru). 2023-09-04. https://app2top.ru/news/vy-shla-novaya-versiya-dvizhka-defold-1-5-211128.html. 
  2. "The Defold License". https://defold.com/license/. 
  3. 3.0 3.1 3.2 3.3 Kerr, Chris (2020-05-19). "King has opened up and relinquished control of the Defold game engine" (in en). https://www.gamedeveloper.com/business/king-has-opened-up-and-relinquished-control-of-the-defold-game-engine. 
  4. 4.00 4.01 4.02 4.03 4.04 4.05 4.06 4.07 4.08 4.09 4.10 4.11 4.12 4.13 4.14 Kamen, Matt (2016-03-22). "Candy Crush studio King releases Defold game development engine for free". https://www.wired.co.uk/article/king-game-engine-defold-free. 
  5. 5.0 5.1 Cowley, Ric (2020-05-19). "King is making its Defold game engine open source". https://www.pocketgamer.biz/news/73390/king-defold-open-source/. 
  6. 6.0 6.1 "Defold: A Grant for the Web Awardee". https://www.grantfortheweb.org/blog/defold. 
  7. Kerr, Chris (2016-03-23). "King's Defold game engine is now available for free" (in en). https://www.gamedeveloper.com/production/king-s-defold-game-engine-is-now-available-for-free. 
  8. 8.0 8.1 8.2 8.3 "Here’s why King gave away its 2D mobile game engine Defold" (in en-US). 2016-03-19. https://venturebeat.com/business/heres-why-king-gave-away-its-2d-mobile-game-engine-defold/. 
  9. 9.0 9.1 Orremark, Kim (2017-08-29). "Vi kollar in spelmotorn Defold" (in sv). https://www.gamereactor.se/vi-kollar-in-spelmotorn-defold-479963/. 
  10. 10.0 10.1 Hunter, Tatum (2020-10-27). "Is It Time to Leave Open Source Behind?" (in en). https://builtin.com/software-engineering-perspectives/ethical-source. 
  11. 11.0 11.1 "『キャンディークラッシュ』のKingが提供する2D開発特化ゲームエンジン“Defold”とは? | ファミ通App【スマホゲーム情報サイト】" (in ja). 2017-04-11. https://app.famitsu.com/20170411_1019185/. 
  12. 12.0 12.1 12.2 株式会社インプレス (2017-04-14). "【特別企画】Kingがゲームエンジン「DEFOLD」を無償公開するワケ 2Dにフォーカスしたゲームエンジンを開発者向けにブリーフィング" (in ja). http://game.watch.impress.co.jp/docs/news/1055032.html. 
  13. Aueki, Aetas (2016-03-17). "[GDC 2016]「キャンディークラッシュ」のKingが公開した完全無料のゲームエンジン「Defold」とは?" (in ja). https://www.4gamer.net/games/032/G003263/20160317081/. 
  14. 14.0 14.1 Pearson, Dan (2016-06-10). "The King Maker" (in en). https://www.gamesindustry.biz/king-maker. 
  15. 15.0 15.1 15.2 15.3 Hillyard, David (2020-06-11) (in en). Documenting Defold Programming Projects. pp. 10–12. ISBN 979-8649775151. [self-published source]
  16. "King releases Defold game engine for free" (in en). MCV. 2016-03-22. ISSN 1469-4832. https://mcvuk.com/development-news/king-releases-defold-game-engine-for-free/. 
  17. Ксения (2016-03-23). "King бесплатно выпускает игровой движок Defold" (in ru). https://apptractor.ru/info/news/king-besplatno-vyipuskaet-igrovoy-dvizhok-defold.html/amp. 
  18. Михайлова, Вероника (2020-06-24). "Игровой движок Defold получил поддержку Nintendo Switch" (in ru). https://app2top.ru/platforms/igrovoj-dvizhok-defold-poluchil-podderzhku-nintendo-switch-167954.html. 
  19. "TypeScript support library for Defold". https://github.com/ts-defold. 
  20. "Haxe support library for the Defold game engine". https://github.com/hxdefold/hxdefold. 
  21. Isaac (2020-05-22). "Defold: motor gráfico multiplataforma torna-se open source" (in pt). https://www.linuxadictos.com/pt/defold-o-motor-gr%C3%A1fico-multiplataforma-de-c%C3%B3digo-aberto.html. 
  22. "Defold Asset portal". https://defold.com/assets/. 
  23. 周思冲 (2016-06-13). "国王守护者Defold:从无人问津到King御用引擎 - 触乐" (in zh). http://www.chuapp.com/?c=Article&a=index&id=249507. 
  24. Weber, Rachel (2016-03-23). "King makes Defold game engine free" (in en). https://www.gamesindustry.biz/king-makes-defold-game-engine-free. 
  25. Riis, Jacob (2016-05-09). "The Story of Defold". https://nordicgame.com/the-story-of-defold/. 
  26. Suckley, Matt (2016-09-19). "Why King is entering the game engine space with Defold and how it will help other devs launch their games". https://www.pocketgamer.biz/comment-and-opinion/63995/king-on-game-engine-defold-and-launching-third-party-games/. 
  27. "GDC - King presents Defold". https://www.gdcvault.com/play/1023484/King-proudly-presents-Defold-(presented. 
  28. Suckley, Matt (2016-09-27). "What do mobile developers think of King's game engine Defold?". https://www.pocketgamer.biz/mobile-mavens/64054/what-do-mobile-developers-think-of-kings-game-engine-defold/. 
  29. "Announcing the Develop Awards 2018 nominations shortlist" (in en). MCV. 2018-05-21. ISSN 1469-4832. https://mcvuk.com/development-news/announcing-the-develop-awards-2018-nominations-shortlist/. 
  30. Chapple, Craig (2018-11-23). "Pocket Gamer Mobile Games Awards 2019 finalists revealed". https://www.pocketgamer.biz/news/69525/pocket-gamer-mobile-games-awards-2019-finalists-revealed/. 
  31. Chapple, Craig (2017-11-29). "Mobile Games Awards 2018: The finalists revealed". https://www.pocketgamer.biz/news/67080/mobile-games-awards-2018-the-finalists-revealed/. 
  32. Batchelor, James (2020-05-19). "King makes Defold engine open source" (in en). https://www.gamesindustry.biz/king-makes-defold-engine-open-source. 
  33. 33.0 33.1 Fyler, Tony (2022-08-04). "Is Open Source Dying Out?" (in en-US). https://techhq.com/2022/08/open-source-coding-development-platform-dying-out/. 
  34. Partleton, Kayleigh (2020-06-25). "The Defold Foundation adds Nintendo Switch support to Defold engine". https://www.pocketgamer.biz/news/73749/the-defold-foundation-adds-nintendo-switch-support/. 
  35. "EGDF: UNITY’S INSTALL FEES ARE A SIGN OF LOOMING GAME ENGINE MARKET FAILURE" (in en-US). 2023-09-14. https://www.egdf.eu/egdf-unitys-install-fees-are-a-sign-of-looming-game-engine-market-failure/. 
  36. Alim (2020-05-26). "Heroic Labs partners with the Defold Foundation to further open-source game development". https://heroiclabs.com/blog/defold-partnership/. 
  37. Ritzl, Björn (2020-08-11). "Melsoft Games partners with the Defold Foundation". https://defold.com/2020/08/11/Melsoft-Games-partners-with-the-Defold-Foundation/. 
  38. Ritzl, Björn (2021-02-16). "The Defold Foundation partners with Rive Inc.". https://defold.com/2021/02/16/The-Defold-Foundation-partners-with-Rive-Inc/. 

External links