React Native 2D game engine built on Skia* and Expo:
react-nativeexporeact-native-skia: for graphicsreact-native-reanimated: for animationsreact-native-gesture-handler: for gesture inputexpo-av: for sound
*There is an old branch old-expo-2d-context that uses expo-2d-context/expo-gl instead of Skia.
- Graphics: SVG (inline and file-based) and bitmaps.
- Sound:
useSoundhook to play MP3’s. - Math for collisions and vectors.
- Declarative, component-based programming paradigm with functional components.
Clone this repository:
git clone https://github.com/tomsoderlund/expo-2d-game-engine.git [MY_APP]
cd [MY_APP]
Remove the .git folder since you want to create a new repository
rm -rf .git
Install dependencies (you can use yarn or npm too):
bun install
Start Expo for native apps:
bun run dev
(Replace ios with android for Google Play)
bun build:ios # create a build with EAS
bun submit:ios # send the build to Apple/Google
Portrait vs Landscape:
app.json:
"orientation": "landscape"
