All three pointed at paths that no longer exist, so they 404 on GitHub:
- `base/docs/amake.md` linked `ashader.c` at `tree/main/base/docs/ashader`,
which is neither a file nor a directory. The doc is `ashader.md`, so the
link needs `blob/` and the `.md` suffix.
- `base/docs/brute_pathtracer.md` linked the raytrace sources under
`base/sources/`, but they live under `paint/sources/render/` now.
Verified by resolving every armory3d/armorpaint self-link in the tree's
markdown against the tracked file list: 3 of 8 were dead before, 0 of 8
after.
Building on Windows for Android produced invalid escapes in the
generated project files. Two host paths were emitted with raw
backslashes, and in both cases the normalisation was gated on the
target platform instead of the host:
- project.js: EMBED_H_PATH embedded os_cwd() verbatim, so the define
reached the generated CMakeLists.txt as
-DEMBED_H_PATH=\"D:\...\paint/build/embed.h\"
The quotes were escaped but the path was not, so CMake rejected the
backslash escapes with "Invalid character escape".
- make.js: the #embed directive written to build/embed.h kept host
backslashes whenever the target was not windows, so \r and \c were
read as escape sequences.
Both are now normalised to forward slashes on win32 hosts, matching the
existing idiom used throughout make.js. Windows accepts / in #include,
in #embed and in CMake paths, and the native Windows output is byte for
byte unchanged.
Fixes#2107
viewport_save_texture() PNG-encodes a captured viewport into
g_project->packed_assets and imports it into the Textures tab. That is the
right behaviour for the in-app screenshot, but it never touches the
filesystem, and a script has no binding that can read a packed asset back
out. So a plugin can capture the viewport and still have no way to look at
the result, or to hand it to anything outside the app.
This adds a variant that writes the PNG straight to a path with
iron_write_png (already used by export_texture_run) and registers it in
minic_api_list.h, so scripts get the same capability the UI already has.
Existing behaviour is untouched: viewport_save_texture is unchanged and the
new function is additive.
Built clean on Windows/x64 with ClangCL against this commit.