Ethanon engine (2D w/ per pixel lighting)

Started by
13 comments, last by andrew1b 13 years, 11 months ago
I have just released the version 0.5.1 beta of my 2D game engine that features dynamic per-pixel lighting and particle effects. Here's a more detailed description: Screenshots
>Video Ethanon Engine is a free 2D game development tool focused on the recent video cards for hardware acceleration and shader effects. EE is best suitable for 2D games with a top-down view, but it can also be used to develop other styles, such as side scrollers and shoot'em up games. The main goal of this engine is to provide high-quality lighting, shadow and particle effects with an easy to use visual interface and a simple and direct scripting system. EE is entirely based on 2D sprites. It uses pixel shaders to perform the normal map based lighting and supports any kind of map construction (e.g..: isometric, orthogonal or hexagonal) because it's based on arbitrarily positioned entities instead of fixed tiles. To control the game flow and handle its events, Ethanon Engine uses AngelScript for scripts, which brings a familiar C++ syntax to the code. The integration with the scripting language is pretty simple and easy to understand. Many features are included in the scripting system, such as full entity manipulation, save and load games with one instruction, video playback support, and more. The website and documentation are already on-line: www.asantee.net/ethanon/ If you try it, let me know about your experience and impressions. [Edited by - andrew1b on February 18, 2010 2:19:39 PM]
...
Advertisement
I have just released the version 0.6.1: download
...
Looks great! Love to see some videos of how the content is created (does it use normal maps, etc).
__________________________________[ Website ] [ Résumé ] [ [email=contact[at]matthughson[dot]com]Contact[/email] ][ Have I been Helpful? Hook me up! ]
>This video shows some of the content creation tools. Still, I recommend you to try it yourself, I'd be glad to know about your impressions.

It uses normal maps for lighting. All the normals must be created using another tool such as Photoshop plugins or even 3dsmax. There’s no drawing or modeling tool, the entity editor just puts it all together.
...
Quote:Original post by andrew1b
>This video shows some of the content creation tools. Still, I recommend you to try it yourself, I'd be glad to know about your impressions.

It uses normal maps for lighting. All the normals must be created using another tool such as Photoshop plugins or even 3dsmax. There’s no drawing or modeling tool, the entity editor just puts it all together.

Yah I saw that vid. Looks great! But I meant more of a video going from start to finish creating an asset in Max, calculating the normal map, bringing it into game, etc. Seems like it would be interesting to see the process.

I'd love to try it out myself, but too many things on my plate at the moment.
__________________________________[ Website ] [ Résumé ] [ [email=contact[at]matthughson[dot]com]Contact[/email] ][ Have I been Helpful? Hook me up! ]
Quote:Original post by matthughson
Quote:Original post by andrew1b
>This video shows some of the content creation tools. Still, I recommend you to try it yourself, I'd be glad to know about your impressions.

It uses normal maps for lighting. All the normals must be created using another tool such as Photoshop plugins or even 3dsmax. There’s no drawing or modeling tool, the entity editor just puts it all together.

Yah I saw that vid. Looks great! But I meant more of a video going from start to finish creating an asset in Max, calculating the normal map, bringing it into game, etc. Seems like it would be interesting to see the process.

I'd love to try it out myself, but too many things on my plate at the moment.

You're right. I miss that too. I’m working on it (I'll include some instructions and suggestions about normal mapping in the manual), but it has to go little by little because my plate is full either :)

Thanks for the suggestions.

BTW: I have just released a new version (0.6.2) with some important bug fixes.
...
Version 0.6.3 beta is out! It features an improved entity array system that will ease the manipulation of large number of entities.
http://www.asantee.net/ethanon/

The next step is to implement spatial hashing for culling and faster collision detection.
...
As I promissed, version 0.7.1 is out:

Changes:

* Spatial hashing implemented for fast culling and also optimizations for the collision detection system.
* New method ETHEntity::AreParticlesOver
* New method ETHEntity::HasShadow
* Now the Scene Editor will only recalculate lightmaps if necessary.

The spatial hashing feature will allow much bigger scenes, faster collision detection and faster lighting.
...
A new stable version is out:

Version features and changes:

* Now it is possible to run the application directly from SciTE by pressing F5.
* Fixed a bug that would make the entities and scenes in the Editor not to be saved when the user clicked the "Save" button.
* Several small bug fixes and adjustments.
* New global functions: GetBucket(vector2) and GetEntitiesFromBucket(vector2, ETHEntityArray@).
* Ethanon Editor: media files will be automatically copied to their right directory if the user tries to open them from other locations.
* Global function SortVerticalEntities removed.
* Entity color bug fixed.
* The debug version of the machine (Ethanon Machine_d.exe) was added to the SDK.
* A new LoadScene overload function has been added: void LoadScene(string fileName, string preLoop, string loop, vector2 bucketSize) to customize bucket size.
* New method: ETHEntity::GetCurrentBucket.
* The Ethanon Editor window size will be automatically readjusted if the system screen dimension is too small.
...
The version 0.7.3 of Ethanon Engine is out. The new version brings a lot of fixes and improvements. The most important ones are the addition of a new entity type ET_LAYERABLE and the implementation of a dynamic plug-in system.

Layerable entities will be drawn and ordered by their own user-defines depth value. Depth values may range between 0 (furthest) and 1 (closest). For instance: an entity whose depth equals 0.5 will always lie behind an entity whose depth equals 0.9. Layerable entities are useful for 2D games that do not use a top-down view, like side scrollers (the landscaping and backdrop images may use depth 0, the tiles may use 0.5, etc). The entity depth may be defined in the entity editor.

So that developers can program their own low level functionalities such as networking, artificial intelligence or custom device input and output, Ethanon Engine may dynamically load DLL's, which will provide them a pointer to the scripting engine object (asIScriptEngine) used by the machine. It may be used to bind new functions, objects and types to the scripting language.

Version features and changes:

* New entity type added: Layerable (ET_LAYERABLE).
* New ETHEntity::Set/GetLayerDepth methods that manipulate layerable entity depth.
* Several safety adjustments and bug fixes.
* Added a DLL-based plug-in system to bind custom functions and objects to AngelScript.
* The executable files were renamed to machine.exe and editor.exe to be more UNIX friendly (cross-platform version is under development).
* Shadow rendering technique was improved.
* New method ETHEntity::HasHalo.
...

This topic is closed to new replies.

Advertisement