Posts Tagged ‘release’

Wednesday, November 14th, 2012

Unity 4 is live, very fast after public beta.

Flash export, Linux export, DirectX 11, animation system and loads of cleanup needed are included.

Lots of great things in there but a huge one is namespaces in MonoBehaviours.

Scripting: MonoBehaviours can now be inside namespaces.

Previous to 4, you could have namespaces in dlls/libs you created with the overhead of managing separate dll builds for each platform define, but within the unity project this was not possible.  Finally, classes with the same name can be in the same project under different namespaces.  Yes their can now be two GameController or UIButton classes if they are in multi game loader and you don’t have to rename them GameShooterController and UIShooterButton, just put them in a namespace, welcome to the future of the past! I prototype lots of games and have a prototype project with helpers that I test many prototypes in, I hate having to name them so specific or devise hierarchies and base classes that facilitate that during prototyping or make a new project for similar naming, just want to see the gameplay and iterate fast.  This actually helps that big time. With the asset store and many products using the same class names this is a welcome big change that is lost in all the other new features.

Another great feature is supporting Android extra OBB apk files for storage on larger games. (This can also be used in Unity 3.5 via an asset store plugin from Unity.

Android: Support for APK Expansion Files (OBBs) – effectively enabling applications larger than 50Mb in the Google Play Store.

I don’t see Shuriken full particle system scaling in editor or runtime yet.  Shuriken particle system added in 3.5 is much nicer but scaling the systems is more difficult, not all properties were exposed to do that easily outside of the editor (like scaling at runtime). There is a Particle Scaler asset on the store that scales all the internals nicely but having this as a feature is needed yesterday. One project I worked on with loaded asset bundles at different scales had this problem and caused lots of rework scaling up the systems to work at the correct scale in the base app using the bundles.

Unity is a great system  and there are lots of great changes in Unity 4, cleanup being some of the best of them. It has flaws but it makes up for it in intense help on shipping and getting to all platforms. It is a mammoth task to democratize game development and support so many platforms and developer types.

Pick it up!  I have to figure out the best time to upgrade and move all current projects to it.  I guess the holiday tasks are identified.

Wednesday, February 29th, 2012

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

Tuesday, September 28th, 2010

Unity 3 has been released.  It was released to the world late yesterday.  I have been using it for a few beta releases and it is very nice and many great improvements.  One awesome improvement is the occlusion culling was ported from iPhone to all Unity builds. Other notable features are a unified editor for all platforms, deferrered rendering and more.

Grab Unity 3 and take a spin.

Occlusion Culling Demo

Unity 3 Feature – Occlusion Culling with Umbra from Unity3D on Vimeo.

Friday, July 10th, 2009

Silverlight 3 has been released a day early.

Microsoft has released Silverlight 3 to the web a day earlier than expected. You can go ahead and grab Silverlight 3 RTW build 3.0.40624.0 (4.69MB) from Microsoft.com/Silverlight. Version 3 supports Windows Internet Explorer 6/7/8, Firefox 2/3, and Safari 3/4. In addition, the Silverlight 3 SDK (9.5MB) and the Silverlight 3 Tools (32.2MB) have been posted on the Microsoft Download Center. (arstechnica)

As Silverlight versions go it is quite impressive and pretty much a complete solution now including desktop save support and full set of tools for RIA development (early versions were only Javascript or had limited controls libraries).

Granted there are lots of years of gain that Flash has on Silverlight but the path that Silverlight it following leads right to Flash.  Hopefully this will lead to more innovation on both sides (they might need it with Google Wave pushing html5 <canvas>).

One very nice element of Silverlight since it has been released at verison 1.0 is the HD video support.  It has gotten better with each release.  This release has smooth streaming support that is pretty impressive for web video.

Interestingly they chose the open source Blender Foundation project Bug Buck Bunny to demonstrate the smooth streaming feature. Ryan Rea has a bit of analysis on how well the video plays across a quad core and memory compared to flash hd video.

More on the Silverlight 3 new features here and here.

Roy Schestowitz plays the flip side and calls this a ‘silver-lie’ released and has lots to say about the Silverlight 3 release and even using Big Buck Bunny to demo it. He states a true fact that up til now lots of companies have abandoned Silverlight in favor of Flash (mlb, nyt etc).  It is still used at Netflix but that has an XBOX deal to play Netflixon xbox360.

Flash didn’t really get good until version 4.  Typically software is a real version at version 3, that is when most software has the goals and ambitions of 1.0 fully complete and integrated.  We shall see how things play out but I still think Silverlight has a long way to go in winning over developers, myself included, but competition is never a bad thing when you are wanting to see innovation.

Tuesday, March 25th, 2008

I was able to download the demo and it is in the store and on Adobe’s site. The new AGEIA™ PhysX™  physics engine and some sort of updated 3D with hardware rendering is nice.

But, Director is like the Rodney Dangerfield of products at Adobe.  Everywhere you have to dig for it, it doesn’t even have updated marketing in most places, the shockwave player link is still from 2002 etc.  I wish that Adobe would support it more, open it up, allow better IDEs, integrate ES4 based Actionscript 3 or 4 into it and keep the 3d market that shockwave supports moving along.

Maybe they will give Director more love but if they don’t allow for some community input and work on the platform like Flex and Flash have thrived on, well they might just lose that piece of the market (3d gaming, hardware).

First impression is the fonts do look much better.  Unicode support is so far so good and I haven’t had a chance to dig into the AEGIS PhysX engine yet but that looks very very fun.

For instance here is a Physics Engine call that creates a rigid body terrain


//JavaScript Syntax
var objTerrain= member("PhysicsWorld").createTerrain("myterrain",terrainDesc,position,orientation,1,1,1);

Or some raycasting:


//JavaScript Syntax
var lstraycast = member("PhysicsWorld").rayCastAll (vector(10,0,0),vector(0,0,1));
for(i = 1; i < = lstraycast.count ; i++)
{
    raycstEntry = lstraycast[i];
    put("Name:" + raycstEntry[1].name);
    put"Contact Point:" & raycstEntry[2]);
    put("Contact Normal:" & raycstEntry[3]);
    put("Distance:" & raycstEntry[4]);
}

I use the Javascript source simply because it is much more usable to me. Unfortunately the docs are only partially converted to Javascript.  Lingo is pretty close to it though but it scares people off.

What Adobe needs to do is port into Flash the ability to use Shockwave3D (hardware rendering for 3d), AEGIS PhysX, would that not blow up big time or what?