This translation is community contributed and may not be up to date. We only maintain the English version of the documentation. Read this manual in English
Defold 可以让你使用编辑器的可视工具来创建许多游戏必要的东西, 比如瓷砖地图和粒子特效, 但是对于游戏逻辑还是得写代码. 游戏逻辑使用 Lua 语言 , 引擎扩展使用目标平台的原生开发语言.
Defold 使用 Lua 5.1 和 LuaJIT (与目标平台相关) 并且需要遵循 Lua 该版本的书写规范来编写代码. 关于 Defold 中 Lua 使用详情请见 Defold中Lua使用教程.
从 1.8.1 版本开始, Defold 支持使用生成 Lua 代码的翻译器. 安装了翻译器扩展, 你就能使用其他语言 — 比如 Teal — 写出带静态检查的 Lua. 这还是个预览功能, 它有如下限制: 目前翻译器支持不暴露模块和定义在 Defold Lua 运行环境中的函数. 这意味着使用 Defold APIs 类似 go.animate
需要你自己手动去写外部定义.
Defold 允许使用原生代码来扩展游戏引擎以使用引擎所不具备的特定功能. 或者 Lua 性能不良时 (密集计算, 图像处理等) 考虑使用原生扩展. 详情请见 原生扩展教程.
Defold 中内建编辑器可以打开和编辑 Lua 文件 (.lua), Defold 脚本文件 (.script, .gui_script 与 .render_script) 或者其他各类文件. 但只对Lua和脚本文件提供代码高亮.
内置代码编辑器写代码时会出现代码补全功能:
按 CTRL + Space 会出现函数, 参数和返回值的相关信息:
内置代码编辑器使用 Luacheck 和 Lua language server 进行代码检查. 为了配置检查, 需要在项目根目录创建 .luacheckrc 文件. 可用的配置列表可以参考 Luacheck 配置页面. Defold 默认使用如下代码进行 Luacheck 配置:
unused_args = false -- 未使用的参数不提示 (一般用于 .script 文件)
max_line_length = false -- 超长行不提示
ignore = {
"611", -- 行内只包含空白
"612", -- 行尾包含空白
"614" -- 注释结尾包含空白
},
尽管 Defold 提供了编写脚本的基本功能, 但是对于需求更多功能的专业开发者来说还是希望让 Defold 使用自己喜欢的第三方编辑器. 在 Code 页下的 Preferences 窗口 中可以指定使用第三方编辑器.
Defold Kit 是一个 Visual Studio Code 插件, 其包含如下功能:
安装 Defold Kit 详情参考 Visual Studio 商店页面.
社区创建的 API 参考包可用于 Dash 和 Zeal.
Did you spot an error or do you have a suggestion? Please let us know on GitHub!
GITHUB