…
|
||
---|---|---|
.. | ||
src | ||
glfm.nimble | ||
nim.cfg | ||
README.md |
Notes from fork for myou-engine
This library has been heavily modified while trying to make it work with myou-engine based projects. The main changes are:
- Updated C library to latest GLFM.
- Replaced use of deprecated ALooper_pollAll().
- Added GLFW compatibile key codes.
- Changed touch handling to avoid stuck touches.
- Updated nim wrapper code.
- Added
no_sanitize
to functions which were tripping the sanitizer for some reason. - Tried to change to support iOS (but in the end we're not using for iOS).
You're free to take any change from this GLFM fork without attributing us.
GLFM
Wrapper of GLFM (OpenGL ES and input for iOS and Android) library for Nim.
GLFM very simple and is very simmilar to the GLFW wrapper for desktop apps. Together with GLFM + GLFW you can writes app for almost any platform.
Compiling Nim for mobile platforms is not simple. It requires having XCode and Android Studio which have very many steps and settings they perform.
In this repo I have included two projects for XCode and Android Studio which you should be able to just open and hit compile.
Compiling for iOS:
Tested with:
- MacOS Majave Version 10.14.6
- XCode Version 10.3 (10G8)
- Nim Compiler Version 0.20.99 [MacOSX: amd64]
cp examples
Compile everything for iOS:
nim c -c --os:android main.nim
(Yes saying android when compilng for iOS is very odd but its as close to mobile as you get)
Now copy the generated C files into the iOS project folder
cp ~/.cache/nim/main_d/* ios_triangle/example/src/; cp ios_triangle/example/src/main.nim.c ios_triangle/example/src/main.c
Then you go to XCode and hit compile:
Compiling for Android
Tested with:
- MacOS Majave Version 10.14.6
- XCode Version 10.3 (10G8)
- Android Studio 3.4.2
- Nim Compiler Version 0.20.99 [MacOSX: amd64]
Go to the examples folder
cp examples
Compile everything for android running arm processor:
nim c -c --cpu:arm --os:android main.nim
Now copy the generated C files into the Android project folder
cp ~/.cache/nim/main_d/* android_triangle/app/src/main/cpp/; cp android_triangle/app/src/main/cpp/main.nim.c android_triangle/app/src/main/cpp/main.c
Then you go to Android Studio and hit compile: