background

Posts Tagged ‘Games’

Google Chooses WebGL and Moves O3D to a WebGL Javascript Library

Posted in Shared on May 8th, 2010 by herkulano – Be the first to comment

Google has decided to put weight behind WebGL and stop actively developing O3D as a plugin, rather they will make O3D a Javascript library on top of WebGL. This will focus the 3D plugin development efforts from Google into just WebGL on top of the OpenGL ES 2 spec, which in turn runs in the html5 <canvas> tag.

WebGL is pretty exciting offering browser based OpenGL and hardware rendered graphics. When this becomes mainstream this will change up gaming and interactive on the web immensely. Unity 3D and Flash 3d engines add lots of immersive environments and WebGL will be just as exciting, if all browsers adopt it (canvas/webgl).

At Google, we’re deeply committed to implementing and advancing standards, so as of today, the O3D project is changing direction, evolving from its current plug-in implementation into a JavaScript library that runs on top of WebGL. Users and developers will still be able to download the O3D plug-in and source code for at least one year, but other than a maintenance release, we plan to stop developing O3D as a plug-in and focus on improving WebGL and O3D as a JavaScript library.

About WebGL

WebGL is a cross-platform, royalty-free web standard for a low-level 3D graphics API based on OpenGL ES 2.0, exposed through the HTML5 Canvas element as Document Object Model interfaces. Developers familiar with OpenGL ES 2.0 will recognize WebGL as a Shader-based API using GLSL, with constructs that are semantically similar to those of the underlying OpenGL ES 2.0 API. It stays very close to the OpenGL ES 2.0 specification, with some concessions made for what developers expect out of memory-managed languages such as JavaScript.

WebGL brings plugin-free 3D to the web, implemented right into the browser. Major browser vendors Apple (Safari), Google (Chrome), Mozilla (Firefox), and Opera (Opera) are members of the WebGL Working Group. “It feels like, someone’s missin-ing”


EA faz campanha em código fonte

Posted in Shared on February 9th, 2010 by herkulano – Be the first to comment

Para o lançamento do jogo “Dante’s Inferno”, a Eletronic Arts fez uma campanha bastante original ao exibir seus anúncios no código fonte de sites como o Digg. As imagens são todas feitas em ASCII, exibem personagens do jogo além de uma URL e um código. Os usuários que conseguissem os seis códigos, teriam acesso a wallpapers, posters, concept-art do jogo e músicas relacionadas ao jogo.


Se essa ação é efetiva? Sozinha, provavelmente não mas, se somada a banners ou posts perguntando se “você já viu o código fonte do Kotaku hoje?” até que chama a atenção e gera um boca a boca no nicho interessado em games e no mercado publicitário.

Aparentemente, o time editorial do Kotaku não sabia da ação e também se surpreendeu com ela. Seria mais um bla-bla-bla para aumentar o buzz ou a distância entre o time comercial e o editorial realmente aumentou depois desse projeto?

First sign of WebGL lands in WebKit

Posted in Shared on September 15th, 2009 by herkulano – Be the first to comment

Jeffrey Rosen has taken a look at a preview of WebGL landing in the WebKit project. The demo above is an example of this work (here in HD):

WebGL is basically an initiative to bring 3D graphics into web browsers natively, without having to download any plugins. This is achieved by adding a few things to HTML5, namely, defining a JavaScript binding to OpenGL ES 2.0 and letting you draw things into a 3D context of the canvas element.

It is interesting to compare this low level API to O3D which is a scene graph API from Google (Google also supports WebGL, via the O3D team also, and sees the APIs as complimentary). They are very different APIs taking drastically different approaches. One gives you a new API but a higher level one that may appeal to JS developers more, whilst the other is very familiar to a certain set of developers and would be easier to port work. Ideally, someone will Processing/jQuery-inize WebGL to give it some nice high level love too.

Fun times with 3D and the Web! Great to see WebKit and Gecko doing great things with WebGL already.

Flash Augmented Reality, Made Easier: Open Source FLARManager

