Archive for the ‘TECHNOLOGY’ Category
cocos2d-x is the natural evolution of the cocos2d-iphone engine to C++ and it is stable and producing multiplatform games.
cocos2d-iphone is a great Objective-C game engine (and the first really) that began as a python engine called cocos2d and was ported to Objective-C + iOS early on in the iPhone SDK days. Arguably Unity and cocos2d are the two biggest indie engines on the App store. Cocos2D is a very simple engine and coming from Flash development many of the concepts are similar (i.e. Sprite, Actions/easing, Layers/Scenes (although slightly different), etc). But getting your Objective-C game to Android and other platforms is not a fun task. There are other options like andengine for android from cocos2d port but each port only gets you so far as you still have two codebases for one game on iOS and Android.
Unity obviously can open up platforms for you but cocos2D-x can also do that for 2D games across iOS, Android, Blackberry Playbook, Windows, Linux and more! This is possible because like oolong engine and other custom multiplatform engines for mobile the core is in C++ with presentation view wrappers/stubs in Objective-C++/C for iOS, Java/C++/NDK for Android, etc. The list of games shows that it is stable and a well treaded engine including games like Hero Academy from Robot Entertainment.
cocos2D-x even has a port of cocos to C#/XNA for Windows Phone development using all the classes you know and love from cocos2d. That is actually pretty sweet to have similar logic to reach Windows Phone (Unity and others bypass because there is no native access by developers sadly still, must, use, XNA — strange considering Unity pushes C# development quite heavily but I digress).
drawlogic originally mentioned cocos2d-x over a year ago in a post about cocos2d-javascript just in an ‘other ports’ category but it has really come along and is quite stable as the game lists are showing. Take it for a spin if you need a cross platform 2D game! If I need to work on cocos2D games I would definitely go with the C++/Objective-C++ engine since it is now stable and gets you many platforms, I also still like developing in C++ which is very common in games for performance and multiplatform performance especially.
- cocos2d-x downloads
- cocos2d-xna downloads
- cocos2d-iphone
- the original cocos2d from sweet python
- list of cocos2d-x games
- list of cocos2d-iphone games
Other mentions
- Unity
- andengine – cocos2d based android 2d engine
- oolongengine (C++ ios engine)
Unity 3.5 was released and is a game changer even for Unity, download it now!. There are so many great new features that have already made development faster and cool features to help bring your games to Flash from Unity !
Workflow Improvements
Since I have been using Unity fulltime pretty much on games like SupaSupaCross for SupaSupa Games (pick up a copy at Apple, Amazon or Google for your devices!) and Kimi Raikkonnen IceOne Racing for 24mas while at Impossible Interactive from my *drawlabs game studio, Unity has addressed some major trouble points when doing a full scale multiplatform rollout to mobile (iOS + Android), web and desktop.
Switching Platforms
One major problem was switching platforms and rebuilding the asset cache. Unity now has an Asset Cache server that will minimize library reimports so that it will be easy to switch platforms in minutes. I can attest that our projects towards the end were really painful switching platforms, no kidding 45+ minutes. Having that removed is oh so nice when you have 5+ projects that run on all platforms. The horror of accidentally selecting the wrong platform while you have to wait 45 minutes for it to convert one direction and then back is over. We actually ended having to have the projects on different machines and making two projects hooked to source control that were set to iOS and one to Android to help minimize this.
Occlusion Culling + Lightmapping
Unity updated and replaced the occlusion culling system for speed and better occlusion generation, taking the time down orders of magnitude. This version also is more precise and you can take the time to do detailed occlusion during development more often.
Lightmapping probes is also a very nice technique to integrate to get what looks like dynamic lights without having dynamic lights and the cost associated.
Source Control for Everyone
A big problem with the pipeline before was having artists work for a day or two and need Unity but they only had the indie version and thus could not participate in our Mercurial and git repositories. Now even the indie version has source control support (still with .meta files though which is a necessary evil for now — still going to have straggling metas when developers/artists remove/add one they didn’t edit).
Text Based Serialization of Scenes and Prefabs!
This one is epic, I loathe binary formats of old which turn files into blackboxes of repository filling chunks, now you can choose to serialize your scenes and prefabs in text which they have chosen very wisely as YAML. Perfect use case for YAML and now we can have 2+ people work on the same scene and not end up hating one another when the other has to overwrite all changes since they used to be all binary.
The removal of binary files in game development is very needed and one of the most difficult things to shake with all game engines I deal with. Binary files for development are bad… YAML, JSON, even XML is a better way so you can see what changed on each update not just replace the file.
At this point I love Unity for making my day faster…

