Posts Tagged ‘GAMEDEV’

Well it has happened, Unity announced WebGL exporting. This was a much needed announcement and our flash man on the inside, UnitZeroOne / Ralph Hauwert of good ol’ Papervision days, helped make it so. Thanks Ralph and Unity team!

This feature is in Unity 5 as a preview just announced but with the impending plugin-pocapyse I am sure it is a major focus at Unity to get to production stage.

The plugin-pocalypse is happening. Both Google Chrome and Mozilla Firefox are taking issue and removing plugin support. Recently I was a bit worried about web exporting and the player/plugin support as NPAPI is being deprecated in favor of PPAPI in Chrome, so Unity, Silverlight and other NPAPI built plugins would have to be rebuilt in PPAPI (unlikely as Unity already maintains NaCL) or another path. Chrome will not allow NPAPI plugins to run at the end of 2014 and already warn each time you use them. Side note: Flash plugin has been updated to PPAPI and will not go away at the end of the year, Unity player won’t either but it may not work in Chrome without explicitly allowing it or at all, still to be seen however they said they will stop supporting NPAPI December 2014 and all NPAPI plugins will no longer work. Mozilla also is fighting against plugins in favor of standards like WebGL so this entirely solves it for Firefox, for Chrome it will still run but slightly slower so there is a transition period.

Mobile really killed the plugin but it opened up standards that allow WebGL to take over. I am happy to see Unity jump on this and bring a better web export that is in line with the best out there currently with asm.js/WebGL and the performance it can bring.

Unity really does add a tons of value if everything just works in WebGL exporting as 2d in WebGL is very mature with lots of supporting platforms, but 3D and stable engines are still lacking. (Until of course Three.js rules the world and may when it is easier to use WebGL in native apps for store like this). Let’s hope browser support for asm.js and Firefox native speeds grows, but most Unity games will run without needing it (2d games, simple games that already run well in WebGL performance ranges). So you can easily see the Unity Player, NaCL exports going away over the next few cycles when WebGL exporting is solid possibly if it isn’t already. Another option is a grace period where Chrome exports need to be NaCL for a while if the WebGL support isn’t ready for primetime by then but from what it looks it may be there (although full support can take some time). The plugin-pocalypse is here but there is a path forward, granted game portals and other sites that host current Unity player content may have alot of work to do this year.

This change couldn’t come soon enough as we had to start thinking about other options for web content, Unity successfully hurdled this one.

There are tons of other great things in Unity 5 (currently up for pre-order) and will be out later this year, but WebGL and “plugin-less” exporting is the driver on this version and we are bought in for the next round.

Unity 5.0 Announced Features

The aforementioned “Early Access” to WebGL support meaning no plugins required in compatible browsers

64-bit CPU support

Real-Time Global Illumination — the over-simplified version: the lighting system used by games like Battlefield 4 and Eve Online (a system called “Enlighten“) for their more advanced lighting tricks is now built into Unity.

Light baking previews — Light mapping can take a while because every little tweak required a complete rebake. Light maps can now be previewed in real-time.

Unity Cloud — Remember the built-in ad solution that Unity announced around the middle of last year? That’ll launch with Unity 5.

New audio system Both more efficient and more powerful. Unity 5.0 has a proper audio mixing board to help developers tweak the way things sound in different in-game environments.

Nvidia PhysX 3.3 While Unity has used Nvidia’s physics engine for years, the version built into Unity 4.0 has been outdated for a while now. 5.0 taps PhysX 3.3, which is up to 2x as fast.

Unity 5 will probably be available later in the year and may launch around Q3/Q4, can’t wait to play with the WebGL exporter. Here’s hoping it is solid by the end of the year.

An interesting/awesome project that is getting momentum is Lime + OpenFL.

Lime (Light Media Engine) is an abstraction layer that makes it simple to go cross-platform with only one codebase; without the compromise of relying upon a scripting language or a virtual machine.