Posted in Shared on July 1st, 2009 by herkulano – Be the first to comment

flarmanager

You’ve seen the demos. You like the idea of tracking tags in the real world to create visuals. And now you want to try augmented reality for yourself - and, incidentally, you’re a Flash developer.

Reader Eric Socolofsky writes to share a framework he’s created that makes it much easier to work with the Flash-based, open source FLARToolkit, called FLARManager. Version 0.4 is just released:

http://words.transmote.com/wp/20090618/flarmanager-v04/

FLARManager has a number of features that improve upon the existing work done by FLARToolkit:

  • Building the apps themselves is easier. Fire up the framework with Flex Builder (or Flash, or Eclipse, or FlashDevelop), and you have access to all the libraries you need, so you can start playing more or less out of the box. Hello, world, indeed.
  • You don’t have to rely on Papervision if you don’t want to. Papervision, the faux-3D library for Flash, is included with the distribution. But marker tracking is decoupled from Papervision, so you don’t have to use it if you don’t need it.
  • Better event management. Marker adding, updating, and removal, multiple pattern detection and management, and the like are all extended in FLARManager.
  • Great documentation. Eric has taken the time to read some fantastic getting started tutorials, all accessible from the site above so you can go play.

Now, you wouldn’t pick Flash for speed - that’s not the idea.

This is about the slowest implementation of ARToolkit you’ll find. But you’d use it for compatibility, because of easy deployment to the browser. Speaking of speed, the NyARToolkit Java implementation actually outperforms the original C version. I’m the last person you should talk to about writing efficient, optimized code, but I can tell you that the notion that Java is “slower” than C is simply wrong. There are a great many other, more important variables, and in some cases Java can in fact outperform C. That doesn’t mean that Java is always the right tool for the job any more than C is, though, and in fact because Java’s Garbage Collector and event scheduling aren’t really built for real-time performance, and because “native” code is suited to certain situations, there are in fact times when you wouldn’t want to use Java. Understanding the application is what really matters - and that’s why it’s nice that NyARToolkit and siblings are available for AS3, C#, the mobile Android platform, iPhone, and others.

Eric doesn’t just do this to fool around, either; he works in interactive design for museums, and has what has to be one of the world’s sweetest “day jobs” - working for the legendary Exploratorium. He’s also working with Processing and the wonderful reacTIVision library on a separate project that’s working with tangible table-based interfaces; more on that separately. Thanks, Eric!

If you get interesting work in augmented reality going, let us know. And if you need some inspiration, my current favorite is from our friend Marco Tempest, working with Zach Lieberman in OpenFrameworks on augmented magic.

ODE (Open Dynamics Engine) 3D Physics Engine Running on Flash Player Using Alchemy

Posted in Shared on February 28th, 2009 by herkulano – Be the first to comment

Alchemy is going to shake things up a bit.  As witnessed before from Quake running in flash and now ODE compiled to run in flash using Alchemy (LLVM based). It is an early test but shows what could be possible.

Mihai Pricope has a post with sources on how he got the ODE (Open Dynamics Engine) a great open source physics engine for 3D, running on the AVM2 Flash Player virtual machine.

I’ve took Alchemy for a test and decided to compile ODE (Open Dynamic Engine). Just to add yet another physics engine to the Flash World. It was a hell of a ride but I finally got to produce some bouncing balls :). For a still unknown reason some as 3d libraries have been very slow to render 6 translucent walls and 2 balls. Papervision3D seems to move quite decent.

You can download the ode sources from here. To recompile them do (you need to have the Alchemy environment turned on):

Flash 10 will become mainstream shortly and with that the possibilities of using Alchemy in your projects is becoming a reality for production.  But what specifically can you do with Alchemy, a project that helps to compile C/C++ code into AVM2 capable files?

Alchemy described from Adobe:

