All Projects → schell → odin

schell / odin

Licence: MIT license
High level 2d game engine written in Haskell.

Programming Languages

haskell
3896 projects
shell
77523 projects

Projects that are alternatives of or similar to odin

EtherEngine
简明易用的 Lua 跨平台游戏接口
Stars: ✭ 132 (+371.43%)
Mutual labels:  engine, sdl
Yampa
Functional Reactive Programming domain-specific language embedded in Haskell, for programming efficient hybrid (mixed discrete-time and continuous-time) systems.
Stars: ✭ 294 (+950%)
Mutual labels:  sdl, frp
Haskanoid
A breakout game in Haskell using SDL and FRP, with Wiimote and Kinect support.
Stars: ✭ 242 (+764.29%)
Mutual labels:  sdl, frp
Lambdahack
Haskell game engine library for roguelike dungeon crawlers; please offer feedback, e.g., after trying out the sample game with the web frontend at
Stars: ✭ 439 (+1467.86%)
Mutual labels:  engine, sdl
Bgfx
Cross-platform, graphics API agnostic, "Bring Your Own Engine/Framework" style rendering library.
Stars: ✭ 10,252 (+36514.29%)
Mutual labels:  engine, sdl
tortuga
A modern game engine built using dot net core
Stars: ✭ 14 (-50%)
Mutual labels:  engine, sdl
Xray 16
Improved version of the X-Ray Engine, the game engine used in the world-famous S.T.A.L.K.E.R. game series by GSC Game World. Join OpenXRay! ;)
Stars: ✭ 1,806 (+6350%)
Mutual labels:  engine, sdl
bitty
Bitty Engine - An itty bitty 2D game engine, with built-in editors, programmable in Lua.
Stars: ✭ 86 (+207.14%)
Mutual labels:  engine, sdl
Algorithms
Data Structures & Algorithms. Includes solutions for Cracking the Coding Interview 6th Edition
Stars: ✭ 89 (+217.86%)
Mutual labels:  stack
Phobos
Ares-compatible C&C Red Alert 2: Yuri's Revenge engine extension
Stars: ✭ 123 (+339.29%)
Mutual labels:  engine
Javet
Javet is Java + V8 (JAVa + V + EighT). It is an awesome way of embedding Node.js and V8 in Java.
Stars: ✭ 218 (+678.57%)
Mutual labels:  engine
sdl12-compat
An SDL-1.2 compatibility layer that uses SDL 2.0 behind the scenes.
Stars: ✭ 99 (+253.57%)
Mutual labels:  sdl
DEPRECATED-data-structures
A collection of powerful data structures
Stars: ✭ 2,648 (+9357.14%)
Mutual labels:  stack
zrp
zrp 是使用Java开发的一款基于Netty的内网穿透工具,主要用于将内网服务反向代理到公网访问。目前支持所有TCP上层协议的代理,包括但不限于HTTP、SSH、FTP、TELNET、SMTP、POP3、DNS等。
Stars: ✭ 32 (+14.29%)
Mutual labels:  frp
goma-engine
A simple C++ 3D game engine with Vulkan support.
Stars: ✭ 34 (+21.43%)
Mutual labels:  engine
mutable
State containers with dirty checking and more
Stars: ✭ 32 (+14.29%)
Mutual labels:  frp
UT GameEventSystem
A flexible event system in Unreal Engine 4
Stars: ✭ 33 (+17.86%)
Mutual labels:  engine
tnt
A 2d Game Engine written in C++20.
Stars: ✭ 30 (+7.14%)
Mutual labels:  engine
stack
🥭 nxpm-stack lets you generate a complete and opinionated full-stack application in a Nx Workspace, ready to extend and deploy!
Stars: ✭ 98 (+250%)
Mutual labels:  stack
uniprof
A stack tracer/profiler for Xen domains
Stars: ✭ 29 (+3.57%)
Mutual labels:  stack

odin

odin-engine is a high level 2d game and application engine. It provides a number of composable GUI widgets and glue code to various useful libraries. It is written on top of reflex-sdl2, an FRP over SDL2.

batteries included

  • reflex-sdl2 provides the main loop and the control scheme is familiar FRP if you've used any reflex based hosts.

  • gelatin-sdl2 is the OpenGL/SDL2 rendering backend. It supports 2d rendering through colors and textures.

  • varying provides smooth FRP-based animation.

  • shapes provides a purely function 2d collision detection and physics system.

installation

odin-engine depends on

You can install them with the following platform specific steps.

Mac OS X

Using homebrew...

brew install freetype
brew install sdl2

Ubuntu

First install freetype2

apt-get install libfreetype6

The sdl2 bindings require an sdl2 install >= 2.0.4, or for special instructions to be followed. Assuming you're on Ubuntu >= 16.04, you can simply run

apt-get install libsdl2-dev

otherwise please visit the link above and install via their README.

Windows

Coming soon

building source

The easiest way to get up and running on the Haskell toolchain is to download stack. All of odin's projects are spec'd out with stack.yaml build files, so picking the correct versions of libraries is not needed if you follow the stack path.

git clone https://github.com/schell/odin.git

cd odin

If you just installed stack, run

stack setup

Go make some and then...

stack build

Drink your , take a walk and then run...

stack exec mapMaker

contributions

I welcome any and all contributions. This means bug reports, pull requests or even donations through patreon. This game and engine will always be free.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].