Good evening traveler! Vlad here to serve you… and by the way this is our 100th post!
I was just opening the blog admin panel to write this post as someone no need being *cough* Rasmus *cough* mentioned that we were not updating Bruce Ali’s journal… well that is true and the reason for it is that this week was still slow unfortunately but for wonderful reasons, most of them at least.
Hajime is now on Flash Game License for developer viewing only currently which is an important milestone. All objectives related to the Nape wrapper are met and now it’s time to solve the bliting part in order to have gameplay.
Looking back I feel I’m a week late, but with stuff I would need in some weeks already done, so maybe I feel we’re late, but it will payoff later. Right now I don’t know… still… while a lot of people were complaining about their jobs I was coding a box that explodes when it hits the floor… this has to be the best job ever!
Oh… click the stage to restart the simulation.
Vlad here to make a balance of this first week of development. It was my plan to show the power of Nape wrapped in Bold Pixel but it was not possible. So I decided to write a balance, sort of a week post-mortem!
What went right
Nape went right! I couldn’t be happier about it! It seems that Luca didn’t forget anything.
The project is superbly organized. From a coder point of view, everything is accessible and integrated, I managed to have debug, release and testing projects all-in-one (should make a tutorial about that!) in Flash Develop and that really raises my current and future productivity to a whole new level. We’ll see how it works for Marco and David, but I think it will be alright.
What went wrong
Basically, it was a slow start. The physics wrapper is in the “almost there” for a couple of days, which means it is taking a couple of days too long. There is a good side though since objective for the wrapper at this point was to just start it and almost all functionality is present and totally abstracted, so we might squeeze some development time from it in the future.
Both me and Marco had some non-Bruce-Ali stuff to manage… that took some time too, but it was worth it since it would bug us sooner or later, so might as well be sooner!
I really want to move on to the gameplay. That will introduce several systems Marco wants to use and that I want to build ASAP.
On a personal note, I admit I feel somewhat rusty… too much time without developing any larger game project I guess, but I’m hoping (and this is mostly a personal desire) that during next week I can shape up again.
See you again next week!
Nape wrapper is almost wrapped… pun intended, but first, apologies for the missed day 3. While Marco was working on the Hajime trailer I was surfing the waves of wrapping a physics engine. Before moving forward, a big thank you to deltaluca for helping out!
Although not necessarily final, the current wrapper consists of:
This class basically controls the behavior of Nape’s space. Due to its nature, Nape wants simple things to be done quite often, for instance, if you want to change gravity, you need to wake all objects. Core does these small things for you.
Physics entities basically wrap Nape’s bodies. The abstract entity (if you don’t recall how we are using abstract classes in Bold Pixel, check this out) will offer most if not all of the functionality. Although this means that the class is not really abstract, it also means that classes that inherit from this can and should be used as presets. Currently we have a simple box, simple circle, core walls and a explosion.
As time goes by more and more presets will be built, that’s the whole beauty of it!
This class allows for fine lines to appear on screen so we can degub objects positions and so on. Quite useful for blit, not that useful for display objects since it uses Nape’s assignGraphic method. The debug view observes if there is a display object assigned before drawing the debug sprites. This means that if a object is already skinned, it won’t have a debug sprite.
A simple test
The SWF below uses the wrapper exclusively. The walls are a non-skinned PhysicsCoreWalls object. The light wood boxes are also non-skinned so we can see the debug sprite, but the bitmap is handled manualy. The objective of this is to show how blit objects will look if debug sprite is present. The dark wood boxes and the rock circles are a normal body with a assigned graphic, so, no debug sprite is created.
Plans for tomorrow: have a bang with Nape… almost literally! Until then, click the SWF underneath to watch a simple simulation.
Click the SWF above to see the test…