Adobe MAX 2011: Day Two
MAX is Adobe’s annual conference, where they announce their new products and acquisitions, and give us all an idea of their current strategy. Last year they announced Flash’s 3D API, codenamed Molehill (now called Stage3D); AIR for TV; Edge, their new HTML5 animation tool; and more. There were also puppets. This year, long-time Activetuts+ writer Franci Zidar is at the event and will be filling us in on the details and sharing lots of photos. The second day’s keynote was aimed at developers – that means Flash and HTML5 news. Read on to find out more…
The Future of Flash
Flash is taking on a whole new life. With new technologies like HTML5 and CSS3 and advances in JavaScript, a lot of rich media delivery is going to be taken over by these standards. Adobe unveiled a demo of Unreal Tournament 3 working in Flash inside the browser (see below) and talked extensively about Flash as a gaming platform on all devices in 2D and 3D. The idea is to make Flash platform the “gaming console for the web”.


Editor’s note: Mouse-lock at last, hooray!
Flash’s Stage3D (previously codenamed Molehill – check out an introductory tutorial here) provides GPU acceleration for 3D and now through Starling Framework for 2D graphics within Flash Player.

The next iteration of Flash Professional (codenamed Ruben) will also let you create sprite sheets from vector animations to get GPU accelerated animations and provide some other GPU acceleration focused improvements.
Check out Unreal Tournament running in the Flash Player (sadly not ported to AS3!)
Other Technologies
A lot of the focus at MAX this year was on alternative technologies to Flash for rich media delivery. My guess is that you are already better off building sites requiring simple multimedia experiences with these other web standards since you’ll have a much easier job deploying them for mobile devices or they might, to some extent, work on them by default.

Adobe has also proposed two new features for CSS called CSS Regions and CSS Shaders. Regions allow the creation of scalable text regions of any shape that let text flow through or around them depending on screen size and Shaders create great looking effects and transitions for HTML elements.
Here’s some more info on CSS Shaders, including videos of them in action: http://www.adobe.com/devnet/html5/articles/css-shaders.html

While visually more intensive web experiences would still require Flash to be built in reasonable time, since the workflows are already established, and perform well at runtime, with software like Adobe Edge and HTML5 and JavaScript rendering getting better each month this could also be changing soon. Having played a bit with Edge and seeing some demonstrations it really seems this software is currently heading in the direction of a mix between After Effects and Flash. It’s still in preview stage and has limited scripting capabilities but in some ways it is quite similar to Flash.
The Future
The web is shifting again. New devices are changing the landscape for web deployment and there are a bunch of new solutions to deliver the content across all of them. HTML5 has been the buzz word for quite a while now, and while it does provide some welcome improvements and new features what is really helping developers deliver content across devices either online or offline is a combination of CSS, JavaScript and HTML. There are now many solutions for creating online content and offline apps and websites but the combination of CSS, JavaScript and HTML allows you to apply an already mastered set of skills to any of these methods of deployment. You could learn native development for Android, iOS, Windows Phone and all the other mobile platforms but that is unrealistic from the perspective of a freelance developer and hard even for a medium sized company.

So for anyone who finds this fragmented solution too much to handle, you can resort to new technologies like jQuery Mobile, PhoneGap, jQTouch, CSS3, HTML5 and others. All of these are incorporated in the new Dreamweaver so you can build websites for multiple platforms test them at different resolutions and orientations (landscape and portrait) and even deploy applications directly to Android or iOS.

PhoneGap is especially interesting since it allows developers to tap into native extensions of all major mobile platforms giving you access to things like geolocation, accelerometer, camera, dialer and many other phone features that were until now only available to native applications. Using PhoneGap it’s now easier than ever to build cross platform apps and websites that take full advantage of the mobile capabilities all with JavaScript, CSS and HTML.
Get Your Hands on the New Toys

For more information about everything announced on Day Two – as well as download links for AIR 3 and Flex 4.6 pre-release – head to http://adobe.com/go/maxday2
View full post on Activetuts+

