Open3

C-WebGL: nanovgの移植を目指す

okuokuokuoku

emscripten2nativeは拡張として非同期アセットローダーを搭載したいと考えている。で、この場合シェーダーとかテクスチャ、バッファ類のロードは適当なAPIで抽象化する必要があるので、その研究のためにもうちょっと複雑なアプリを移植してみることにした。

... いやまぁimguiは既に移植してあるんだけど、ちょっとあれは移植性が高すぎて評価に不適なので。。

今回は複雑なシェーダーや描画パスを持つnanovgを移植してみることにした。

https://github.com/memononen/nanovg

okuokuokuoku

UWP のビルドが通らない

E:\yuniframe\native\nanovg\nanovg\example\stb_image_write.h(156,8): error C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. [E:\yuniframe_build\pkg-WindowsMSVCUWPx64@SDL2-ANGLE-DirectX11\test-nanovg\test-nanovg.vcxproj]

E:\yuniframe\native\nanovg\nanovg\src\fontstash.h(955,2): error C4996: 'strncpy': This function or variable may be unsafe. Consider using strncpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. [E:\yuniframe_build\pkg-WindowsMSVCUWPx64@SDL2-ANGLE-DirectX11\test-nanovg\test-nanovg.vcxproj]

strncpy すらダメなのかよ!

E:\yuniframe\native\nanovg\example.c(107,1): error C4700: uninitialized local variable 'winWidth' used [E:\yuniframe_build\pkg-WindowsMSVCUWPx64@SDL2-ANGLE-DirectX11\test-nanovg\test-nanovg.vcxproj]
E:\yuniframe\native\nanovg\example.c(122,1): error C4700: uninitialized local variable 'winHeight' used [E:\yuniframe_build\pkg-WindowsMSVCUWPx64@SDL2-ANGLE-DirectX11\test-nanovg\test-nanovg.vcxproj]

でもとんでもねぇバカが見つかった。。