Install babylonjs native

Hello @bghgary

I have been trying to build for my windows using cmake -A x64…but I get the following error

C:/Users/adene/Downloads/BabylonNative/Build" does not appear to contain CMakeLists.txt.

Try cmake -A x64 ..\
Since we ask for a build subfolder, we need to tell cmake that the parent folder is where our project files are.

     NMake Makefiles

does not support platform specification, but platform

x64

was specified.

CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage
CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage

now i got this

I can’t reproduce these issues, but let’s make sure we have all the build dependencies installed. I’m assuming this is windows 10:

Is cmake for windows installed?
Is git for windows installed?
Have all git submodules been initialized?

Is visual studio 2019 installed with C++ development tools?
And is Python 3 installed and available from the command line?

finally got it working :smiley:

Nice! Have fun!

@Drigax
also, I have these errors in android studio…ninja is installed, I made sure I was using pixel 2 API 27

FAILED: C:/Users/adene/Downloads/BabylonNative-master/BabylonNative-master/BabylonNative/Build/Android_x86/Dependencies/bgfx.cmake/libsquish.a 

cmd.exe /C “cd . && “C:\Program Files\CMake\bin\cmake.exe” -E rm -f C:\Users\adene\Downloads\BabylonNative-master\BabylonNative-master\BabylonNative\Build\Android_x86\Dependencies\bgfx.cmake\libsquish.a && C:\Users\adene\AppData\Local\Android\Sdk\ndk\21.3.6528147\toolchains\llvm\prebuilt\windows-x86_64\bin\i686-linux-android-ar.exe qc C:\Users\adene\Downloads\BabylonNative-master\BabylonNative-master\BabylonNative\Build\Android_x86\Dependencies\bgfx.cmake\libsquish.a …/…/…/…/…/…/…/…/Build/Android_x86/Dependencies/bgfx.cmake/CMakeFiles/squish.dir/bimg/3rdparty/libsquish/alpha.cpp.o …/…/…/…/…/…/…/…/Build/Android_x86/Dependencies/bgfx.cmake/CMakeFiles/squish.dir/bimg/3rdparty/libsquish/clusterfit.cpp.o …/…/…/…/…/…/…/…/Build/Android_x86/Dependencies/bgfx.cmake/CMakeFiles/squish.dir/bimg/3rdparty/libsquish/colourblock.cpp.o …/…/…/…/…/…/…/…/Build/Android_x86/Dependencies/bgfx.cmake/CMakeFiles/squish.dir/bimg/3rdparty/libsquish/colourfit.cpp.o …/…/…/…/…/…/…/…/Build/Android_x86/Dependencies/bgfx.cmake/CMakeFiles/squish.dir/bimg/3rdparty/libsquish/colourset.cpp.o …/…/…/…/…/…/…/…/Build/Android_x86/Dependencies/bgfx.cmake/CMakeFiles/squish.dir/bimg/3rdparty/libsquish/maths.cpp.o …/…/…/…/…/…/…/…/Build/Android_x86/Dependencies/bgfx.cmake/CMakeFiles/squish.dir/bimg/3rdparty/libsquish/rangefit.cpp.o …/…/…/…/…/…/…/…/Build/Android_x86/Dependencies/bgfx.cmake/CMakeFiles/squish.dir/bimg/3rdparty/libsquish/singlecolourfit.cpp.o …/…/…/…/…/…/…/…/Build/Android_x86/Dependencies/bgfx.cmake/CMakeFiles/squish.dir/bimg/3rdparty/libsquish/squish.cpp.o && C:\Users\adene\AppData\Local\Android\Sdk\ndk\21.3.6528147\toolchains\llvm\prebuilt\windows-x86_64\bin\i686-linux-android-ranlib.exe C:\Users\adene\Downloads\BabylonNative-master\BabylonNative-master\BabylonNative\Build\Android_x86\Dependencies\bgfx.cmake\libsquish.a && cd .”
C:\Users\adene\AppData\Local\Android\Sdk\ndk\21.3.6528147\toolchains\llvm\prebuilt\windows-x86_64\bin\i686-linux-android-ar.exe: …/…/…/…/…/…/…/…/Build/Android_x86/Dependencies/bgfx.cmake/CMakeFiles/squish.dir/bimg/3rdparty/libsquish/singlecolourfit.cpp.o: No such file or directory
[18/139] Building CXX object …/…/…/…/…/…/…/…/Build/Android_x86/Dependencies/bgfx.cmake/CMakeFiles/astc.dir/bimg/3rdparty/astc/astc_weight_quant_xfer_tables.cpp.o
[19/139] Building CXX object …/…/…/…/…/…/…/…/Build/Android_x86/Dependencies/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/InfoSink.cpp.o
[20/139] Building CXX object …/…/…/…/…/…/…/…/Build/Android_x86/Dependencies/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/IntermTraverse.cpp.o
[21/139] Building CXX object …/…/…/…/…/…/…/…/Build/Android_x86/Dependencies/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/RemoveTree.cpp.o
[22/139] Building CXX object …/…/…/…/…/…/…/…/Build/Android_x86/Dependencies/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/attribute.cpp.o
[23/139] Building CXX object …/…/…/…/…/…/…/…/Build/Android_x86/Dependencies/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/Constant.cpp.o
[24/139] Building CXX object …/…/…/…/…/…/…/…/Build/Android_x86/Dependencies/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/Initialize.cpp.o
[25/139] Building CXX object …/…/…/…/…/…/…/…/Build/Android_x86/Dependencies/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/ParseContextBase.cpp.o
[26/139] Building CXX object …/…/…/…/…/…/…/…/Build/Android_x86/Dependencies/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/Intermediate.cpp.o
[27/139] Building CXX object …/…/…/…/…/…/…/…/Build/Android_x86/Dependencies/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/glslang_tab.cpp.o
[28/139] Building CXX object …/…/…/…/…/…/…/…/Build/Android_x86/Dependencies/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/iomapper.cpp.o
[29/139] Building CXX object …/…/…/…/…/…/…/…/Build/Android_x86/Dependencies/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/ShaderLang.cpp.o
[30/139] Building CXX object …/…/…/…/…/…/…/…/Build/Android_x86/Dependencies/glslang/SPIRV/CMakeFiles/SPIRV.dir/GlslangToSpv.cpp.o
ninja: build stopped: subcommand failed.

Adding @Cedric and @bghgary

@waverider404 I’m 90% sure it’s because of path length with Windows/Android Studio. Can you try to clone the repo in a short length named directory (like c:\BN instead of C:/Users/adene/Downloads/BabylonNative-master/BabylonNative-master/BabylonNative).
I had the same issue some time ago and enabling long path support in Windows didn’t help. I guess some path length is limited to MAX_PATH somewhere…

@Cedric

I finally got it to install on the emulator but now the app crashes with the following error

10:41 AM	Emulator: C:\buildbot\src\android\emu-master-dev\external\qemu\android\android-emugl\host\libs\Translator\GLES_V2\GLESv2Imp.cpp:glTexImage2D:3389 error 0x501

10:41 AM Emulator: sPrepareTexImage2D:3340 failed validation

Can you check your emulator opengl es 3 settings ?

I guess the problem lies with my emulator not supporting gles3, so i tested it directly on my tablet and it works

it seems babylonjs gui does not work in the native engine and also how can I disable anti-aliasing for optimisation purpose?

GUI doesn’t work yet but it will in the coming weeks. There is no easy way to disable AA. The flag in only set on the c++ side with no way to change it without a rebuild.