📜 ⬆️ ⬇️

Small multiplatform 2d tengine engine (android / ios / win32 / nix / kolibrios / web (emscripten))

Greetings to all who have become interested in learning about my small project, which I do in my free time, about my long-playing project called “tengine”.

What is the purpose of this post? The answer is simple - I'm looking for odnodumtsev. I believe that there are still a lot of people who like a nice and kind old school. That's the whole mission - to write fun for the sake of something small, but quite functional, a platform for "console" toys in the style of 8/16 bits.

tengine DEMO game (web version) control: arrow keys, ctrl. Full ending.
')
The main feature that distinguishes tengine from hundreds of similar crafts is not quite a standard ideology:


Initially, I wrote all this under nintendo ds, my favorite gaming platform. But times are changing and I had to move everything to the more popular world of technology. So there was a branch for android, which later became the main one. The win32 version plays a more debugging role. As planned, the game is written and debugged on win32, and then compiled to other platforms (all this is conditional, of course, on win32 all the functionality works fully). With the advent of one very good enthusiast, the project also gained the NIX platform, for which he thanks a lot. Although nintendo ds is no longer supported, I deliberately did not remove the platform code under the preprocessor key from the project. There are also some nintendo-specific architectural features that remain, such as support for multiple screens and logical rendering layers. All this is described in poor, but all the same documentation.

Now tengine is:

In addition to all this, there is the gui subsystem, which is a superstructure over tengine. The basic idea: all the gui elements are normal game objects, which upon initialization acquire the already pre-installed gui elements such as, for example, the “button”. It is enough to register any game object in a gui container and specify what behavior is expected of it. The rest of the add-on takes over.

The level editor (me3) is a utility for creating “levels” for tengine and includes:

To deal with the editor a bit difficult at first, I wrote it specifically for my friend game designer. But there are examples in the samples folder as well as the interface in Russian, which, as for me, is quite intuitive. The documentation, unfortunately, has not yet mastered writing.

Who is still interested, everything is available at https://bitbucket.org/pascualle/tengine

As a bonus, not so long ago, I sported the verlet library described in the post habrahabr.ru/post/178135 . While it is a little apart, but already tested for performance (see an example in samples / spider)

Read also a small tutorial (attention, it is without pictures!) "Creating a small game using tengine" habrahabr.ru/post/180443

Source: https://habr.com/ru/post/179839/


All Articles