My iPad OS is 13.51. I verified that the metal build seems to work with the examples, whereas the non-metal build (cmake_ios.sh) displays a black screen for all the examples I tried on the iPad.
One other issue I’m having, is getting my own project (with my source files) created with the cmake_ios_metal.sh script, but maybe I’m not doing something correct. I was using the project scaffolding approach shown below, where I also copied the script folder from your branch, and used the CMakeList.txt template from the HEAD instructions, with the following line added to set the URHO3D_HOME directory to where I built your branch (out of source build).
set(ENV{URHO3D_HOME} "/Users/jpekarek/Dev/Urho3D-E22-iOS-Mtl")
The CMake folder also comes from your branch.
I then cd to the script directory, and run sh cmake_ios_metal.sh /MyBuildDirectory, and the script runs for a while, but ends with errors.
<PROJECT_ROOT>/
├ bin/
│ ├ Data/
│ └ CoreData/
├ CMake/
│ ├ Modules/
│ └ Toolchains/
├ CMakeLists.txt
|- script
├ *.cpp and *.h
└ *.bat or *.sh
I’m not for sure that copying the script folder into my local build directory and running from there is the right approach to building, but it was the only approach I tried that seemed to work when building from the master (or other more recent branches).
A sampling of the errors are shown below. I don’t understand this build process well enough to have any idea what is going on here. I don’t understand why the CMake script is trying to compile and link anything, I thought it’s purpose was to make an Xcode project that took care of that. Any ideas on what I did wrong?
Undefined symbols for architecture arm64:
"_OBJC_CLASS_$_MTLTextureDescriptor", referenced from:
objc-class-ref in libUrho3D.a(mtl_resources.o)
"_OBJC_CLASS_$_MTLRenderPassDescriptor", referenced from:
objc-class-ref in libUrho3D.a(mtl_command_buffer.o)
"_OBJC_CLASS_$_MTLFunctionConstantValues", referenced from:
objc-class-ref in libUrho3D.a(mtl_render_utils.o)
objc-class-ref in libUrho3D.a(ProgramMtl.o)
:
:
MANY LINES OF ERRORS
:
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see
invocation)
Showing first 200 notices only
** BUILD FAILED **
The following build commands failed:
Ld Debug/cmTC_04757.app/cmTC_04757 normal arm64
(1 failure)