Lime is a lower level cross platform toolkit that uses Haxe to target multiple platforms. OpenFL uses it to make a very similar API to Flash much like the origins of Haxe itself. Lime wraps WebGL, OpenGL/ES and more to get started quickly with the boilerplate for each platform much like Cocos2D-x and other cross platform toolkits.

Lime currently supports the following platforms:

Windows

Mac

Linux

iOS

Android

BlackBerry

Tizen

Emscripten

HTML5

Haxe has been a cross platform toolkit targeting many platforms from one codebase since its inception. The timing of mobile, web gaming, WebGL/OpenGL/ES, apps and the subsequent demands for cross platform codebases + toolkits to be productive (Unity, Cocos2D-x, MonoGame, etc) suit to Haxe’s strengths. Lime and Haxe fit that well and it looks to be a great start that includes: very fun base platform, easy syntax and js/as3 like, lower level Lime OpenGL access, higher level OpenFL, native access when needed easily and targeting all worthy platforms including deeper ones like Blackberry and Windows. Just like Cocos2D-x and others you can do more natively on the device and it gives you the control of a custom engine with the rails of a community, definitely check it out.

There are tons of javascript engines out there that are partial or full game engines for javascript and html. Choosing one is quite difficult so Breakouts is there to help you compare with a common game ‘Breakout’ across all your favorites and some you might not know.

Many other great features like source control support (text-based assets), realtime shadows and NavMeshes are now mostly available in free versions. Text based assets is the biggest helper when working with teams that use Unity Basic for assets or shared repos for basic/pro versions.

New platforms

Unity 4.2 comes with three new platforms: Windows Phone 8, Windows Store apps and BlackBerry 10. That’s right, we’ve doubled the number of mobile platforms Unity supports! Now it’s up to you guys to create new games and port existing titles to these platforms so even more people can benefit from your creative talents.

In Unity 4.2, all users of the free version of Unity can publish to any mobile platform they wish, be it Windows Phone 8, Windows Store, iOS, Android or BlackBerry 10 without it costing a dime. In addition, Unity Pro users can use the Windows Store Pro deployment option (which includes the Windows Phone 8 and Windows Store apps platforms) absolutely free of charge.

I like the moves to free for all mobile platforms for basic and the Windows Phone and Apps Pro upgrades for free for Unity Pro users (Blackberry 10 Pro upgrade still is $1500). I was hoping over time the Asset Store and a lower subscription would emerge and the ecosystem would grow. The Windows addition for free is great for Microsoft’s platforms growing like iOS and Android did as Unity is a big push on game content to those stores/markets.

Note that the official Android version does not support ES3 yet. So to test it you should install ES3 drivers directly from the GPU makers (e.g. Qualcomm).Platform switching, player building and asset importing can now be cancelled! How cool is that?

Platform Switching

Platform switching, player building and asset importing can now be cancelled! How cool is that?

There is a revolution going on in game consoles. It is a new micro console movement that is driven by the openness of mobile + casual markets/stores and self-publishing that have disrupted handheld gaming. That is now about set to disrupt the living room and game console markets.

Apple TV

Apple TV has not yet officially announced apps/games for Apple TV other than AirPlay but that is coming when Apple TV launches the SDK. Largely this most likely will be a push type of platform where you have your tablet or phone/pod device to flick or push games and apps onto the big screen. Then your device becomes a remote or gamepad. Apple TV will also be able to download these apps much like iTunes but it will largely be driven by the hardware (tablets and handheld (iPhones/iPods)).

The people briefed on the matter said Google is reacting in part to expectations that rival Apple will launch a video game console as part of its next Apple TV product release.

Self-Publishing / App store Models

Self-publishing is a large reason indies/small-medium studios are flourishing and these devices will continue the disruption of the game industry. Mobile, web + open desktop games will spill into the TV in droves. Limiting publisher control by allowing self-publishing will sell lots of hardware and games, bigger economies always sell more hardware and games.

