Archive for the ‘DESIGN’ Category

AS3 Amazing Isometric 3D Alternativa Game Engine Demo

Thursday, October 25th, 2007

Alternativa Game is a leap forward in isometric 3d engines for flash. A gigantic leap…, would you expect this kind of quality of software out of anyone but the Russian Alternativa Game group? Check it out NOW.

The demo runs suprisingly smooth. I had to kick down the quality just a bit to get started but once I did that it was very smooth, full 360 degree turning, texturing levels, render quality, day/night, and many more features. You have to try the day and night, check the lighting coming out of the window…

More from Anton Volkov:

This is technological demoversion of an Alternativa3D Flash engine, which was made within Alternativa MMORPG development. This engine uses Flash player version 9 as a platform, and, as far as we know, works in all full-flash-supporting browsers. Alternativa3D is optimized with upcoming game features in mind, and utilizes some non-trivial solutions to show game graphics quickly.

Main features:

  • Three-dimensional geometry and 3D-sprites. Buildings and landscape are made in a fair 3D, objects with complex geometry — using sprites, including multi-phase ones.
  • Lighting system, including ambient, directional and omni lights. Changing daytime, diffuse and sunlight, automatical “in-corners” shading, dynamic shadows, including sprite shadows.
  • Texture and light quality settings (it is really important without 3D hardware acceleration in Flash).
  • Low processor load (excluding moments of lighting change and camera rotation, which happen not too often and is not critical for the game).

This is on par with Paul Spitzer’s amazing FPS flash engine.

You can follow this amazing development over at the Alternativa Game blog. I suspect quite a bit of interest now that they have thrown it down. Apparently when Anton and the guys of Alternativa throws down, they bring it!

This is only possible in AS3, this would be nothing more than a prototype test in AS2 but in AS3 it is fast enough and much much more capable of building stuff like this.

Deep Linking in Flash – SWFObject and SWFAddress

Thursday, October 25th, 2007

Flash is great, but accessibility can sometimes be a problem if it is not paid attention to. Direct linking, deep linking, back button support, these are very important to wire up in your applications. I am seeing many new RIAs, apps, sites, interactives still not do this and it is quite annoying.

The great thing about the web is that is gave users the ability to control the presentation and the context, from outside the presentation. By allowing users to use the back button and change urls in the address bar this was empowering. Empower your users and ad campaigns to get to different places of your application easily with deep linking, it is required for usability.

But this is hard right? Not really with great tools. What are you waiting for, SWFObject and SWFAddress make up THE platform right now for deep linking, embedding and back button support. These kits have been exhaustively tested and are very compact scripts to help you embed and then provide deep-linking, back button support and direct linking instantaneously almost.

Download SWFObject

Download SWFAddress

Both of these kits are well tested and provide instant small simple components of which to build complex systems on top of. SWFAddress builds on SWFObject tested embedding script and provides the tools you need to get deep linking running in your application in no time.

Note of caution, design implications (architecture design)

When you drive off the URL such as with direct and deep linking in Flash it does change your order of how you handle operations when you have to take into account the URL state. The first thing you have to do is when you receive an onChange event from SWFAddress that the URL has changed, you need to parse it and take action. However if you plan to deep link and provide usability throughout your flash site or app (even in the forms or multistep processes driven by URL) then you need to plan for this event and work this into your architecture for the url handling within the flash framework for your site.

A scenario might be:

  1. User using your flash app
  2. User clicks link or new section of your flash application
  3. INSTEAD of just animating the state in the flash application, you have to just update the section or URL (location.hash in javascript that provides the # name linking allowing the browser to stay put, or in this case SWFAddress.setValue((“/sectionname/page1″)),
  4. THEN the flash app or site is REACTIVE to the URL, reads in “sectionname/page1″ parses it and then animates to sectionname/page1.
  5. Or detect if the change came from the app or the URL directly and handle that differently in the onChange event with a subsystem.

Rather than just animating the app state or changing it, or showing that next photo on the button event, your button event would change the URL, then the flash monitoring the URL would push the onChange event. After that either animate in the next section or take appropriate action per the user requested action.

It isn’t like this for all areas or states of your application but you have to decide what is directly linkable, and when you want a state directly linkable then you have to wire it this way. Obvious choices are navigation items in your site, but they might also be specific cases like a multi-page form wizard that you want to link to step 3 directly, or a movieclip that someone can pass #3m2s to advance the movie by the url. There are many cases where you might want to provide deep linking into your flash application.

I know it sounds complicated? but it really isn’t, just a reversed way of thinking which we will highlight in the future with a tutorial and a fluid flash template. The SWFAddress site has great samples and examples, SWFAddress sets up the onChange handling in these samples and examples of how to do it in AS1, AS2 and AS3 so pick it up.

Download SWFObject

Download SWFAddress

Enable Deep Linking in Flash in 8 lines of code to start with SWFAddress:

From SWFAddress Documentation

1) Insert the SWFAddress script in your page directly after the SWFObject file.


2) Include or import one of the provided ActionScript classes. SWFAddress comes with versions for AS1, AS2 and AS3.3) Write your own navigation logic that will be executed when the address is changed.