With Alchemy, Web application developers can now reuse hundreds of millions of lines of existing open source C and C++ client or server-side code on the Flash Platform.  Alchemy brings the power of high performance C and C++ libraries to Web applications with minimal degradation on AVM2.  The C/C++ code is compiled to ActionScript 3.0 as a SWF or SWC that runs on Adobe Flash Player 10 or Adobe AIR 1.5.

Alchemy is based on the LLVM Low Level Virtual Machine that allows new levels of code translation.  Maybe this can lead to more effective and performing code to run on the iPhone with flash player 10. Or some type of system that allows flash developers to code in AS3 or take projects and get them ready to run on the iPhone much like some of the Java to Cocoa compilation systems and Unity3D using mono to compile down to iPhone capable code.

Unity3D \m/’s – Adobe should buy them.

Posted in Shared on December 23rd, 2008 by herkulano – Be the first to comment

I know it’s been a while since I last posted, and I have a REALLY good reason for it ;)   You see, Andy Zupko had been dropping comments here and there about how he’d wanted to do Unity3D work.  First couple of times I heard him say it, I was thinking “yeah yeah flash master Andy, what’s this unity thing anyway?”

Well, I finally asked him what Unity3D was and he pointed me over to www.unity3d.com and then showed me their Tropical Paradise demo and my jaw began to hit the floor.  This was a web plugin?  holy polygons/lighting/shaders batman!

Tropical Paradise – Terrains, streamed terrainse

With OpenGL and DirectX support, this little web plugin ROCKS.  It’s a complete game development tool that allows you to code in JavaScript, C# and a dialect of Python called Boo.  The JavaScript is strictly typed and compiles to native machine code – it’s just as fast as C# or Boo.  Not to mention 20x’s faster than Flash’s ActionScript.  And for me, getting into Unity took practically ZERO time.  I was up and importing FBX (you can export as FBX from 3D Studio Max) models and practically doing what I do in Papervision3D with very little effort!  In fact, moving some of my classes over to Unity for this game that Andy and I are working was a matter or some simple refactoring to accommodate Unity’s api.

Now, before we start getting totally OHH and AHH over this, let’s take a look at the discussion that’s already on your mind probably at this point in the post:  Why can’t FLASH/ADOBE have this?!?  I know, cause I was thinking the same thing ;)   The answer might be something like “I don’t think there’s a good reason anymore”.  It USED to be a really big discussion about player size.  I remember back on Flash6 beta, I was begging for w3d support since you could use those files in Director at that time, and they were fairly lightweight.  But the argument was around hardware support and player download size.

But check this out:

Flash player download = 5.5mb
Unity3D web player download = 4.5mb

Ding.  Round one over.  The winner?  Unity3D.

Ok, so is that a fair comparison?  No, not really, but in the argument about the player growing in size seems to be greatly reduced from the days of a 700k Flash player plugin download.  I realize that 5.5mb + 4.5mb = a bit more of a struggle to convince people to download, BUT, I’m SURE there’s a conversation that could be had about loading and running SWF’s into Unity3D like Director does.  Yes?  Did I mention Unity3D is cross-platform compatible?  Publish standalone builds for Mac OS X (Universal Binary, or specific, smaller Intel/PPC-only builds) and Windows 2000/XP/Vista – OH and then put it on the web…cause you can.

If that wasn’t enough to sweeten the pot on Adobe buying out Unity3D – Unity3D does iPhone apps with a single click ( watch the Demo Movie of the iPhone development setup – that’ll sell you right there ).  Hmmm I love me some iPhone :)   Not enought??  How about Wii Development?!  BAM!  NOW WHAT?

Terrain, Shaders, Physics, Lighting, Cross-Platform, multi-depolyment option, multi-lingual, Game churning tool!