That isn’t even the really cool stuff like Native Client Support and Flash Player Exporting!
Native Client Support
I feel this could be big if NaCL is adopted widely, this also helps with the Chrome Web store and again taking your game to places that individual development of the engine to do so would be non economical. Unity knows when to even overlook their own WebPlayer in favor of other players such as Flash and NaCL from Google.
Flash Player Export
note: (Still preview and will require extra license when final)
The big daddy setup to scrape up all the Flash developers. You can now develop Flash games inUnity using a better programming platform that Adobe was just too protective of Flash old guard to pursue 4 years ago, at least they are now. Flash 11 to Stage3D exporting to lower level Flash was a very smart move for Adobe at this point to keep evolving Flash. However with them dropping mobile player Flash’s future is still a little shaky as it loses developer mind share, typically that is fatal. One way to keep great game and interactive developers is what they are doing with Stage3D and Flash 11. Unity is very smart to jump in here and it is a great opportunity for both Adobe and Unity.

2 big pieces missing from the Flash version are terrain export and use of non Flash classes like WWW class. Unfortunately since this is the only supported Unity WWW class that works across all platforms well this may require some #if defs to route around web/service calls and rewriting web and or networking classes in AS3.
Since this is the first version and has such great potential for overtaking Flash gaming on the web with more native and lower level hardware access, watch this space to grow and be a game changer.
Flash features that are in and out of the current iteration
Supported
- Lightmapping
- Occlusion culling
- Basic scripting
- Editor scripting (JavaScript / C# / Boo). Note: for JavaScript, use #pragma strict.
- Custom shaders
- Animation / skinning
- Basic audio features, such as AudioSource / AudioListener
- Physics
- Navigation meshes
- Baked substance textures
- PlayerPrefs
- UnityGUI, except for text input
- Realtime shadows
Limited support – features with potential issues
- Image Effects. Some work, some don’t.
- Not all parts of .NET scripting work (lambda expressions and LINQ aren’t supported, for example)
- GUIText will have a dramatic impact on performance
- The new Particle System (Shuriken) works, but scripts that use the Shuriken API will fail to convert to flash
Not supported
- Unity profiler
- Asset bundles
- Text input in UnityGUI
- WWW classes. Note that you can write your own ActionScript that uses Adobe networking APIs.
- Raknet networking (if you need networking, you can write it in Action Script 3 directly, using flash API)
- Terrain
- Cloth
- Using VertexLit shaders in combination with:
- Specular highlights
- Spot lights
- Emissive material color- Advanced audio features, such as audio effects. Also pitch manipulation is not supported.
- Deferred rendering
- AnimationEvents that carry arguments
More on Unity 3.5
Unity is fast. Unity 3.5 preview is available with exporting to Flash 3D/Stage3D available to test.
Unity has been very quick to add this to their editor and platform. I wasn’t sure how much Flash 3D would get traction if not for UDK and Unity support, as they also work so well on mobile devices. As everyone knows there is an immense mobile disruption and Adobe recently pulled mobile Flash player support. It is possible this will be resurrected as just the Flash Player when/if mobile ever really supports plugins in browsers well, current hardware and technology may be too early – the plugin may have also gone the way of the app on mobile. There is always a need for advancement to standards though, html5 is largely influenced by Flash and others. I think there will always be a need for technologies that are innovating ahead of standards, which leads to better standards later. Plugins are yet to exist on mobile in a useful way in favor of native apps, due to mobile device hardware limitations in the current generation. There will probably always be a need of some plugins for web games and interactives. And here Unity and Flash have been strong in that area, coming together to tackle 3D and hardware rendering is a great match.
Unity exporting to Flash Stage3D will provide a spark for the Flash Player 11 over WebGL as there is still some benefits to a proprietary solution to plugins currently. Internet Explorer is still holding out on WebGL and Flash 11 will be able to enter the IE moat. This export option allows another way to get your game on the web in a browser in addition to the Unity Player when exporting from the Unity tools. Game companies like Zynga, Playfish/EA, etc will probably be more apt to use the Flash 3D exported version rather than Unity Player only due to market saturation/penetration. I hope Unity Player support continues or possibly Unity gets bought by Flash and Unity becomes Flash. The integration could be good, but also bad for Unity if they don’t keep their player going so they don’t have to wait for the Flash Player standard from Adobe.
There is an immense market waiting for hardware accelerated games in the browser even for 2D games from core to social games, all of them need to move lots of sprites, logic and game renders around that require performance. Unity to Flash 3D has a slight edge over WebGL in that is is a single player and compiled assets, and supported by the best 3D/2D/game/interactive editor out there in terms of production pipeline. Flash Player is still compiled and a bit faster than WebGL scripted but there is still limitations on what you can do without a compiled app to run; interpreted code still adds heavy weight and delays to the 33ms needed on each frame for 30fps. An example of performance using Box2D across native to scripted rendering.
Unity has given us all a present to play with for the holidays, I am sure it will take some time to get right. But having this tool to iterate on and seeing what Flash 11 Stage3D can do as an export target will be fun.
There is even a contest that you can enter over the holidays to win some prizes and the entries are judged by none other than UnitZeroOne aka Ralph Hauwert, as well as Lucas Meijer and Unity’s CEO David David Helgason.
Unity 3.5 Preview
Thank you Microsoft. You have helped to make it easier to produce and convince clients and collegues to use html5 with your latest decision.
Since you are updating Internet Explorer in automatic updates to IE9 currently and hopefully for the future versions. Developing for the web became better as #html5 with canvas goodness is now market ready! (in a nearer term rather than a year or two possibly – still some time to propagate).

Good news, everyone! Microsoft has decided that the time has come to make sure that all users of Internet Explorer are using the most current version possible. To accomplish that goal, they’re turning on automatic updates.
Yes, Internet Explorer patches and new major versions are already available via Windows Update. But to move from one version to the next, it’s never been a fully automatic process. There’s a separate install window that appears for installing, say, Internet Explorer 9. For many users, the additional steps required were often enough to prevent them from installing a new version.
To clients, developers can now say that IE9 and up is the best target since Microsoft themselves are updating the browser in Automatic Updates for security and a better experience. They can tell clients that is is acceptable to build in html5 with canvas and with less tedium in making things work for IE7 and IE8, less middle man proxy technologies. Microsoft will also be less of a bad name for developers stemming from IE6 and lagged, slow upgrading software progress and users. For many clients that were risky on projects this wasn’t an issue, but deciding what tech to use and convincing others with so much old IE out there was difficult. Hopefully this helps soon.
Ryan Gavin, Microsoft’s senior director for Internet Explorer, pointed out several benefits. The overall security of the Windows user community will be improved as outdated browsers are replaced, developers can focus their attention on building sites using modern web code, and those who surf with IE will be able to enjoy the full Beauty of the Web.
Browsers that silently update like Chrome are the best model, but automatic software updates are also good. html5 is on soon when this kicks in across the world, it seems Microsoft plans to do this at different times around the world.
And so from now on, Internet Explorer will quietly update itself just as Windows does. Starting in January, users in Australia and Brazil will be the begin receiving automatic IE updates. Microsoft will then gradually extend coverage to other parts of the world as time goes on.
This news comes on the same day that Chrome 15 is now the most used browser in the world. IE9 could take the top spot for a while if all IE versions move to IE9 as IE is still 40% of the world share in browsers for all versions.
Ship it! html5 has entered the arena officially. And so it begins…
[source from geek.com + microsoft]
It just got unreal! Unreal Engine 3 can export to Flash 11 with Stage3D as an export platform. This is amazing news for game development and provides a strong competitor to Unity for high end gaming experiences that run in Flash.

The news was announced at MAX by Tim Sweeney:
On Tuesday during the Adobe Max conference in L.A., Epic CEO, founder and technical director Tim Sweeney announced UE3 support for Adobe’s Flash player.
…
Industry veteran Sweeney showed a live demonstration of UE3 running inside the recently-released Adobe Flash 11 during his keynote at the conference, using the PC, Xbox 360 and PlayStation 3 game Unreal Tournament 3 as an example.
…
UE3 works well thanks to Flash 11′s hardware accelerated, programmable graphics pipeline, Adobe said. Flash is now “capable of running triple-A gaming content authored for high-end platforms using the industry’s latest tools and technologies,” the company said in a statement.
UE3 licensees will be able to access new Flash features, and more information is available at the engine’s official website.
Hopefully this will be included in the UDK soon if not in next months release.
But to calm the hype a bit, the reality is, it costs much more to develop a high end game in Unreal 3 compared to current web games but this will open up a whole new high end market and allow game developers to add another platform to export to. Game sites will become full on consoles.
Next-gen consoles for XBOX and Playstation aren’t being updated until 2013-14, that seems a long way away and they just might not exist as we know them when that time comes.
The next console just might be the web on any device, TV, pad, hardware consoles… Unreal and Epic are preparing for this multi-platform game development world along with Unity, Flash and others.
Interactive on the web is changing at a rapid clip. The path of the next wave of ineractive and gaming on the web is beginning to materialize.
WebGL, Canvas grouped with html5 are final and providing new landscapes to draw on and new ways to make levels to beat. Most browsers and platforms are supporting this technology. Tools like Three.js make that very fun. Mozilla Firefox, Chrome and Safari are including WebGL + canvas and mostly hardware accelerated, making Javascript an even more powerful glue of the web.
Adobe is going low level with Flash ‘Molehill’ 3D and hardware acceleration platform that companies like Unity will be including as an export target.
Microsoft has finally laid out their plans. Silverlight is alive with Silverlight 5 / 3D powered by XNA (any surprise? guess it isn’t dead) and hardware acceleration throughout Internet Explorer, this appears to be Microsoft’s version of the future.
Plugins like Flash, Unity, Silverlight, others will continue to push the bounds cross platform where standards cement the technology behind it for a platform to reach the next innovative step.
Mobile has blown up the scene with native and low-level focus, causing web platforms to also go low level for more performance thanks to Apple and now Android. Native languages like C, C++ and Objective-C came roaring back as the hardware was reset a bit back to late 90s/early 2000s processor and graphics power. However with mobile and cpu cost on platform as service system, native will stay more over the coming years.
Games, interactive and entertainment projects and apps are going to be even more fun. New opportunities all over the place. Game on!
Microsoft has finally laid out their plans. Silverlight is alive with Silverlight 5 / 3D powered by XNA (any surprise? guess it isn’t dead) and hardware acceleration throughout Internet Explorer for canvas/html5 focus apparently aloongside Silverlight for deeper graphical needs or changes. It was originally outlined back in April at MIX 2011, but it shows their path and answer to WebGL/Canvas and standards for interactive and game development on the web (plus I have been busy on two titles, one for iOS and one for both iOS and Android, gotta say it is nice to see how fast your app gets posted to Android store compared to iOS…).

There are some nice examples of toolkits being developed such as Balder 3D and JigLibX pulled from this experiment.
- Pick it up and try Silverlight 5 with 3D/XNA out
- Silverlight 5 Beta Developer Runtime for Windows
- Silverlight 5 Beta Developer Runtime for Mac
- Silverlight 5 Beta SDK
- WCF RIA Services for Silverlight 5 Beta
We might have to wait a while for Moonlight to catch up on this one, guess that would take an OpenGL rendering layer like WebGL?…:)
Making 2D games in Unity is getting better with products like RageSpline for making vector like splines to create objects (texturable or color), by far one of the best additions to the Unity Asset Store. The Unity Asset store is a great new place for inspiring products that are excellent, RageSpline shows why.
$50 in the Unity Asset Store but worth it, I hope it is expanded to import many vector formats.
The author is Juha Kiili is the author of this awesome piece of tech and it is seemingly doing well. This could be a full fledged 2d toolkit easily with many import/export capabilities.
Features of RageSpline
- Creating 2D meshes and lines with bézier-based splines.
- Outlining with single color, variable width per control point + natural/sharp switch per point.
- Solid one color fills.
- Linear gradient fills with two colors and GUI-adjustable scale, offset position and rotation.
- Emboss styling with two colors and GUI-adjustable adjustable scale, rotation and smoothness variable.
- Texturing support with GUI-adjustable scale, offset and rotation.
- Automatic physics generator.
- Adjustable vertex count for outline, fill, emboss and physics.
- Example game included: RageCar.
Other Asset Store must haves like EZ-GUI and Sprite Manager make the 2D game creation experience in Unity very focused on the game development and design with performance handled.
Khronos announced today that WebGL, the great OpenGL web hope, is now officially final for the 1.0 version. Khronos announced this today via the GDC and their website, it was also mentioned at Gamasutra.