SWFAddress.onChange = function()
{
    // Your code goes here.
}

3) Call the SWFAddress setter method from every button or action that requires deep linking.

this.onRelease = function() {
    SWFAddress.setValue('/portfolio/');
}

Check out the Asual blog (makers of SWFAddress) for more on good practices and bad practices with deep linking and more tips.Tips like:

Bad Practice: Address values naming using camelCase or other forms of custom convention

SWFAddress samples clearly define the best naming convention for deep links. Web addresses are case insensitive and the standard is lower case. For readability and Google SEO compatibility reasons the convention ‘my-deep-link’ is more appropriate than ‘myDeepLink’ or ‘My_deep_link’. The format http://domain.com/#/my-deep-link/?param=value is the only one fully compatible with the SWFAddress SEO rewriting.

Silverlight Deep Linking

This is also very simple in Silverlight to deep-link using javacript tools kits for Silverlight 1.0 which is javascript only, on location.hash change using a timer you could call an application method that might change the state or call certain transitions or move Canvases around, hide/show them, load content in, etc. Again, something you want to think about early on.

Other notes

SWFObject 2.0 beta5 is out and after 5 betas hopefully is nearing release

Pick up the code here for SWFObject 2.0

SWFObject 2 (script based) is the name again after a small switch and merge with UFO (standards based) to SWFFix but as Geoff Sterns pointed out, this seems to assume that something is broken.

SWFObject 2.0 is the new name again and let’s hope many more great tools are built on SWFObject 2.0 like SWFAddress which handles direct linking and back button support (using location.hash as most AJAX/RIA apps do to get deep linking and back button support).

Best Of Commercial Flash Papervision3D (yet)

Thursday, June 7th, 2007


Here’s some of the best commercial Papervision3d projects so far
(all commercial papervision I have seen so far has made theFWA):

1)  The Brahma Bus interactive project
       by Russian firm PARK Studios.


Customize your own VW Bus, received theFWA recognition.

2) Eye Project
      by
Takayuki Fukatsu aka fladdict

This is a killer use of pixel color mapping to video overall color.  It has papervision in the archives where it uses some more really well done pixel manipulation effects, received theFWA recognition.

3) The Net Eye interface (based on pv3d sample PaperCloud)
      by Neteye


Nice interface based on a pv3d sample project, received theFWA recognition.

*** The authors of papervision3D also have some of the coolest demos with it as well listed here.

Carlo Ulloa (based on pv3d sample Focus – by far the best)
      by Carlo Ulloa


Papervision3d homepage Shark Demo (wait for it, wait for it…)

Very First Papervision3D Star Wars Game by John Grden.


Also the original shader demos by Ralph Hauwert were killer.

About Vector/Web 3d

Papervision3d created by Carlos Ulloa Matesanz, Ralph Hauwert, and last but not least John Grden has really hit a development and design nerve, along with AS3 finally being ready for primetime. People are really excited about projects like this and it just goes back to my point that in the Vector Wars (Adobe vs Microsoft (haxe making a little noise in dev circles as well)) whoever rolls out cross platform 3d harware rendering in their plug in they will pwn.

Whos the Next Leader of 3d on the Web?

Director has been abandoned for new released until 2008 at least for any 3d updates (if we ever see another version).  But Flash could implement OpenGL (which would lead to it maybe being open one day) and Silverlight would implement DirectX but woudl probably stop at implementing OpenGL.  Flash *could* own with hardware rendering but it opens it up to many more plugins which lead to Director being maxed out at 50% market saturation. 

Anyways, it probably won’t happen but today we have some nice 3d engines in Flash that are fast enough in AS3 with its new shiny VM and there have been some nice commercial successes of the wise early adopters of this technology. Papervision3D, Away 3d (possible merging of code), and Sandy have all helped to add to the buzz around AS3.

UPDATE: Check out this Mech Demo that is making the rounds.  The demo has working hit detection and projectiles from the mech as well as animation on the 3d model.

Silverlight (formerly WPF/E) Officially Launched

Monday, April 16th, 2007

Photo Sharing and Video Hosting at Photobucket

Adobe vs. Microsoft Vector Wars/Development platform heats up

Silverlight, formerly WPF/E, is a cross platform competitor to flash that launched today.  The new name leaves something to be desired but this is a new technology battle over vector application for RIAs, interactives, 3d, games, etc. 

The great thing about Silverlight is the use ot .NET and C# to code the interaction rather than Actionscript 3 in Apollo/Flex/Flash9.  I like both languages but with a .NET language to code in flash this opens up the development of interactive to a whole batch of developers not into Flash.

Tools to Develop with Expression Studio and Silverlight here

One major glaring problem is that Flash won the internet video battle with FLV video but Silverlight only runs windows video.

All in all this is great news in that two of the biggest companies are going to be pushing Flash and Flash-like Silverlight, meaning mush more possible interactive work.  Some are buying into the Microsoft vs. Adobe game but it just means better tools for smart developers that know how to leverage multiple platforms for their solutions.  This usually leads to the best understanding of solution development when technology has your allegiance rather than a specific platform or company. 


*drawlogic is proudly powered by WordPress
Entries (RSS) and Comments (RSS).