Holidays are coming

Posted: 12 July, 2013 in News

Hello everyone, the holidays are coming with new projects and ideas for SmoothStep2D. First of all, you must know that I’m doing a game! I don’t know when this game will be finished, or even if the final version will be implemented in javascript, today it’s a prototype that I implemented really fast thanks to SmoothStep2D, and at the same time, doing a project like this, make me know about some bug corrections, and possible improvements that can be added to SmoothStep2D Framework. There are at least three important pending tasks that I want to plan at some point in the future, and if possible, find someone that helps me:

– First, remove the multiplayer layer from SmoothStep2D core and develop it as a separate project/plug-in, that can even be used with other frameworks. This way a lot of unused code will be removed from the framework, not only for non-multiplayer games, there is a default implementation for serialization, unserialization and state interpolation in some Built-in game entities (Quad, Sprite, Container), and in a 99% of cases, you will override this default implementation by your own to optimize the information you send in each package. More important, in a 100% of cases, you will hate to send large JSON strings thru the WebSocket, and that’s another change in the multiplayer protocol, it must use Binary data (ArrayBuffer) instead of JSON strings. Providing this functionality in various ways other than the current “real time scene state snapshot interpolation”, will be also good for example, in turn based games, where user actions and scene state doesn’t need to be updated continuously thru the WebSocket.

– Continuing with the topic of removing unused code, the entire box2d library is embedded into SmoothStep2D, and this functionality claims to be in a plug-in, cause not every game need those realistic physics. There are no dependencies between SmoothStep2D collision detection utilities and box2d, so it can be completely removed and the classes that use it, can be presented as a plug-in. An addition to this change could be provide an interface to hook box2d events, right now the ss2d wrappers for box2d only let you emulate realistic rigid body physics and create a single joint to move it with the mouse or the finger. You need to extend or even override those wrappers with box2d if you want callbacks for collisions or other box2d events, so, an interface to facilitate this task or make it easy to extend and create those event listeners will be a good feature for sure.

– Last but not least, the current implementation for ss2d.SkeletalSprite must be updated with the generic javascript runtime provided by Esoteric Softwre. The current implementation was done from scratch based on the Spine specification and built on top of SmoothStep2D scene objects. In fact, ss2d.SkeletalSprite it’s a “mini scene”, cause the requirements for bone tree transformation are the same that SmoothStep2D scene already provide. Using the official runtime we gain some missed features like “curved” interpolation (right now, only linear interpolations are implemented). This implementation doesn’t require a lot of design decisions, in fact it’s only a matter of time.

For sure I will not be able to do all this changes in Holidays, and as I said, I expect to find people interested in actively contribute to the project. I’m focused on the game project and the needed improvements in SmoothStep2D to make it run as smooth as possible, so, the framework will be updated and improved anyway.

For the ones interested in what other people is doing with the framework, there is a Japanese guy that has been doing things with SmoothStep2D, you can find a demo of a space ships game in his repository here and the blog entry about his experience with SmoothStep2D here.

Thanks to the people that are talking about the framework in his blogs, and that are making suggestions and reporting bugs via mail, remember that you can also report those things via GitHub Issues panel, letting others know about your ideas and contributions.

I have added two new sections in the user guide about audio playback and resource loading with SmoothStep2D. I will try to update the user guide in the next two weeks adding the sections about property animation, and the rigid body component (physics), closing this way the core functionalities part of the guide.

There is still some work to do before start documenting the advanced features, it’s required to implement a script to build the lib on Windows, and the communication interface must be redesigned to match more realistic needs, other than simple demos, probably using typed ArrayBuffers.

See how to add an skeletal animation to your scene and interact with it using player input.

Video  —  Posted: 5 May, 2013 in Documentation

Talk about SmoothStep2D at BarcelonaJS

Posted: 27 April, 2013 in News

bcnjslogoNext Thursday i will do a talk about SmoothStep2D at the BarcelonaJS monthly meetup. If you are interested, the talk will consist in an introduction about the project philosophy and it’s features, and if we have enought time, a little live coding of how to load and interact with a 2D skeletal model created with Spine.

See you at the BarcelonaJS meetup!

The SmoothStep2d user guide has been updated with two new sections: Reel Sprites and Skeletal Sprites. Skeletal sprites let you create skeletal animations with Spine software and use it in your scene, you can also interact with this objects like with any other from SmoothStep2D, moving them according to the player input, the state of other objects or whatever you want.

guy0

SmoothStep2D Blog

Posted: 9 April, 2013 in News

The SmoothStep2D official blog it’s now open, here I will post about upcoming changes and how to use new features of the framework. It is also a place where you can find links to download the library, documentation, showcases and access to the githup repository. Check the Download and Support sections for that.

I hope you enjoy using SmoothStep2D in the same way I enjoy programming it, and remember that this is an open source project looking for contributors. If you want to know more about SmoothStep2D check the About SS2D section.