What’s new in 2.0

We are glad to announce that Wave Engine 2.0 (Shark) is out! This release is a giant leap forward in our loved game engine.

New Wave Visual Editor

In August 2014 we began working on the new Wave Visual Editor 2.0 and, today, we are happy to announce the new editor has finally come true.

Available for download on Windows, Linux and Mac OS X platforms:

http://waveengine.net/Downloads

Continue reading What’s new in 2.0

Resources management and new WaveContent class in Wave Engine 2.0

Resources management is an important part during the game development and it becomes tedious when a large amount of it is required in a project. In this article, we show the progress done with Wave Engine and how it will ease task management.

How it works in previous versions

In Wave Engine 1.4.2 and previous versions, game assets can be included to throw the Asset Exporter tool and can be accessed programmatically using the asset path.

Continue reading Resources management and new WaveContent class in Wave Engine 2.0

Wave Engine 2.0 Exporter Command Line Tool

In Wave Engine 2.0 we have updated the Wave Exporter Command Line Tool and added new interesting features. Previously this was only used for exporting the project assets as a post-build event but the new version incorporates the option to export specific assets, directories and an entire project, with new parameter options.

The command line tool is in the WaveExporterCMD.exe, on the Visual Editor directory (For example, in Windows usually is in ‘$(Wave Directory) / v2.0/Tools/VisualEditor/WaveExporterCMD.exe’)

Wave Exporter commands

Wave Exporter Command Line Tool allows performing the following commands:

  • Help
  • Asset
  • Directory
  • Project

Continue reading Wave Engine 2.0 Exporter Command Line Tool

Developing with GTK# + SharpDX + OpenTK

In this article we are going to show the reasons that led us to develop the new Wave Visual Editor on GTK# and the pros and cons of developing a cross-platform UI app with this technology.

When we began to develop the new Wave Visual Editor, we spent a great deal of time investigating different UI application frameworks. The researched technologies were Windows Form, WPF, GTK#, Cocoa# and Xwt.

Continue reading Developing with GTK# + SharpDX + OpenTK

New project template and metafiles on Wave Engine 2.0

In the new Wave Engine 2.0 version we have been working on very important changes on the project template. This changes are designed to improve the portability of Wave Engine game projects. In this article we will go over the changes of the project template and compare them with the version we had on Wave Engine 1.4.2, furthermore we are going to review the new metafiles that all Wave Engine developers must also know to understand Wave Engine process.

Continue reading New project template and metafiles on Wave Engine 2.0

New Wave NuGet Package System

Wave Engine has been releasing several versions since the project started. In addition we allow our community to use our latest pre-release builds. This may cause a little mess when you are dealing with different projects/games with different versions at the same time. Which version should I suggest to install in all my team’s computers? What if I install more than one version at the same time?

To solve those problems we decided to update the Wave Engine default projects by using the NuGet package system.

NuGet

NuGet is a free and open source package manager (initially designed) for Microsoft platforms and provided as a Visual Studio extension. It has gained popularity and it’s also integrated in Xamarin Studio and MonoDevelop.

If you take a glimpse of its web or its IDE extension you will find plenty of different libraries with different versions and dependencies.

Continue reading New Wave NuGet Package System

New Material System on WaveEngine 2.0

One of the main features performed in Wave Engine 2.0 is the rewriting of the Material library. To afford tasks like the New Deferred Rendering, we soon realized that we needed to improve the existing material library.

All materials has been changed to work properly with the new Visual Editor, and work with the New Lighting System, so this is the new Materials list:

  • Standard Material
  • DualTexture Material
  • Environment Material

Continue reading New Material System on WaveEngine 2.0

Using Sprite Sheets with Wave Engine 2.0

As part of the plan of Wave Engine 2.0 to check over its features and following a process to constantly improve them, the new Wave Visual Editor gave us the opportunity to simplify a lot of things and make the development more enjoyable. One of them is the creation and use of sprite sheets textures and animating them.

What is a Sprite Sheet

If you are not familiarized with Sprite Sheets, don’t worry, this article will give you a brief explanation.

First of all we must differentiate between sprite, sprite sheet and animation concepts.

  • Sprite is just a single 2D image, which can be added to our scene.

  • Sprite Sheet is a group of different sprites put together into a one big image. They are necessary to speed up the process of displaying images on the screen because of its important impact on memory and performance. Packing algorithms are really important to keep the image as small as possible.

  • Animation with sprites is using a sprite sheet and changing which sprite is rendered, changing every frame causing the animation illusion.

They are 2 key uses for the sprite sheets in your game or application:

  • Sprite animations. For creating a 2D animated character (or object), so we have to pack all its frames as a way to make it easy to add on your project.
  • Sprite Packaging. Using a sprite sheet with no animation, just to optimize memory and performance. We usually packs a lot of our scene sprites into a sprite sheet, and we use them in our scene, adding a sprite sheet but rendering only one of its sprites.

The new Wave Engine sprite sheet format is designed to satisfy all of them.

Continue reading Using Sprite Sheets with Wave Engine 2.0

New Deferred Rendering System on WaveEngine 2.0

For WaveEngine 2.0 we decided to change our render to allow users to have more control on lighting. The big challenge here was how to offer a better lighting system and still support old mobile devices with OpenGL 2.0.

The render system in WaveEngine 1.4.2 is known in computer graphics as Forward Rendering. It is fast, simple but limited since you cannot use for example more than 4 to 8 lights per object (there are some techniques that try to simulate more lights but do not give good quality), and you need to write a large amount of shaders to support some combinations efficiently.

Continue reading New Deferred Rendering System on WaveEngine 2.0

Wave Engine 2.0 Private Beta program closed

Today the Wave Engine 2.0 private beta program was closed. During the development of the new version it has been very important to have support and feedback from the developer community. So, on January 30 2015 we opened a private beta program. Such allowed any game developer to subscribe for testing previous (alpha and beta) versions.

The welcome was amazing and in few days we had a long developer list prepared to send feedback and help us in reach our goal of creating a new great Engine version, useful to game developers community.

Continue reading Wave Engine 2.0 Private Beta program closed