Have you ever found yourself saying: ” I wish Director used Actionscript – if it did, I’d move right on over to it and develop there!” Well, ok, maybe that’s too drastic and silly, but Unity3D gave me more power than Director and it was extremely easy to get into – the “power” here is that it is realized and made available to *me*.  I’ve had access to Director for nearly 10yrs now, and not once did feel like I could get into it easily.  I realize you can do Javascript now (Lingo was an abomination), but after my bad experiences in the past, I wasn’t willing to get into the the Director mess again.  I saw Unity for 5 minutes and downloaded it instantly. Unity’s IDE rocks – flat out.  It’s fairly easy to understand, and debugging 3D scenes at runtime is awesome.  You can have the scene up top with the game running below and you have access at runtime to really dig through and manipulate all objects and properties at runtime (hmmm… where have I heard that before…XRAY ;)

Unity3D IDE

One of the other nice things is that you can configure TextMate with a Unity3D bundle for editing.

I think I’m a fairly good indication of what *could* happen when other Flashers like me get a hold of Unity3D.  I hope Adobe’s listening ;)

With all of that, combine the fact that SilverLight is working hard to compete with Flash and they have access to DirectX – it won’t be long until Adobe see’s they need a kick-ass solution.  THIS one actually works cross-platform with a ton of speed, easy adoption rate by the development community and a smaller player download size than Flash.  Either they’re already looking at Unity3D as I type this post or they soon will be.

One other thought I had is that, I’m not sure the Flash player is going to keep up or IS keeping up with the abilities of hardware that have been out for a while now.  I can see where they’re going with Pixel Bender etc, but I know I wasn’t the only one disappointed with what came out in FP10 in terms of hardware acceleration etc and so on ( I don’t need to restate what others have already said ).  I think that’s exactly what draws me to Unity3D – total frustration over speed/performance.  With Unity, it was like a massive breath of life for me in terms of developing games and playing in my own time.

Avert Fate – Particles, physics, ragdolls, image effects and custom shaders

So, let’s put our money where our mouth is, shall we?

By now, you know I work for Infrared5 with a ton of great developers.  If you want Flash / Flex / Red5 work done, we can do it. Duh.  But what about iPhone development?  what about serious game development?  What about product/marketing efforts that need more than what the Flash Player can give us in terms of power?  Where would we turn?  Well, we’ve officially added Unity3D and iPhone game developement to the list of services BECAUSE of Unity3D.  Considering that any one of our developers can get up to speed in a matter of an hour or less, it’s a no brainer to expand our service base.  SO, if you’re in the market for iPhone game development or app development, let me know, and I’ll get you in touch with the right people ;)

Given how well many iPhone / iTouch apps are doing in the app store with Apple, I think there’s a bonanza of opportunity there – HUGE.

Ok, so the payoff for even posting this…post, is that I wanted to FINALLY show a few screen shots of a game I’d story boarded 4yrs ago and promised I would produce wayyyyyy back in 2002 (8/16/2002 to be exact) when I released my first Star Wars game – Escape of the Falcon.  I’m not going to show too much, but you guys and gals need to see I’m serious about what I just typed above.

Escape of the Falcon

Original Star Wars game: Escape of the Falcon

Web Version of the Trench Run

Web Version of the Trench Run

And Since Keith was showing off his iPhone Gravity fun, I wouldn’t feel right not sharing since he mentioned a Star Wars game ;)

iPhone Trench Run - low poly trench model

iPhone Trench Run – low poly trench model

I have to thank Andy for getting into Unity though! I don’t know that I would have heard of it or gotten into it if he hadn’t pointed out the obvious to me ;)   To say the least, he’s in hog heaven with real physics, custom shaders and streamed terrains!

I seriously suggest that if you’re into 3D, Gaming and Flash right now, you should try Unity3D.  And yes, I fully expect that I’ll drive SO much traffic their way that they’ll give me a license ;)   Thankfully, IR5 got me one !  LOVE YOU CHRIS/REB/DOMINICK!  LOVE you.  Man love.

And Finally:  Adobe – if you’re reading this, you guys should seriously consider buying out Unity3D.  I can’t say it any more plain than that.  If you don’t, I don’t know how you’ll COMPETE with them.  As soon as they’re able to support running SWF’s in Unity, i’m going to be doing alot more work over there ;)