Whether it’s making games or distributing them, the focus for Valve going forward is going to be how it can provide the framework for its customers to be entertained, and to make entertainment. Games are goods and services that are part of a large economy. For Newell, the next step is to expand that economy.

“Economies get better the bigger they are,” Gabe Newell

Big Consoles React to Mobile Openness

The new big consoles in Sony PS4, Nintendo WiiU and the XBox One are also launching this year or have launched (WiiU). The smart ones are allowing self-publishing as that will grow their games and fun factor by allowing indies, small and medium sized companies to play again. So far Microsoft is the only company not embracing the open/self-publish model that will sell more hardware and software, strange considering they are about developers, developers, developers and were one of the first to allow indies on the platform (albeit in a flawed way). Both Apple, Microsoft and possibly Google are the only companies that really have the hardware, software (OS) and the ability to publish games to handheld (phones/pods/tablets), desktop OS (OSX + Windows) and now consoles (soon Apple TV and XBox). But only Apple is embracing openness across all, Google will also hopefully not duplicating the Google+ games limited market debacle. Let’s hope Microsoft changes tune again on XBox One and allows self-publishing instead of only approved developers and let the market decide on good games.

“I was really happy that when mobile came along with the more ‘pure’ games, they didn’t have to be a $50 game that had man-centuries in them,” Carmack tells Ars Technica. “You can have these small things that cost people a couple bucks.”

“I don’t have a lot of free time and I don’t have 50 hours for Skyrim. That’s not to take anything away from the massive titles, but it’s great to have this broad spectrum of gaming,” Carmack added.

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.

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.

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.

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!

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.

cocos2d is a great objective-c engine for iOS development (and Mac development). It has it’s limitations but for small 2d based games with physics or platformers with sprites it rocks. It has made it to 1.0 and many games are made with it on the Appstore. Unity and Cocos2D make up a good portion of the games in terms of engines used on the Apple Appstore for small to midsize game studios and indies (2500+ games are made with cocos2d).

cocos3d

cocos2d is getting a 3d extension in cocos3d for using 3d mesh/models etc. Currently it only imports POD models but this could be good for smaller isometric 3d games or 2d using 3d models. It is early so this will take some time to mature but good news for improving engine performance needed to handle 3d.

This could easily become the most popular/used 3d engine made with objective-c as cocos2d has done with 2d… there aren’t many pure objective-c game engines. The one downfall is multi-platform even though Objective-C is fun. Unless it is solely a iOS or Mac title then going with a multi-platform engine or a custom C++ engine and using Android NDK and an Objective-C wrapper on iOS is best for port economics and performance. That can also be used as desktop and other platforms this way. But for iOS development cocos2D is great.

cocos3d Features

Some of the key features of cocos3d are highlighted in the following list:

Seamless integration with cocos2d. Rendering of all 3D model objects occurs within a special cocos2d layer, which fits seamlessly into the cocos2d node hierarchy, allowing 2D nodes such as controls, labels, and health bars to be drawn under, over, or beside 3D model objects.

Pluggable loading framework for 3D models exported from familiar 3D editors such as Blender, 3ds Max orCheetah3D, or through industry standard 3D object files such as Collada or PowerVR POD, or even from your own customized object file formats.

Imported 3D models can include animation sequences.

3D model objects can be arranged in sophisticated structural assemblies, allowing child objects to be moved and oriented relative to their parent structure.

3D models, cameras, and lighting can be manipulated and animated using familiar cocos2dCCActions, allowing you to quickly and easily control the dynamics of your 3D world, in a familiar, and easy-to-use programming paradigm.

3D objects can be covered with dynamic materials and textures to create rich, realistic imagery.

*drawlogic is authored by Ryan Christensen of *drawlabs and *drawcode, both dedicated to taking ideas to ship doing entertainment focused web, mobile and desktop game and interactive development projects.