MAX is Adobe’s annual conference, where they announce their new products and acquisitions, and give us all an idea of their current strategy. Last year they announced Flash’s 3D API, codenamed Molehill (now called Stage3D); AIR for TV; Edge, their new HTML5 animation tool; and more. There were also puppets. This year, long-time Activetuts+ writer Franci Zidar is at the event and will be filling us in on the details and sharing lots of photos. The second day’s keynote was aimed at developers – that means Flash and HTML5 news. Read on to find out more…
The Future of Flash
Flash is taking on a whole new life. With new technologies like HTML5 and CSS3 and advances in JavaScript, a lot of rich media delivery is going to be taken over by these standards. Adobe unveiled a demo of Unreal Tournament 3 working in Flash inside the browser (see below) and talked extensively about Flash as a gaming platform on all devices in 2D and 3D. The idea is to make Flash platform the “gaming console for the web”.
Editor’s note: Mouse-lock at last, hooray!
Flash’s Stage3D (previously codenamed Molehill – check out an introductory tutorial here) provides GPU acceleration for 3D and now through Starling Framework for 2D graphics within Flash Player.
The next iteration of Flash Professional (codenamed Ruben) will also let you create sprite sheets from vector animations to get GPU accelerated animations and provide some other GPU acceleration focused improvements.
Check out Unreal Tournament running in the Flash Player (sadly not ported to AS3!)
Other Technologies
A lot of the focus at MAX this year was on alternative technologies to Flash for rich media delivery. My guess is that you are already better off building sites requiring simple multimedia experiences with these other web standards since you’ll have a much easier job deploying them for mobile devices or they might, to some extent, work on them by default.
Adobe has also proposed two new features for CSS called CSS Regions and CSS Shaders. Regions allow the creation of scalable text regions of any shape that let text flow through or around them depending on screen size and Shaders create great looking effects and transitions for HTML elements.
Here’s some more info on CSS Shaders, including videos of them in action: http://www.adobe.com/devnet/html5/articles/css-shaders.html
While visually more intensive web experiences would still require Flash to be built in reasonable time, since the workflows are already established, and perform well at runtime, with software like Adobe Edge and HTML5 and JavaScript rendering getting better each month this could also be changing soon. Having played a bit with Edge and seeing some demonstrations it really seems this software is currently heading in the direction of a mix between After Effects and Flash. It’s still in preview stage and has limited scripting capabilities but in some ways it is quite similar to Flash.
The Future
The web is shifting again. New devices are changing the landscape for web deployment and there are a bunch of new solutions to deliver the content across all of them. HTML5 has been the buzz word for quite a while now, and while it does provide some welcome improvements and new features what is really helping developers deliver content across devices either online or offline is a combination of CSS, JavaScript and HTML. There are now many solutions for creating online content and offline apps and websites but the combination of CSS, JavaScript and HTML allows you to apply an already mastered set of skills to any of these methods of deployment. You could learn native development for Android, iOS, Windows Phone and all the other mobile platforms but that is unrealistic from the perspective of a freelance developer and hard even for a medium sized company.
So for anyone who finds this fragmented solution too much to handle, you can resort to new technologies like jQuery Mobile, PhoneGap, jQTouch, CSS3, HTML5 and others. All of these are incorporated in the new Dreamweaver so you can build websites for multiple platforms test them at different resolutions and orientations (landscape and portrait) and even deploy applications directly to Android or iOS.
PhoneGap is especially interesting since it allows developers to tap into native extensions of all major mobile platforms giving you access to things like geolocation, accelerometer, camera, dialer and many other phone features that were until now only available to native applications. Using PhoneGap it’s now easier than ever to build cross platform apps and websites that take full advantage of the mobile capabilities all with JavaScript, CSS and HTML.
Get Your Hands on the New Toys
For more information about everything announced on Day Two – as well as download links for AIR 3 and Flex 4.6 pre-release – head to http://adobe.com/go/maxday2
Good news, everyone. Everybody who works with arrays and vectors – so, all developers – will enjoy the new opportunities: since the late August 2011 build of Flash, Realaxy ActionScript Editor (RASE) supports the new Collections AS3 language extension. In this post we’ll show you what it can do.
A collection is a general term that means, roughly, “a bunch of similarly typed objects that are grouped together”. Building a collection in ActionScript 3.0 can be done by using arrays, vectors, dictionaries, or objects; they each have some of the makings of a perfect concept. However, if you have even a basic acquaintance with any modern and trendy language like Scala, Groovy or Ruby, you’ll definitely feel the lack of a functional approach in the pure AS3-way of processing Collections.
The Collections Language
Well, let’s introduce the Collections AS3 language extension that is available in RASE Beta 10, build 8177+.
A complete vocabulary of methods supplemented with samples is available here: one for lists and another one for maps (these are images; scroll them down, they are really HUGE).
In order to not get lost in this jungle, let’s take a look at some simple use cases. The first true-life sample demonstrates the conciseness of collection code:
We create a
list, which can contain onlyintvalues.where”).select”).select”).listand trace the result.Where,select,selectMany– these operations are easy to use when you’re building a query.Operations like
all,any,containsAll, andcontainswork perfectly in conditional phrases (“if” statements, etc).To modify a list, we have a wide range of weapons:
remove,removeAll,removeWhere,removeHead,removeTail, etc.For those persons who definitely have an eye for perversion we have prepared a bunch of operations like
foldLeft/foldRight,reduceLeft/reduceRight,intersect, etc.Simply said, there are plenty of operations suited to every fancy and almost every task. In some operations you just transmit one or more values to it, in some other ones you add a closure.
Lists and Maps
The collection language is intentionally simple. It supports two types:
ListandMap.Mapis quite similar to a trivialDictionarythat holds some useful methods –keys,values,containsKey,containsValue(useful for checks and conditions),pushMap(to merge values),removeKey,removeValue, etc.Maps are smart and fail-safe. They won’t let you add an incorrect key or value:
Maps work well with any lists and queries.
There are also conversion operations that can be utilized to facilitate embedding the new Collections extensions to your actual pure-ActionScript project. Just take a trivial array (or vector) and apply the
.toListoperation. After processing a list (or a map) you can always convert it back to the old-school AS3 style using.toArrayor.toVector.A Real World Example
To demonstrate how to get started with these collections, here’s a step-by-step guide based on a trivial situation. Suppose your task is to create a “suggested users” list for a Twitter account. We have to process a very long collection of hundreds or thousands of objects, to retrieve a short list (that match a number of criteria) and to apply some operation on every item in that short list.
We’ll not turn our attention to interacting with Twitter API, since our goal is only to show how to get started with the Collections language and to show advantages of a functional approach in working with collections in AS3.
Step 1: Creating a Project
Create a new project from scratch and name it Collections. If this is your first experience with the editor, we recommend you to read the Realaxy HelloWord Tutorial and/or Realaxy Overview For Beginners.
Step 2: Creating a Class (Beginning)
Now we need to create three classes to store the data structure:
User,TwitterAccountandMessage. We can do it from theGeneratemenu, which is available through right-clicking the code or pressing Ctrl+N.Step 3: Creating a Class (In Progress)
Type the class name in a pop-up box.
Step 4: Creating a Class (Adding Fields)
Jump to the
<<Field>>position and hitEnter.Step 5: Creating a Class (More Fields)
Add the following fields:
username,surnameandid. The code will look like this:Step 6: Adding Getters and Setters
Invoke the Ctrl+N menu again.
Step 7: Still Adding Getters and Setters
A new pop-up window will appear. Select all newly created fields and press OK.
Step 8: Adding a
.toString()MethodDon’t forget to add a text presentation to the
Userclass. Add.toString()method — item 5 from the Ctrl-N menu (same as on screenshot to Step 2 and 6).Step 9: Code Overview
The
Userclass is ready. Its code will look like this:Step 10: TwitterAccount and Message Classes
Using the same process as Steps 2-9 you have to create
TwitterAccountandMessageclasses.NB: To avoid a type error (like the one shown in the image above), you must import the
Collectionslanguage from the Ctrl+L menu:NB2: The
TwitterAccountandMessageclasses should be cross-linked. In order for this to happen, after importing theCollectionslanguage, you have to create theMessageclass, jump back to theTwitterAccountclass and complete the line that caused an error.NB3: Don’t forget to add getters, setters and a
.toString()method.Step 11: Main()
Now it’s time to write some code in
Main(). First, we need to add some fields.NB: Use the Smart Complete keyboard shortcut (Ctrl-Shift-Space) to save a little time while typing these phrases:
Since our tutorial is just a demo that shows a how to work with collections in AS3, we’ll skip the part that refers how to get this data from Twitter API.
Let’s just imagine that we already have:
followers,followedBefore,candidatesLongList,candidatesShortList, which is empty at the moment.The third collection can be extremly large, containing hundreds or even thousands of items. Our goal is to apply some sophisticated query and thus to cut off the needless items according to Buonarotti’s principle “I saw the angel in the marble and carved until I set him free.”
Step 12: Building the Query
Jump to
Main()constructor, and enter thecandidatesLongListwith its method “where” (hit Ctrl-Space to use autocompletion like in the screenshot below):The following phrase will appear:
Don’t be surprised, it’s just a
Closure, and “it” is just its parameter.Closures (a small lyrical digression)
A closure is, in fact, the same anonymous function, but with a number of small differences.
First, the
Closurehas a very concise syntax. Parameters don’t have a type declaration (to be more precise, they have it, but such declarations are hidden). The Closure has a special behavior – “the last statement is a return value&rdquo – which means you should use “1;” (in the last line) instead of “return 1;”Second, it has a special view for single-line closures – in such a closure a semi-colon on the end is omitted (for two reasons: readability and brevity).
Unlike an anonymous function (and also as a counter to the aforementioned
ArraysandVectors), a closure is type safe. That means that autocomplete and type-checking will work in closures.To conclude, a
Closureis a kind of function on steroids. It has a lot of tasty features that helps us to write everything quick and concise.Step 13: Building the Query
Let’s return to our unfinished closure. Add some code that will implement our “rules”. This code will return a cut-down version of
candidatesLongListthat doesn’t include any of our followers:Then add another criterion:
Theoretically, the Collections language allows you to nest a lot of different conditions one by one. Let’s add one more criterion (include users that have “Flash”, “ActionScript” or “Adobe” in their Biography field) using a regular expression:
Step 14: Obtaining the Result
Select the whole query and press Ctrl-Alt-V. A new variable will be introduced.
Now we are able to do whatever we want:
We would then copy the contents of
resultintocandidatesShortList.Step 15: Generating Pure AS3 Code
Build a module with Ctrl-F9 and take a look at the Output window. The generated pure AS3 code of
Main()will look like this:package com.example{ import com.realaxy.actionScript.collections.util.CollectionsLanguageUtil; import flash.display.Sprite; public class Main extends Sprite { private var followers : Array = new Array() ; private var followedBefore : Array = new Array() ; private var candidatesLongList : Array = new Array() ; private var candidatesShortList : Array = new Array() ; public function Main(){ //exclude our followers and users followed by us before //include people with "Flash", "ActionScript" and "Adobe" in their bio //add them all to the recommendations shortlist this.candidatesShortList = CollectionsLanguageUtil.where(CollectionsLanguageUtil.where(candidatesLongList, function ( n : TwitterAccount, stops : Object ) : Boolean { return !CollectionsLanguageUtil.any(followers, function ( f : TwitterAccount, stops : Object ) : Boolean { return f.user.id != n.user.id ; }, this, false) && !CollectionsLanguageUtil.any(followedBefore, function ( f : TwitterAccount, stops : Object ) : Boolean { return f.user.id != n.user.id ; }, this, false); }, this, false), function ( it : TwitterAccount, stops : Object ) : Boolean { return /Flash|ActionScript|Adobe/.test(it.bio) ; }, this, false); var names : Array = CollectionsLanguageUtil.select(candidatesShortList, function ( it : TwitterAccount, stops : Object ) : String { return it.user.username + ", " + it.user.surname ; }, this, false); CollectionsLanguageUtil.forEach(names, function ( m : String, stops : Object ) : void { //TODO: do something with 'm' }, this, false); } } }Seems a little bit unreadable, eh? Especially comparing with our DSL code:
Conclusion
The new Collections language extension allows you to:
MAX is Adobe’s annual conference, where they announce their new products and acquisitions, and give us all an idea of their current strategy. Last year they announced Flash’s 3D API, codenamed Molehill (now called Stage3D); AIR for TV; Edge, their new HTML5 animation tool; and more. There were also puppets. This year, long-time Activetuts+ writer Franci Zidar is at the event and will be filling us in on the details and sharing lots of photos. The first day’s keynote was all about the Creative side of things. Read on to find out more…
Creative Cloud and Touch Apps
This year Adobe is shifting its focus to mobile and cloud solutions. The first and the main Adobe keynote address was absent of any mention of Flash and very little if anything was mentioned about its other desktop web authoring software solutions. In fact, yesterday’s main focus was on Adobe’s new Creative Cloud and its new mobile touch applications.
The big news was that Adobe had just acquired TypeKit and PhoneGap and integrated TypeKit into its online service as a part of the Creative Cloud. This will allow its users to license any font from TypeKit library and use it in their projects by embedding the font from their server; to do this, you’ll pay an annual fee instead of having to buy each font for your project. Adobe applications will also be a part of the Creative Cloud service and you will be able to download and use the applications by buying the annual subscription early next year, which is supposed to be “very reasonable”. The applications will be updated directly in the cloud, so you’ll no longer have to wait for (and buy) the full release to receive any bigger updates, as the software will be directly updated through the cloud.
Adobe is now focusing on cloud solutions where all your work and applications can be gathered in one place. The creative community part of the cloud services will offer some interesting features, like sharing your work, including working files which can be previewed, with extracted Kuler color palettes, displayed and hidden layers in Photoshop files, identified fonts from InDesign files and so on. We’ll have to wait and see but the cloud services do seem promising.
Mobile touch applications were another focus of yesterday’s keynote. New applications presented were Photoshop Touch, Proto, Debut, Collage, Carousel and Kuler, all for tablet or mobile. You can check their features at Adobe mobile apps site. Proto was the only one I felt could be actually useful; it’s an application for prototyping websites, with a range of supported gestures. I could easily see myself sitting with a client prototyping the website on the fly on my tablet device. Using Photoshop, Kuler or any other design tool on the tablet… not so much, although the news that Adobe is collaborating with Samsung on creating pressure-sensitive stylus capable tablets is also quite interesting.
What About Flash?
There was a general sense after the keynote address that Adobe is not willing to commit to Flash as its platform of choice and is avoiding the issue while turning to alternative solutions for mobile deployment through PhoneGap and its other digital publishing solutions.
The Community Lounge at MAX
Flash and Molehill are going to be a part of today’s keynote, but is it too little too late. Molehill, with its Stage3D API that takes advantage of the GPU, could allow better 3D graphics inside the browser without installing another plugin (like Unity), but it won’t solve Flash’s performance problems on mobile devices. Flash is going to have a hard time staying in the game without a bigger commitment from Adobe; it could become a niche platform for gaming if the tools to create immersive experiences in CSS3, JavaScript and HTML like Adobe Edge continue to become more accessible, and Flash’s performance and accessibility issues for mobile and low CPU devices are not solved.
Come back tomorrow to find out what’s announced in this keynote, or tune in to it live at 10am PDT on the MAX website.
Each month, we bring together a selection of the best tutorials and articles from across the whole Tuts+ network. Whether you’d like to read the top posts from your favourite site, or would like to start learning something completely new, this is the best place to start!
Psdtuts+ — Photoshop Tutorials
Create Animal Textured Typography
In this tutorial we are going to create fun, realistic, animal textured, 3D typography in Photoshop using CS5′s Repousse tool. Let’s get started!
Visit Article
Create a Detailed User Interface for an iPad Application
In this tutorial we will show you how to design a detailed user interface for an audio-themed iPad application. We will design this application using a retina display resolution and will make use of Photoshop’s shape layers and layer styles. Let’s get started!
Visit Article
How to Apply Light, Shading, and Shadow to Round Objects
Photoshop is an excellent tool for manipulating photographs but it can also be used as a means to create stunning digital art. This tutorial is part of a 25-part video tutorial series demonstrating everything you will need to know to start producing digital art in Photoshop. Digital Art for Beginners, by Adobe Certified Expert and Instructor, Martin Perhiniak will begin by teaching you how to draw in Photoshop. At the conclusion of this series you will know all you need to produce your own concept art and matte paintings in Photoshop.
Visit Article
Nettuts+ — Web Development Tutorials
Ways you can be Sure you’ve Married a Geek
Everyone knows that when you get married, your life changes. When Jeffrey and I recently tied the knot, we were advised by the older and wiser that the first year of marriage is the hardest. But so far, it has been fantastic. Dont get me wrong; just because married life is proving to be bliss does not mean there havent been any of those aforementioned changes. Recently, I realized that the ’married life changes” that I am adjusting to are all coincidentally related to the fact that Jeffrey is a web developer, a.k.a Geek.
Visit Article
Is Conference Pricing Out of Control?
You’ve surely experienced the letdown of registering for a conference, only to find that it costs $1,000 (or more) to attend (not including travel expenses). Isn’t that a bit extreme for two days worth of training? Then again, is that the only way the conference organizers can cover the high cost of planning such an event? Let’s see…
Visit Article
The Best Way to Learn JavaScript
Learning something new is scary. For me, the biggest issue with picking up a new skill is that I don’t know what I don’t know. Given that, it’s often useful to find a plan for learning whatever you’re interested in. That’s what this post is: your blueprint, your roadmap, your plan of action for learning JavaScript! You don’t have to worry about finding the best resources, sorting out the bad ones, and figuring out what to learn next. It’s all here. Just follow it, step by step.
Visit Article
Vectortuts+ — Illustrator Tutorials
Free, Vintage Vector, Medieval Heraldry Graphics
It’s free vector graphics time, my favorite hour of the day! We’ve roundup up a truckload of heraldry graphics available in EPS, SVG, AI and other vector formats for free download. These medieval packs are composed of emblems, crests, shields, dragons, knights, helms, armor, swords, flourishes, banners, and all sorts of vintage design elements. Whether you’re designing a stylish brochure for your favorite client or your personal portfolio website, these graphics could add the perfect stylish touch your project is needing.
Visit Article
Top Tips and Secrets from Talented Vector Artists
Today we share top tips and secrets from talented vector artists, which can help add insight into their processes and can give us the advice we need to improve in our own artwork.
Visit Article
Playing with Stationery Art Brushes and the Live Paint Bucket
In today’s tutorial I’m going to show you how to create some line art style stationery art brushes. You’ll then learn to combine them with the Live Paint Bucket to create a typography piece.
Visit Article
Webdesigntuts+ — Web Design Tutorials
A Beginner’s Guide to Successful Conversion
Converting visitors into valuable users is arguably the most fundamental element of managing a website. We’re going to take a closer look at conversion, discuss what it is, cover some common pitfalls, and tackle improving your site’s conversion rates.
Visit Article
Sign-in or Register: Form Design From Scratch (Day 1)
We deal with web forms all the time; when we log in to YouTube, Facebook, or any other web service, we have to get through a login or sign up process. Often this can be difficult because some forms are too long, or too cluttered. We’re going to build a stylish, straightforward login form, and today we’ll be looking at the Photoshop side of things.
Visit Article
Weekend Freebie! The Aureus Landing Page (PSD)
I originally designed the Aureus Landing Page for ThemeForest. However, I changed my mind and decided to share it with all of you guys instead – I love giving back to the design community!
Visit Article
Phototuts+ — Photography Tutorials
More than 60 Amazing Examples of Black & White Portraiture
The life of the monochrome portrait contains a rich history dating back to the birth of photography itself. Upon the invention of the camera, it was the portrait that took precedence. The opportunity to capture fellow man in a moment in time on film was finally a reality. So when put into context, appreciating the continued importance and wide scale exploitation of black and white portraiture today, it’s clear that the art is not lost and has survived the test of time.
Visit Article
Travel Portraits: Methods for Making a Connection
If you love to travel and take photographs, you have likely come across the dilemma of what to do when photographing people. Most see it as a catch 22. If you ask permission (as I believe is proper) then the person is not being ‘natural’ as they were before you asked, doing whatever it was that caught your eye. If you snap away, you risk being seen as rude and offending your subject which, for one reason or another, you thought of highly enough to take a photo. So what to do?
Visit Article
FlashMasters: Off-Camera Flash
Off-camera flash holds a tremendous amount of potential. With the ability to remove the flash from the same axis as the camera, off-camera lighting gives a photographer more creative options than ever before. Today, we’re going to learn about getting started with off-camera flash.
Visit Article
Cgtuts+ — Computer Graphics Tutorials
The Warrior” – Part 1
In this tutorial you’ll go through the entire character creation pipeline using Zbrush, Maya, UVLayout and Photoshop. We’ll go through the whole process of creating the “Warrior” character including texturing and rendering with Metalray. This tutorial is divided into 8 parts and in the first part, we’ll start blocking out the character in Zbrush using Zspheres.
Visit Article
Create A Realistic Candle & Flame In 3D Studio Max
In this tutorial, regular author Chandan Kumar will show you how to create a realistic candle and flame in 3d Studio Max. The candle’s flame will be made entirely in 3dsmax using built-in tools, rather then expensive third-party plugins! Let’s take a look!
Visit Article
An Introduction To Vue 9 xStream – Day 1
When you first start using a new software package, you’re a little bit lost. As you don’t really know where to start, what the options and parameters stand for, what the buttons do, etc… This tutorial series was made to introduce you to the best software for creating Natural 3D Environments, that software is: Vue 9 xStream. We’ll take a in-depth look of every aspect of Vue 9, starting with the user interface and working up to very complex environments!
Visit Article
Aetuts+ — After Effects Tutorials
Kaleidoscope Of Dancing Veggies Using Echospace – Day 1
Today’s tutorial is on how to create a colorful motion graphic piece meant for a food show or cooking program. With the often forgotten Trapcode Echospace you can turn as many photos as you want into one cheerful looking animation. I feel this two part tutorial has principles that could carry over into endless unique results. I hope you enjoy the tut!
Visit Article
A Look At Hollywood’s Biggest VFX – Part 1
This is a brief introduction of some of the most unbelievable Visual Effects in Hollywood’s biggest movies. This “Part 1″ will describe the making of movies: 2012, Avatar, Alice in Wonderland and The Lord of the Rings.
Visit Article
Walking Through 3d Text – AE Premium
In today’s tutorial we’re going show how to create the super popular effect of having a person walk right through a 3d logo or text. We’ll cover shooting tips, matchmoving principles, and a whole lot of other helpful info to pull this shot off right! We’ll also show you a way to create this effect without using ANY expensive 3rd party plug-ins!
Visit Article
Audiotuts+ — Audio & Production Tutorials
Dubstep for Beginners – Part 1: The Drums
With three equally important focal points, this tutorial series will initiate you each of these areas of dubstep and how to start producing your own grooves. This first tutorial will focus around the drum beats and what makes the dubstep beats unique. Get ready for some head nodding grooves!
Visit Article
How to Get The Most Out of Your Drum Loops
I’m really bad at creating beats. I prefer to use a real drummer, and when that isn’t an option, I try to use loops. When I’m sketching ideas for a song, trying to create an arrangement and such, I like to throw a few loops into the DAW and play over that. I’m really bad at using a metronome or a click track so a drum loop is a much more comfortable option for me.
After I’ve recorded the rough chords and arrangement into my audio program I like spicing up the drum tracks a little bit. Logic Pro makes this easy for me as they have all sorts of different loops and corresponding fills I can use. I usually throw some loops together to create a somewhat fluid arrangement and then create from there. I don’t really end up using those drum loops because I always want to record some actual drums instead, but during the creation process, using loops can really help.
Visit Article
Do Artists Really Need Managers Anymore?
Over time the music industry has been constantly evolving and managers have continued to play a pivotal role in the accomplishments of the artist they represent. But do artists really need managers anymore?
Visit Article
Activetuts+ — Flash, Flex & ActionScript Tutorials
Learn HTML5 With This Simple Avoider Game Tutorial
In this tutorial (the first of a series), you’ll learn the basics of HTML5 game development with JavaScript and the
<canvas>element. You don’t need to have any programming experience, or even any HTML experience (apart from this one article). Let’s get started!Visit Article
Exclusive Freebie: Tr.ace(), an Excellent AS3 Debugging Utility
We’ve got another Activetuts+ Exclusive Freebie for you! This time, Matt Stuttard (aka MSFX) is offering you his brand new debugging utility, Tr.ace(), which adds some very useful extra features to Flash’s
trace()function. Read on to find out more, and to download your copy.Visit Article
An Introduction to FlashPunk: The Basics
Learn the basics of how FlashPunk works – an amazing library to save you time and help you create the perfect game!
Visit Article
Wptuts+ — WordPress Tutorials
Customizing the WordPress Dashboard For Your Clients
Have you recently started using WordPress for your client’s project and want to further impress your client with better packaging? This article will focus on packaging WordPress so that, in just few minutes after completion of a project, it will feel more unique to the client and not have the generic feel.
Visit Article
Developing BuddyPress Themes – Part 1 : Working with the BuddyPress API and Loops
Last month, we looked at the basics of BuddyPress and how you can use it to increase social networking in your projects. The response was great and many requested theming tutorials. So, in this three part series, we’ll explain some core elements of the BuddyPress API and unpack how to create a custom child theme that will survive both BuddyPress and WordPress updates.
Visit Article
Steps to Securing Your WordPress Installation
WordPress is open source which means that everyone, including hackers with a malicious intent, can scour the source code looking for holes in its security. That is why I’m going to show you some good precautionary steps to take to protect you, your WordPress and most importantly, your users.
Visit Article
Mobiletuts+ — Mobile Development Tutorials
Android Futures: Preparing For Ice Cream Sandwich
The next major version of the Android SDK, codenamed Ice Cream Sandwich, is due out within the next couple of months. While were waiting for the release, here are some quick tips to future-proof your applications.
Visit Article
Full Screen Web Apps
One of the first problems encountered when building a mobile web app from scratch is the amount of space consumed by the browser’s address bar. This tutorial will demonstrate how to reclaim the screen real estate otherwise lost to the address bar while accounting for orientation changes, content height problems, and internal document links.
Visit Article
iOS SDK: Adding a Table of Contents to an iPad Reader
This is the third installment in a series on creating an iPad PDF reader for the book The War of the Worlds. In today’s tutorial, I will demonstrate how to add a Table of Contents to the project. In doing so, I’ll cover working with plist files, layering subviews, basic UIView animations, and manually creating interface components.
Visit Article
FreelanceSwitch — News, Tutorials & Jobs for Freelancers
Top 10 Free Online Storage Apps
Cloud computing oppens new opportunities for freelancers. One of them is free online file synchronization and storage. Nowadays you can sync your PC files and manage your documents on the go. Share files with your employer or other freelancers. Make an online backup or roll back to previous file version. All these actions are possible with modern online file sharing applications.
Visit Article
5 Ways to Find Freelancing Virtual Assistants
As a freelancer, I’m not really in a position to hire someone as a full-time employee and pay all the payroll taxes and other expenses that go along with such an arrangement. Hiring someone on a contract basis, like a virtual assistant, for just those hours that I need her, is the simplest solution. From there, it becomes a matter of finding the right virtual assistant.
Visit Article
7 Sins of Website Copywriting That Send Prospects Fleeing
Remember: your website is your virtual salesperson. The design is the way that salesperson is dressed. It makes the first impression. But the copy are the words coming out of that salesperson’s mouth: that’s what will make or break the sale.
When a prospect is looking at your site, they have a question in their mind: “Do I want to hire this person?” Your copy’s job is to make sure the answer is “Yes!” as often as possible.
Visit Article
Thanks for Reading!
We love bringing you the latest and greatest tutorials each month, and would like to take this opportunity to say thanks for reading, subscribing, and offering your feedback. If you have any suggestions for tutorials, or Tuts+ in general, feel free to leave them below in the comments!
As ever, the best way to support the sites (and get your hands on superb, industry-leading tutorials) is to join our Premium program. It costs just $9 per month, and will be the best few dollars you ever spend! There’s also no risk, thanks to our 100% money-back guarantee.
Yes, the ‘F’ in FOTB stands for Flash, but Flash on the Beach is so much more than a conference solely about the Flash Platform – or even one aimed specifically at Flash Developers. It is a rollercoaster of inspiration, education and downright good fun. Here are a few of my highlights from the latest and greatest FOTB. I’d love to write about everything I went to and experienced but it would take days; come next year and you’ll see what I mean…
This was my fourth consecutive year making the tweet-filled train journey to sunny Brighton for FOTB and John Davey (organiser) sure knows how to throw an awesome conference that brings you back year after year. The lineup over the three days was crammed with award-winning designers, developers, and people that just make you go WOW. With three separate theatres hosting three awesome speakers at a time it really is a headache deciding which session to attend, but there is no doubt that whichever way you go, something will make your eyes widen, your jaw drop and your brain question reality.
Carlos Ulloa – Love the Future
I’m a huge fan of Carlos and his work and this is the third time I’ve seen him speak at FOTB and he didn’t disappoint. Following the Adobe keynote he spoke of two projects, the first of which was an iPod/iPhone/iPad application named ‘HelloFlower’ built using Unity3D.
Credit: profaniti on Flickr
HelloFlower is available free on the App Store and I seriously recommend you download and have a play since it’s a gorgeous app where you can design your own flower by manipulating the petal outlines and colours. You can then share your result in their online gallery or on Facebook etc.
He then went on to mesmerize the entire theatre with a yet-to-be-released interactive experience titled ‘Lights’ for the UK singer/songwriter Ellie Goulding, built using WebGL. I am a huge fan of music visualization and this was simply awesome, particularly since it was built without the aid of a plugin. I can’t wait to see it again when released and would put money on an FWA heading their way. Keep your eyes peeled for this one!
Credit: profaniti on Flickr
To summarise the session, session sketch extraordinaire James Whiteley posted this on Twitter shortly afterwards and he hit the nail on the head:
Credit: @planetpush on Twitpic
Truly awesome.
GMUNK (Bradley G Munkowitz) – TRON GFX and FOTB Opening Titles
For me this was an amazing session getting a glimpse at how Bradley directed and was involved within the visual effects for last year’s blockbuster film, TRON: Legacy.
Credit: oyvindnordhagen on Flickr
He gave a great insight into how his ultra-cool team was constructed and how important it is to have such a thorough and detailed resource library at your disposal for any project you undertake. It’s incredible to see the original raw shot footage and then the final cut giving an idea of the blood, sweat and tears that goes into post production for those several seconds of film. You can see the final clips here.
Bradley also produced the titles for this years FOTB which he also briefly went into the making off. Have a watch below and then checkout the credits list – he called in a life’s worth of favours to make this and when it came on before the keynote we were all rather blown away.
Seb Lee-Delisle – Pixels for the People
This is the fifth time I’ve seen Seb speak and he always puts on an awesome show that’s full of interaction with the audience and this session was no exception. Using the audience’s phones, Seb pushed waves of colour across the room simply by having us all connect to a webpage within the browser. We then played Nyan Cat and the guy sat next to me won with a ridiculously fast reflex time! This was a really cool demo of what I’m sure will be an awesome installation somewhere in the future!
You can read more about the process here on Seb’s blog. Long live Seb!
Cyriak – Destroying My Laptop With AfterEffects
I remember seeing Cyriak a few years ago at FOTB and found his work highly entertaining as well as technically very impressive. A piece I found particularly fascinating was a music video constructed with only a few seconds’ footage of a street somewhere in the US.
After demoing several other rather entertaining animations – some more serious than others – he started working on a piece live in front of us, sharing an insight into how his workflow and wild imagination piece together these crazy concoctions. Awesome.
Jared Ficklin – Visions From the Man Cave
I love this guy. Having seen him make a music visualizer hooked up to a modified BBQ a couple of years ago I knew we’d be in for a treat this time around. Pushing visualisation into the physical domain there was fire, smoke and moustache history from the man cave. Such an entertainer!
Credit: oyvindnordhagen on Flickr
I’m already buzzing about next year’s event which looks to be titled slightly differently to reflect the fact that the conference is not all about Flash; however, I’m sure John won’t let us down, whatever happens.
Hope to see you there.
It’s time for another fantastic Active Premium tutorial, available exclusively to Premium members. At the end of the third part of this series, we had made the portals teleport the character. In this part, we’ll finish up the game by adding new mechanics and other miscellaneous stuff. We’ll also create a few example levels that make use of our mechanics.
Preview
Let’s take a look at the final result we will be working towards, across the whole of this multi-part tutorial:
Please view the full post to see the Unity content.
Hit the number keys 1-8 to try different levels. The aim is to get the little yellow Roly character to the designated end point, using portal mechanics. The demo shows off a few of the different mechanics we’ll introduce.
Warning: this tutorial is huge! It’s just as long as the third part.
Active Premium Membership
We run a Premium membership system which periodically gives members access to extra tutorials, like this one! You’ll also get access to Psd Premium, Vector Premium, Audio Premium, Net Premium, Ae Premium, Cg Premium and Photo Premium too. If you’re a Premium member, you can log in and download the tutorial. If you’re not a member, you can of course join today!
Also, don’t forget to follow @envatoactive on twitter and grab the Activetuts+ RSS Feed to stay up to date with the latest tutorials and articles.
Twice a month, we revisit some of our best posts from throughout the history of Activetuts+. This week’s retro-Active post is an interview with one of my favorite Flash and Unity game developers. Does Sissy’s Magical Ponycorn Adventure ring a bell?
Ryan Henson Creighton has eleven years’ experience in the gaming industry, and founded the Toronto-based game studio Untold Entertainment in 2007. He runs one of my favorite blogs on the whole Internet, covering Flash tutorials, Unity tutorials, game design, conference summaries, and rants. Ryan’s very active on Twitter, and has written an excellent guide to game development with Unity.
He also has all the coins.
(Photo of Ryan credit Brendan Lynch.)
QWhen you first got into Unity, you said this was partly because you didn’t want to put all your eggs in one basket, and partly because of a few questionable decisions Adobe made with Flash. That was eighteen months ago. For a games developer curious about Unity today, what would you say are the main advantages?
i’m striving to realize that “build once, deploy anywhere” dream that Adobe hinted at but couldn’t deliver on. Unity doesn’t live up to that promise either, but both platforms get us closer to a place where we developers don’t have to learn a dozen competing technologies just to see our work on different platforms.
Me? Oh – i’m just doing a little game development.
The advantage of Unity over Flash is that Unity 3D is a game engine. Flash is not, plain and simple – it’s a content creation tool. In fact, a few months ago, Adobe announced that they were putting together their first on-staff focus group for game development. Their first! This comes after about fifteen years of developers strangling Macromedia/Adobe’s product into something that can play games. This all leaves a sour taste in my mouth. Flash should have had proper collision detection, pathfinding, particle systems, physics, and gamepad control about eight years ago.
“Marty – MARTY! Flash is in trouble!”
Unity, conversely (as with Scratch, GameMaker, Blender, UDK, and many others) is a proper game engine – you know, for making games. The trade-off with something like Unity is the tool’s reach. Adobe rightly touts its Flash player’s ubiquity … I think 104% of computers are running it, including computers from the future and fictional computers from your favourite sci-fi novels (HAL from 2001 enjoys a good game of Bloons, i hear.) Unity can boast maybe a 5% installation base, if you squint and hold the chart at an angle. It’s to the point where it doesn’t yet make economic sense to develop a web game with Unity, which is why i haven’t. This situation should improve dramatically, as Unity announced they’re working on an “Export to swf” capability, facilitated by Molehill (the agonizingly past-due Flash 3D functionality).
QIt’s only recently that Adobe have embraced Flash game development, while Unity have been all about that from launch. Does the attitude of the companies have a clear difference on the tools themselves?
i think it took Adobe far too long to realize the value of their army of two million developers, and they’re scrambling to do right by that group as companies like Unity Technologies threaten to eat their lunch. After the incredible let-down of Adobe’s half-assed lip-service to 3D in Flash (no built-in depth management? Seriously?), the push for Molehill in the wake of Unity’s popularity is not coincidental. Unity is in a very strong position, because they can look at what Macromedia/Adobe have done and sort of patch holes in history. Building the Unity Asset Store, and offering the Union game brokering service, for example, were very smart moves; MM/Adobe left a lot of money on the table by letting sites like ActiveDen sell Flash widgets.
“Pssst … wanna buy 8.fla?”
As a developer, with so many platforms and languages and development tools out there, I want to ally with a company that has my back – a company that cares that i’m using their tool, responds to the needs of the community, and respects the fact that i could flit like a butterfly to the next nectar-filled development platform, but i don’t. Can Adobe pull it out of the fire with their game squad? Maybe. i’ve spent 11 years working with Flash, and inertia makes it very tough for me to dislodge myself. But i feel there’s bad blood with Adobe, and that their sudden interest in developers feels cynical. When i spoke to an Adobe employee earlier this year about it, i said “A focus on game developers? Finally! What took you so long?” He merely shrugged.
Game developers are gold to these companies. They deserve more than a shrug.
QYou’ve had a lot of experience helping people learn to develop games; besides your book and your blog, you’ve worked for the Board of Education, and as a college instructor. Is Unity easy to learn?
i don’t know if this is a worldwide phenomenon, but one of the pitfalls the colleges around Toronto succumb to is that they hear Unity and Flash are sooo easy to develop for. Console developers like to say, somewhat disparagingly, “we use Flash for rapid prototyping.” So i hear this repeated in colleges: “We’ll teach our students to learn Flash, but just for – you know – rapid prototyping”, as if all the “cool” and “real” programming are only happening with C-based languages, and Flash is only appropriate for toddlers or Special Olympians. Same deal with Unity 3D – the deans and program co-ordinators hear it’s “super-easy” to develop games with the tool, so they figure they can just run a 4-month course inside a Game Development program and that’ll be sufficient.
We merely make it look easy.
If course, if you’ve actually bothered to make a game in either program, you’ll know that both require real-live Object-Oriented Programming chops. Sure, they do a lot of heavy-lifting for you – you don’t have to write your own physics engine in Unity, and you don’t have to worry about memory management or garbage collection in Flash … but both Unity and Flash require real, actual programming skills. Shocker! You need to know at least the very basics: operators, conditionals, functions, arguments, return values, variables, loops, and arrays. This is the very stuff I’m covering in my Understanding Programming tutorials on the Untold Entertainment blog. Once you’ve got that stuff under your belt, you can check out something like the Understanding Classes series, which is written for everyday folks like you and me (not CompSci eggheads).
So these colleges, who attract mostly video game players instead of video game creators, lead kids with “art skills” down the garden path, thinking that since these tools are “so easy”, a teacher should just be able to plow through 4 months with the students and they’ll come out the other end knowing how to build games with Flash or Unity. Then these kids put “i know teh Flash and teh Unity and sum UDK hyre me hor hor hor” on their resumes, and the market is flooded with grads who think they know how to do things. These grads – in the very worst cases – are hired by people who believe them. And then clients come to more experienced developers like Untold Entertainment asking me to fix what these kids broke. It’s a grim state of affairs.
“Let’s get my nephew to do it! He learned Flash at a community college!”
A much healthier approach is if you’ve got a student intake full of “artists” and you’re running a Flash course, teach them asset prep: how to build a puppet for animation, how to create both tweened and straight-ahead animations, how to name things, how to manage layers and libraries, etc. Then the graduate writes “i know teh asset prep in Flash hyre me hor hor hor” on his resume, and he’s actually correct, and so everyone is happy. If you’re running a Game Development Program and you want people to believe you and not get a shitty reputation like many community colleges are getting, you absolutely need to bite the bullet and properly teach your students how to program. Don’t run a Flash course or a Unity course. Run a programming course, which uses Flash or Unity to help students see results more quickly and easily (note to colleges: “more quickly and easily” is a comparative statement. It is NOT the same as “quickly and easily”!)
So, “is Unity easy to learn”? Yes and no. It’s certainly the easiest time you’ll ever have trying to build a 3D game, but that’s all relative. Designing in 3 dimensions is just straight-up complicated, which is why in my Unity 3D Beginners Guide, I stuck mostly to quasi-3D, and 2D games using 3D models. You don’t have to chug along very far before having to worry about trig and differential calculus, depending on your game design. Thankfully, there are a vast number of simpler game designs that you can absolutely pull off as a beginner, which is what my book aims to show you.
QFor a new Unity developer, what are three big mistakes that are easy to make but really important not to?
1. Do NOT pay a hooker with a cheque.
i can come up with others, but if you break that rule, you’re basically done for.
As pertains to game development, the biggest mistake that new and experienced developers alike make is dreaming too big. It’s very easy to play a video game and to be blind to all the effort that went into developing it – to forget the fact that you’re one person and they have a team of dozens … that they’ve got a budget and work 9-5 for years and you’re building your game for “free” in your off-hours and weekends. As i say in the book, many developers think they realize this, and they start making concessions: “Well, i wanna build something like World of Warcraft except better, because i feel the developers really messed up certain aspects of that game. But i realize it’s probably out of scope for me to build WoW, even if I get Johnny to do the art for it next week while he’s off school with an ingrown toenail, so i’ll tone it down a bit: i’ll only have twelve races and fourteen classes and thirty-seven weapons and blah blah blah …”
“Delusion” is not just a river in Africa.
This is the wrong approach. You won’t finish, and you’ll become bitter and jaded and you’ll move out of game development to pursue something easier, like hauling lumber in a logging camp.
The right approach is to think of the simplest game you can imagine, like motherfuck*ng dress-up, and then SCALE IT DOWN. Instead of a dress-up game with twenty outfits, reduce it to FIVE. i’m absolutely serious about this. Think of something almost insultingly simple, and then simplify it. At the end of the day, if you have one finished project, you are a fundamentally better human being than someone with twenty-thousand great ideas. He who executes, wins.
i think this is one area where those of us who grew up in the 80’s arcade era have a distinct advantage. We know what a small, manageable and playable game looks like. We know that you don’t need Gears of War to have fun – you just need Mr. Do or Bentley Bear running around some maze collecting golden whatevers. Today’s new crop of game developers have only monstrous multi-million dollar console titles as their models. The solution is for gamers to play more casual and classic games, and to really explore games that create fun with very few bells and whistles.
Of course, even veteran devs aren’t immune to this problem of over-scoping things. It’s probably my Achilles heel, and the reason why i don’t finish more of my own games. Here’s an anecdote from the trenches: i’m working on a platform game for a client right now, and it’s going to have a Level Select screen. i asked how many levels he wanted me to build, and he said “Oh, i dunno … 25?” and i said “Sure”, because 25 levels seems like a decent number of levels for a casual platform game. You see how that works? i wasn’t thinking about how long it was going to take me or how much money I was being paid – i was measuring my expectations against other games i’ve played, notwithstanding the staff, budget, or development time those games enjoyed.
It wasn’t until i sat down and pieced it together that i realized my mistake. If each level took one hour to build, it would take me 25 hours – over half a work week – to build all those levels. If levels took two hours to build, I’d be spending well over a week on them. To my horror, i realized it took upwards of FOUR HOURS to compose even a simple level. That worked out to over two straight 40-hour work weeks of building levels, which wasn’t sustainable for the project’s timeline and budget. Thankfully, my client is totally cool and agreed to reduce the workload to a more reasonable 12 levels. With a less understanding client, i could have lost a huge chunk of cash on the project. And I need that cash, you see, because apparently you can’t pay a hooker with a cheque.
Asking a prostitute if you can run your credit card through her slot is usually misconstrued as innuendo.
QDuring the past year or two we’ve seen a huge changes in the “smaller” games industry: Facebook games are everywhere and mobile games are hot. Over the next 3-5 years, and ignoring the obvious trends, where do you think the industry will go next?
Technically, Facebook games aren’t everywhere. They’re in one place: Facebook. NEWS of Facebook games is everywhere. The press really goes nuts whenever anyone makes boatloads of money on something many consider frivolous or fun. Their coverage conveniently ignores the scads of people who aren’t making money, so we get a real blockbuster mentality. Cityville is HUGE! Great. What about all the other developers who are making games and earning nothing? Iron Man is HUGE!! Super. What about all the people making indie films about people and their feelings?
To predict trends in the game industry, you really only have to look to film. People – especially old people – are going to try to shape and mold the games industry into something with a studio system, where five or six very large entities control all the developers, and in order to get your work seen anywhere, you’re going to have to go through gatekeepers. They say “content is king”, but it’s a ruse: content is peasant. Content is only king if you’re an aggregator of content; without the content, you’re not in play. But the sneaky thing about saying “content is king” is that it implies the people who make the content have some sort of power. They don’t. The people who squeeze the content out of the creators and use their dominance to wrestle rights and control out of the creators’ hands have all the power.
So many people are trying to get into game development now that developers themselves have become a commodity. Companies now “have” developers, and they wield that power like a stick. That’s why Adobe is finally organizing a game team – they want to try to control the community of Flash game developers as “their people”, just as Apple has its throng of iOS devs that it touts. Whenever a new device comes out, the developer incentives are getting sweeter – just take a look at RIM’s free Blackberry Playbook give-away, the Google Nexus One and Xoom give-aways at GDC. All these companies will increasingly dance and shimmy and wiggle their jiggly bits in order to attract developers to their platforms.
Hey, big boy … our platform is well-developed.
Once they have developers in their snares, though, the treatment gets a little rough. Check out the stink Amazon caused with its app store. After tanking the casual downloadable market in its price war with Big Fish Games (dragging the average price of a game from $20 down to $6.99), they developed absolutely vicious Terms of Service for their new app store that turns developers’ hard-fought work into collateral in another high-level price war. (Thankfully, the IGDA and others grew wise and are warning developers away from Amazon’s predatory practices.) Apple famously drove the price of mobile games down to 99 cents, which makes sense perhaps for songs, but is absolutely deplorable when it comes to something like a game.
For the future, I see a continued cat-and-mouse game of gatekeepers vs. developers, where gatekeepers and conglomerates try to snatch up developers in their net, and hurl those wads at each other in a fight for dominance, while clever developers slip through the holes in the net and find new places to have their work seen, heard, and purchased. They almost had us with the console publishing model, and then digital distribution came about. Now, publishers are trying to lock up that market with publishers, but some of us will escape. And escape we must.
I’m lifting a lot of what Dan Cook from Lost Garden has to say on this topic. Go check out his blog, and his excellent GDC’11 presentation on platform power.
Another prediction: at the end of the next five years, I will be surprised to find myself paying for any tool that enables me to develop games.
QYou’ve talked in the past about how TV guys just don’t get game developers — they’re very naive, and just want a number for their budget — is the situation improving?
Not. At. All.
The situation in Canada is a little different than elsewhere. We have a number of funds that teevee production companies can tap into. In fact, one of the largest funds for teevee actually requires the production company to create an “interactive digital media” component, which can include games. (Often, the teevee prodcos produce “webisodes” to take the easy way out on this.) Since teevee people really don’t understand games or how to profit from them, they see the IDM arm as a necessary evil – a marketing expense. They often try to spend as little money as possible on the IDM component of a show. They can sell the show to broadcasters, but they don’t know how to sell the IDM aspect, and many broadcasters expect them to throw in the mini-site, games, webisodes, etc. for free with the show license. And in the case of preschool and kids’ entertainment, which is where Untold Entertainment specializes, it’s even more difficult, because you essentially have to rule out the advertising model. No parent wants their four-year-old kid playing a game with a big-ass McDonald’s logo slapped on top of it.
Um …
Mobile is budging that a tiny bit. Many of the kids’ teevee companies here in Canada are diverting large portions of their tiny IDM budgets to mobile, because they’re just tickled that they can charge money for those products. Even if it is only 99 cents, that’s 99 cents instead of the ZERO DOLLARS they’d normally have earned. i’m not convinced these investments will necessarily pay out for teevee companies, though. Teevee people love to talk about the “pass-back” phenomenon: the classic example is in the car, and the kids are screaming in the back seat, so mom quickly queues up some kids’ app on her iPhone and passes it back to the little brats to shut them up for a while so she doesn’t send the SUV screaming off a cliff.
Teevee prodcos have a distinct advantage in selling their apps because they have a teevee show, which has the potential to drive a lot of awareness for their apps. But they face the same problems as any other mobile developer: namely, marketing and discovery, and since games aren’t their bag (but, insultingly, they think they understand the industry just fine), the teevee companies risk throwing all their money into ventures that are often more expensive than developing Flash web games, where we know kids are spending time. Teevee is gambling on mobile, where we think kids might be spending time.
QWhat are you working on at the moment?
Untold Entertainment is a funny company, and it must be frustrating to watch us crawl along in relative obscurity. We earn money by completing fee-for-service projects (mostly Flash web games for Canadian kids’ teevee shows and broadcasters). Once the overhead is paid – office rent, phone and Internet, and my obscene cocaine habit – we may or may not have a little money left-over, depending on whether or not we agreed to develop 25 G-d levels for that bloody game. This mark-up is often eaten up by me writing vapid blog posts that i string together with stolen LOLCat pictures and dick jokes. After that, the remaining money goes towards sending me to international conferences like GDC and Casual Connect, where i don’t have any actual products to market because i was so busy writing those blog posts. And then – THEN, if i have any money left at all, it goes towards developing an original Untold Entertainment Inc. game.
(obligatory Untold Entertainment ganked LOLCat picture)
We have three big projects in development, which have been in development for a very long time. Two of them are Interrupting Cow Trivia, an online multiplayer Flash game; and Spellirium, a post-apocalyptic puzzle adventure game. Each of these projects, i’m convinced, has been cursed. Production difficulties, staff rotation, lack of cash-flow and trademark issues have held them all back. But i have established a do-or-die mandate to finish them all this year, which has nothing to do with my stalwart perseverance, and everything to do with a government-imposed deadline on each project. The Canadian government is my project manager. God save the Queen.
i continue to struggle in vain trying to drive traffic to my game portals, including ZombieGameWorld.com. i detail my futile efforts in a funny series called Pimp My Portal. In the coming months, i will unleash Formerly Earl Peterson on the world. He is a puppet, and puppets are awesome. Formerly Earl is an articulate zombie who remembers what it is to be human. He acts as a liaison between the living and the undead, and is an avid zombie rights activist. He’s going to star in some games (like the Are You a Zombie? quiz), and will perform video reviews of zombie games. He’ll also answer your burning questions about zombies, including “What do brains taste like?” and “How do zombies do it?”
We’re still steadily improving UGAGS, the Untold Graphic Adventure Game System. We built and initially deployed UGAGS on a client project called Jinx 3, and then used for the quickie weekend jam game Heads (which is available for the Blackberry Playbook), and then again for Summer in Smallywood, another client project. With Smallywood, UGAGS now supports proper branching dialogue, along with nav meshes, which give the player more freedom to move around the game screen. The next two games we’re building with UGAGS are Panda, which is about a welfare-dependent panda bear trying to raise abortion money for his artificially-inseminated ex-girlfriend, and Excuse Me For Living (But the Graveyard’s Full), which is a graphic adventure game involving zombies.
Finally, there are a few smaller projects we’re developing, including the notorious Bear in a Sombrero. This year at TOJam (the Toronto indie game jam), i’ll be working with my five-year-old daughter Cassandra on a platformer called Sissy’s Magical Ponycorn Adventure. She’s doing the pictures and the voices.
Cassie FTFW!
(Editor’s note: in case you missed it, Sissy’s Magical Ponycorn Adventure was made and released in May, and has been very succesful!)
QWhat will people learn from your book?
You will learn the very best way to part with $30-50 dollars.
If you’re new to coding, you’ll learn a lot. i tried to make the book non-coder friendly. That doesn’t mean there’s no code in it – that means that the book gently explains each line, trying not to leave anyone in the dust.
If you come from a Flash background, you’ll get a real quick crash course in Unity to whet your appetite. You’ll learn a lot of stuff that you could eventually hunt down online, but the nice thing about a book is that it lays out a comprehensive course of study for you, and saves you from doing a lot of running around.
The book teaches about starting small, about separating skin from mechanic, and about the difference between features and content (which is where we get into trouble over-scoping our projects). By the time you finish the book, you’ll have built four small games in Unity 3D, and should be well equipped to pick a new, small game idea and run with it.
And with any luck – and I’m not making this claim officially or with any air of scientific or medical authority – but I’m pretty sure that reading Unity 3D Game Development by Example will cure cancer.
Ready for another quiz? This month’s ties in with Dru Kepple’s ongoing series about Fixing Bugs in AS3. It’s an important skill to have – let’s see how you score!
Let’s Get Quizzy
Help!
Feeling stuck? Didn’t score so well? Check out our posts on debugging:
Just So You Know…
This quiz was built with the jQuizzy Quiz Engine by Siddharth, ace reviewer for Envato. jQuizzy is available for purchase over on Codecanyon
Thanks also to Orman Clark and MediaLoot for their graphical contributions to the Activetuts+ Coffee Break Quizzes.
What Would You Like To Be Tested On?
If you’ve got an idea for an Activetuts+-related quiz subject, let us know in the comments!
In this Quick Tip screencast, I’ll show you how to embed your Flash SWFs in an HTML webpage using SWFObject.
Where to Get SWFObject
The latest version of SWFObject is available on its Google Code page. Grab whichever file is marked as “Featured” on this page (at time of writing, that’s version 2.2).
Watch the Screencast
Don’t like ads? Download the screencast, or subscribe to Activetuts+ screencasts via iTunes!
The Starting HTML
For a beginner’s guide to HTML, see this tutorial.
The Final HTML
<!DOCTYPE html> <html> <head> <title>Our HTML Page</title> <script type="text/javascript" src="swfobject.js"></script> <script type="text/javascript">swfobject.embedSWF('animation.swf', 'flash', '550', '400', '9.0.0');</script> </head> <body> <div id="flash"> <p>At this moment you do not support Flash Player 9. We're sorry.</p> </div> </body> </html>Thank You
Thank you for watching, if you have any questions, feel free to comment.
In this tutorial I will introduce a class by Senocular.com that allows easy movement of game characters with minimal code.
Final Result Preview
In the SWF you’ll see a spaceship; use your Left, Right, Up, and Down arrow keys to move it.
Step 1: Explanation of KeyObject.as
When ActionScript 3.0 came out we lost the functionality of AS2′s Key.isDown() method. Senocular has coded a great little class that will let us emulate this functionality within actionscript 3 and that is what we will look at in the tutorial.
Step 2: Setting Up the Project
Go to File > New and create a new Actionscript 3.0 document, with the following properties:
Save this file as "KeyObject.fla"
Step 3: Downloading KeyObject.as
Before we can code our application we need to get the "KeyObject.as" file, so head over to Senocular.com. Under the Flash Menu, click on Actionscript. Once there you will want to drill down to "KeyObject.as" and download it. Get there by going to Actionscript 3.0 > com > senocular > utils.
You can right-click on the download link and save it as "KeyObject.as".
Once you have done this you need to remove com.senocular.utils right after the package declaration in the file, since we are not using the com.senocular class path.
Change this:
package com.senocular.utils { import flash.display.Stage; import flash.events.KeyboardEvent; //Rest of ClassTo this:
package { import flash.display.Stage; import flash.events.KeyboardEvent; //Rest of ClassStep 4: Importing the Player Graphic
In the download files there is a spaceship image called player.png. In Flash, import this to the stage, by going to File > Import > Import To Stage. Right-click on it and choose "Convert To Symbol", give it the symbol name "player", and make sure the registration point is set to the top left. Now give it the instance name of "player" as well.
Step 5: Setting Up the Main Class
Go to File > New and choose ActionScript File.
Save this as Main.as and set it as your Document Class within "KeyObject.fla".
Next add the following code to "Main.as":
package { import flash.display.Sprite import flash.events.Event; import KeyObject; public class Main extends Sprite{ private var key:KeyObject; public function Main() { addEventListener(Event.ADDED_TO_STAGE,setupKeyObject); } function setupKeyObject(e:Event){ key = new KeyObject(stage); stage.addEventListener(Event.ENTER_FRAME,movePlayer); } function movePlayer(e:Event){ if(key.isDown(key.LEFT)){ player.x -= 5; } if(key.isDown(key.RIGHT)){ player.x +=5; } if(key.isDown(key.DOWN)){ player.y +=5; } if(key.isDown(key.UP)){ player.y -=5; } if(player.y<0){ player.y =0; } if(player .y > (stage.stageHeight - player.height)){ player.y = stage.stageHeight - player.height; } if(player.x<0){ player.x = 0; } if(player.x > (stage.stageWidth - player.width)){ player.x = stage.stageWidth - player.width; } } } }Here we set up our package and import the classes we will be using. Next we set up the
keyvariable as typeKeyObject, and within ourMainconstructor we add anADDED_TO_STAGEEvent Listener. This gets called when the movie is fully loaded and the stage is ready.Inside the
setupKeyObjectfunction, we set thekeyvariable to be a new instance of theKeyObjectclass and add anENTER_FRAMEEvent Listener to the stage.Within the
movePlayerfunction we check which key is being pressed by usingkey.isDown()and move our player accordingly.Finally, we check to see whether the object has moved outside the bounds of the stage, and if it has we put it back just inside the stage.
Conclusion
Using Senocular's KeyObject class makes it dead simple to move your game characters! I hope this tutorial has helped; thanks for reading.