28 lines
728 B
Lua
28 lines
728 B
Lua
task("compile-shaders")
|
|
|
|
set_menu({
|
|
-- Settings menu usage
|
|
usage = "xmake compile-shaders [options]",
|
|
description = "Compile engine shaders"
|
|
})
|
|
|
|
on_run(function ()
|
|
import("core.project.project")
|
|
local nzsl = path.join(project.required_package("nzsl"):installdir(), "bin", "nzslc")
|
|
|
|
local envs
|
|
if is_plat("mingw") then
|
|
local mingw = toolchain.load("mingw")
|
|
if mingw and mingw:check() then
|
|
envs = mingw:runenvs()
|
|
end
|
|
end
|
|
|
|
print("Compiling shaders...")
|
|
for _, filepath in pairs(os.files("src/Nazara/*/Resources/**.nzsl")) do
|
|
print(" - Compiling " .. filepath)
|
|
local argv = {"--compile=nzslb", "--partial", "--header-file", filepath }
|
|
os.execv(nzsl, argv, { envs = envs })
|
|
end
|
|
end)
|