WebGL already sees great support in numerous engines including my favorite Three.js from the infamous mr. doob.
There is already a thriving middleware ecosystem around WebGL to provide a wide diversity of Web developers the ability to easily create compelling 3D content for WebGL-enabled browsers. These tools include: C3DL, CopperLicht , EnergizeGL, GammaJS, GLGE, GTW, O3D, OSG.JS, SceneJS, SpiderGL, TDL, Three.js and X3DOM. Links to these authoring tools and WebGL demos can be found at www.khronos.org/webgl/wiki/Main_Page.
It will take some time for WebGL to propagate. It is ready and on in Chrome and Firefox by default in betas. Safari it can be enabled via app parameter. IE and MIcrosoft have yet to chime in, will we see DirectX for the web or adoption of WebGL. Time will tell… Until then Unity and Flash with the 3d api Molehill are forging ahead. I am sure we will see an export to WebGL for Unity down the line but there are still some interesting script execution speed issues that compiled code in Flash and Unity Web Player will still be faster on.
So Khronos isn’t stopping at WebGL, they are now tackling WebCL or OpenCL for the web just like WebGL is OpenGL for the web (currently at the OpenGL ES 2.0 level which is nice because that is big on mobile — mobile and web games are at about the same level).
Khronos is also today announcing the formation of the WebCL™ working group to explore defining a JavaScript binding to the Khronos OpenCL™ standard for heterogeneous parallel computing. WebCL creates the potential to harness GPU and multi-core CPU parallel processing from a Web browser, enabling significant acceleration of applications such as image and video processing and advanced physics for WebGL games.
At the Flash Games Summit today there was good news from Unity and Adobe about the Flash 3D API called Molehill. Adobe’s Flash 3D API Molehill public preview was released and Unity announced they will be adding export support for it.
New features available in the current Incubator build include:
- “Molehill” 3D APIs for Flash Player and AIR — A new set of low-level, GPU-accelerated 3D APIs that enable advanced 3D experiences across devices through the Adobe Flash Platform runtimes.
- Cubic Bezier Curves — Using the cubicCurveTo drawing API, developers can easily create cubic Beziers without requiring custom ActionScript code.
This is really a new era of browser based game development support that is going to be very exciting. It was announced at the Flash Games Summit by Thibault Imbert (Adobe Product Manager) and Lee Brimelow (Adobe Platform Evangelist) after they explained and showed examples to the audience of what “Molehill” could do for flash games.
Thibault has a list of available Molehill enabled 3D engines already:
Also a test of hardware accelerated molehill vs software rendered flash:
- Check 2D animation with the display list (check your CPU usage)
- Check 2D animation with Molehill (check your CPU usage)






