Page 1 of 1

Ouzel engine

Posted: Thu Apr 28, 2016 12:26 pm
by elvman
Hello! As you maybe know, I have been developing games with Irrlicht for some time (10 years already :O). I have switched to 2D games a few years ago and I experimented with Irrlicht and cocos2d-x a lot in 2D field. As I weren't satisfied with none of them (lack of platform support, architecture problems etc.), I decided to write my own 2D engine. So here is my 2D engine named "Ouzel" on Github. I have been working on it for a bit more than 7 months and have made one game with it – The Bear Slayer (available on Greenlight). So please feel free to try my engine, fork it and give me your suggestions. Thanks!

Gif from the Bear Slayer:
Image

Re: Ouzel engine

Posted: Thu Apr 28, 2016 3:34 pm
by REDDemon
Pretty cool, just looking at the repository now. I'll add my more thoughts later.

EDIT:

Have you considered doing dependency injecton using a proper framework instead of using a singleton of SharedEngine? (in example the renderer could be automatically injected instead of retrieving it from sharedEngine, anyway your solution avoid the cost of having 1 extra member stored inside the class) nice code base by the way, very polished and SOLID, liked it and starred. :).

Re: Ouzel engine

Posted: Thu Apr 28, 2016 7:03 pm
by elvman
Thanks! :) I planned to do the dependency injection at first, but hey, how many engine instances will you have at once? :) And as you mentioned, it would add additional field in every class and would make using the engine more complicated. Also most of the "engines" (including Unreal Engine 4) use singleton pattern, so I am ok with that.

Re: Ouzel engine

Posted: Mon May 02, 2016 12:27 pm
by REDDemon
Are forks wellcome? :)

Re: Ouzel engine

Posted: Tue May 03, 2016 10:23 am
by elvman
Forks are always welcome :)

Re: Ouzel engine

Posted: Fri May 06, 2016 7:54 am
by chronologicaldot
Excellent! Does it support non-POT textures?

Re: Ouzel engine

Posted: Sun May 08, 2016 2:10 am
by elvman
Yes, it supports them, but non-POT texture mip-mapping is disabled for OpenGL ES, because most of the ES hardware does not support them.

Re: Ouzel engine

Posted: Mon May 23, 2016 11:07 am
by elvman
Starting from v.0.17, Ouzel engine supports Android platforms. So now the supported platforms are: Windows, OS X, Linux, iOS, tvOS and Android.

Re: Ouzel engine

Posted: Fri Jul 15, 2016 3:17 pm
by elvman
A lot of work has been done and now Ouzel engine also supports wav file playback, texture filtering, v-sync, NEON, SSE and has a Raspberry Pi support.

Re: Ouzel engine

Posted: Wed Sep 28, 2016 11:51 am
by elvman
Just released a version 0.24 of the Ouzel engine. A lot has been done since the previous releases, texture filtering, v-sync, sound engine (XAudio2, OpenAL, OpenSL ES backends), UTF-8 text rendering, MSAA, empty (NONE) video and audio drivers, touch support on Windows and lots of optimizations

Also the engine now supports Emscripten target so it can be run in your browser (see the samples here: http://www.ouzelengine.org/samples/).

You can also join the Ouzel Discord chat if you want to talk some technical stuff: https://discord.gg/4sWuJE8