From 447896b56e86db81a2f1d01b267681884f18aeab Mon Sep 17 00:00:00 2001 From: Alberto Torres Date: Fri, 23 Aug 2024 17:08:24 +0200 Subject: [PATCH] First commit. --- .gitignore | 8 +++ README.md | 85 ++++++++++++++++++++++++++++++++ assets/example.blend | Bin 0 -> 104308 bytes build/web/game.html | 30 +++++++++++ nim.cfg | 78 +++++++++++++++++++++++++++++ scripts/simple_server.py | 16 ++++++ scripts/update_android_files.sh | 10 ++++ scripts/update_ios_files.sh | 33 +++++++++++++ scripts/watch.sh | 24 +++++++++ src/main.nim | 12 +++++ 10 files changed, 296 insertions(+) create mode 100644 .gitignore create mode 100644 README.md create mode 100644 assets/example.blend create mode 100644 build/web/game.html create mode 100644 nim.cfg create mode 100755 scripts/simple_server.py create mode 100644 scripts/update_android_files.sh create mode 100644 scripts/update_ios_files.sh create mode 100644 scripts/watch.sh create mode 100644 src/main.nim diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e362c36 --- /dev/null +++ b/.gitignore @@ -0,0 +1,8 @@ + +build/* +!build/web/ +build/web/* +!build/web/game.html +tmp/ + +*.blend1 diff --git a/README.md b/README.md new file mode 100644 index 0000000..0cf1c51 --- /dev/null +++ b/README.md @@ -0,0 +1,85 @@ + +# Template project for Myou Engine + +## Features + +* A `nim.cfg` ready to compile to desktop, Android, iOS, and web through + Emscripten. +* Helper scripts for using the C files for Android and iOS (in Android Studio + and XCode respectively). +* A `game.html` file with just a canvas that fills the whole window. +* A simple python server that supports CORS (so you can load assets remotely), + and COOP/COEP (so multithreaded Emscripten builds can work). +* An empty `example.blend` that is just a default cube saved in Blender 4.1. + +## How to use + +* Have the code of Myou Engine somewhere. In this example it expects it to be in + `../myou-engine` (that is, in the parent folder of this project). + +* If you have the engine somewhere other than `../myou-engine`, change the path + in `nim.cfg`. For example, if you have it in `./libs/myou_engine`, then change + this: + + `path:"../myou-engine/libs/packages"` + + by this: + + `path:"./libs/myou_engine/libs/packages"` + + Note that we add `/libs/packages` so that the engine can use all of its + dependencies without relying on a package manager. + +* Have [Nimskull](https://github.com/nim-works/nimskull) installed in your path + (here we'll assume it's just `nim`). In the future it will work with Nim (and + other languages as well) through a built version of the engine. + +### Desktop version + +* To compile and run for desktop just run + + `nim c -r src/main.nim` + + The output will be in `build/game.exe` or `build/game`. + +* To compile a Windows version from Linux or MacOS, run: + + `nim c -d:mingw src/main.nim` + + You can add `-r` to run it, it will try to use Wine if you have it + installed. + +### Web version + +* To compile a web version with Emscripten, run: + + `nim c -d:emscripten src/main.nim` + + Output files will be in `build/web/` + +* Run `python scripts/simple.server.py` + +* Open http://localhost:8003/build/web/game.html + +### Mobile version + +* To compile it for Android: + + `nim c --os:android --cpu:arm64 src/main.nim` + + Output C files will be in `tmp/android/` + + _(TODO: instructions on how to use files in Android Studio)_ + +* To compile it for iOS: + + `nim c --os:ios src/main.nim` + + Output C files will be in `tmp/android/` + + _(TODO: instructions on how to use files in XCode)_ + +## License + +Add your own license and replace this text. Until then you can consider this +CC0. You can use the files in this repository for any purpose whatsoever. diff --git a/assets/example.blend b/assets/example.blend new file mode 100644 index 0000000000000000000000000000000000000000..7b9044053d06e0cc5187f3028d5e273e6c5f04a7 GIT binary patch literal 104308 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 Fl8*t9{W<^u literal 0 HcmV?d00001 diff --git a/build/web/game.html b/build/web/game.html new file mode 100644 index 0000000..db1def0 --- /dev/null +++ b/build/web/game.html @@ -0,0 +1,30 @@ + + + + + + + My Game + + + + + + + + + diff --git a/nim.cfg b/nim.cfg new file mode 100644 index 0000000..6b8fb1b --- /dev/null +++ b/nim.cfg @@ -0,0 +1,78 @@ + +path:"../myou-engine/libs/packages/" + +out:"build/game" + +@if release: + d:lto +@else: + debugger:native + # floatChecks:on + @if not myouUseAR and not emscripten: + d:myouUseRenderdoc + @end +@end + +@if android: + c # generate c files, don't compile them + nimcache:"tmp/android" + d:myouUseNativeActivity + d:opengl_es + d:androidNDK + noMain:on + @if amd64: + nimcache:"tmp/androidx64" + @end +@end + +@if ios: + c # generate c files, don't compile them + cpu:arm64 + nimcache:"tmp/ios" + d:opengl_es + noMain:on +@end + +@if emscripten: + passL:"-o build/web/game.js" + d:opengl_es + noMain:on + nimcache:"tmp/emscripten" + os:linux + cpu:wasm32 + cc:clang + clang.exe:emcc + clang.linkerexe:emcc + clang.cpp.exe:emcc + clang.cpp.linkerexe:emcc + # d:noSignalHandler + @if release: + passC:"-O3 -flto" + passL:"-O3 -flto --closure 1" + @else: + passC:"-gsource-map -O0" + passL:"-gsource-map -O0" + # embedsrc + @end + passL:"-sMIN_WEBGL_VERSION=2 -sMAX_WEBGL_VERSION=2" + # passL:"-sEXPORTED_FUNCTIONS=_main,_NimMain,_glfmMain" + passL:"-sFETCH=1" + passL:"-sINITIAL_MEMORY=268435456" + passL:"-sSTACK_SIZE=262144" + passL:"-sALLOW_MEMORY_GROWTH" +@end + +@if sanitize: + cc:clang + d:useMalloc + passC:"-fno-omit-frame-pointer" + passC:"-mno-omit-leaf-frame-pointer" + passC:"-fsanitize=address" + passL:"-fsanitize=address" + gc:arc + threads:off +@end + +@if mingw: + passL:"-static" +@end diff --git a/scripts/simple_server.py b/scripts/simple_server.py new file mode 100755 index 0000000..0fdc78c --- /dev/null +++ b/scripts/simple_server.py @@ -0,0 +1,16 @@ +#!/usr/bin/env python3 +# encoding: utf-8 +"""Use instead of `python3 -m http.server` when you need CORS and SharedArrayBuffer""" + +from http.server import HTTPServer, SimpleHTTPRequestHandler + +class CORSRequestHandler(SimpleHTTPRequestHandler): + def end_headers(self): + self.send_header('Access-Control-Allow-Origin', '*') + self.send_header('Cross-Origin-Opener-Policy', 'same-origin') + self.send_header('Cross-Origin-Embedder-Policy', 'require-corp') + self.send_header('Cache-Control', 'no-store, no-cache, must-revalidate') + return super(CORSRequestHandler, self).end_headers() + +httpd = HTTPServer(('', 8003), CORSRequestHandler) +httpd.serve_forever() diff --git a/scripts/update_android_files.sh b/scripts/update_android_files.sh new file mode 100644 index 0000000..0b6fbf6 --- /dev/null +++ b/scripts/update_android_files.sh @@ -0,0 +1,10 @@ + +# TODO: port this to nimscript +# TODO: modify the CMake file instead of copying to clipboard + +# Build for android like this: +# nim c -c --os:android --cpu:arm64 src/main.nim +# and then run this script to update the files in CMakeLists.txt +# (the result will be copied to clipboard) +OUT_NAME=game +cat tmp/android/${OUT_NAME}.json|grep '\.\(c\|cpp\)",' | sed -e 's/,$//' -e 's/@/\\@/g' | xsel -b diff --git a/scripts/update_ios_files.sh b/scripts/update_ios_files.sh new file mode 100644 index 0000000..2021eb8 --- /dev/null +++ b/scripts/update_ios_files.sh @@ -0,0 +1,33 @@ + +# TODO: port this to nimscript + +# Build for ios like this: +# nim c -c --os:ios --cpu:arm64 src/main.nim +# then run this script to copy the missing files +# and then remove and add the folder again in xcode + +# If there are old files that are no longer used +# you have to delete the cache first: +# rm tmp/ios/* -rf +# then build and follow the above instructions + +OUT_NAME=game +cd tmp/ios +DIR="$(pwd)" +# copy header files +(cat "$OUT_NAME.json" | + grep -- -I/| + grep -o -- '-I/[^ ]*' | + grep -v '^-I/$' | + sed 's@^..@@' | sort | uniq | + xargs -d'\n' -I {} find {} -iname "*.h" | + xargs -d'\n' -I {} cp "{}" . +) +# copy c files outside cache +echo ignore any error below saying "*.h" does not exist +(cat "$OUT_NAME.json" | + grep '\.\(c\|cpp\|m\)",' | + grep -v "\"$DIR" | + sed -e 's/",$//' -e 's/^\s*"//' -e 's/\\"/"/g' | + xargs -d'\n' -I {} sh -c 'cp "{}" "$(dirname {})/"*.h .' +) diff --git a/scripts/watch.sh b/scripts/watch.sh new file mode 100644 index 0000000..0e43e4a --- /dev/null +++ b/scripts/watch.sh @@ -0,0 +1,24 @@ + +# TODO: port this to nimscript + +cd "$(dirname $0)/.." +[ $NIM ] || NIM="${HOME}/nimskull/bin/nim" +OUT_NAME=game +MAIN_FILE=src/main.nim +MAIN_FILE_NAME=main +JSON="$HOME/.cache/nimskull/$MAIN_FILE_NAME_d/$OUT_NAME.json" +function build(){ + $NIM c "$MAIN_FILE" && (pkill -9 game; build/game &) +} +function file_list(){ + if [ -e $JSON ]; then + cat $JSON | grep '/@m.*\.nim\.c.o",' | sed -e 's_.*@m\(.*\).c.o",_src/\1_' -e 's_@s_/_g' + fi + find -iname "*.nim" + find -iname "*.blend" +} +for p in $(file_list);do echo $p;done +build +while inotifywait -e modify $(file_list) ;do + build +done diff --git a/src/main.nim b/src/main.nim new file mode 100644 index 0000000..bf51e29 --- /dev/null +++ b/src/main.nim @@ -0,0 +1,12 @@ + +import myou_engine + +var myou = newMyouEngine(1280, 720, "My game") + +# The example file is just Blender's default cube +myou.loadScene("assets/example.blend", proc(scene: Scene) = + scene.enable_all() +) + +myou.run() +