Skip to content

Latest commit

 

History

History
149 lines (99 loc) · 3.04 KB

README.md

File metadata and controls

149 lines (99 loc) · 3.04 KB

yapre

yapre

Build Status

windows mac linux emscripten iOS Anodroid
Build Status Build Status Build Status Build Status Build Status Build Status

Intro

Here comes Yet Another Portable Retro Engine(yapre)!

It is a toy project for everyone to make retro games on any platform(for now Windows, MacOS, Linux, emscripten, iOS and Android are supported) using C++ and lua.

Try the demo app in your webbrowser by typping yapre.run in your address bar!

Examples

Build

windows

> git clone --recurse-submodules -j8 [email protected]:wo1fsea/yapre.git
> cd yapre
> .\build_scripts\build_windows.bat

mac

> git clone --recurse-submodules -j8 [email protected]:wo1fsea/yapre.git
> cd yapre
> sh ./build_scripts/build_mac.sh

linux

> git clone --recurse-submodules -j8 [email protected]:wo1fsea/yapre.git
> cd yapre
> sh ./build_scripts/build_linux.sh

generate ios xcode project on mac

for devices

> git clone --recurse-submodules -j8 [email protected]:wo1fsea/yapre.git
> cd yapre
> sh ./build_scripts/build_ios.sh

for simulators

> git clone --recurse-submodules -j8 [email protected]:wo1fsea/yapre.git
> cd yapre
> sh ./build_scripts/build_ios_simulator.sh

generate android studio project on mac

> git clone --recurse-submodules -j8 [email protected]:wo1fsea/yapre.git
> cd yapre
> sh ./build_scripts/build_android.sh

build emscripten version on mac/linux

build

> git clone --recurse-submodules -j8 [email protected]:wo1fsea/yapre.git
> cd yapre
> sh ./build_scripts/build_emscripten.sh

test run

> sh ./build_scripts/run_emscripten.sh

API

System

Init()

Deinit()

Update()

yapre.platform

yapre.Exit()

yapre.AddTimer(time_ms, callback_function)

Audio

yapre.Beep(freq, duration_ms)

Video

yapre.RenderSize(width, height)

yapre.SetClearColor(r, g, b, a)

yapre.DrawSprite(texture_path, x, y, z, width, height, rotate, r, g, b)

Input

yapre.BindKeyboardInputCallback(key, callback_function)

yapre.UnbindKeyboardInputCallback(key)

yapre.BindMouseInputCallback(key, callback_function)

yapre.UnbindMouseInputCallback(key)

yapre.BindTouchInputCallback(key, callback_function)

yapre.UnbindTouchInputCallback(key)