Shareware Amateurs vs. Shareware Professionals

Why is it that some shareware developers seem to be hugely successful in financial terms, growing their sales from scratch to generate tens of thousands of dollars in income, while the vast majority struggle to generate even a handful of sales? The answer can be found by exploring the difference in mindsets between both groups. For convenience we’ll label them as the professional and the amateur. First, let’s examine the…

Product Development Cycle

Amateur

    • Get inspired by an idea for a product.
    • Create the product, regardless of whether there’s a market for it.
    • Release the product.
    • Promote the product sporadically until bored with marketing.
    • Note dismal results.
    • Ask disempowering questions like, “Why do my sales suck?”
    • Sulk for a while.
    • Network mostly with others who are also getting dismal results, taking comfort in the fact that you aren’t alone.
    • Make a few sporadic changes to product or web site (maybe).
    • Abandon the product (aside from continuing to process orders and handle support), and move on to the next product with step 1.

Professional

    • Do basic market research to determine the best opportunities for new products.
    • Design a product that inspires you and that can exploit the market opportunities you identified.
    • Create the product along with the system for selling the product and the marketing plan.
    • Release the product.
    • Promote the product systematically according to the marketing plan.
    • Measure results and gather feedback.
    • Study and learn from the top industry performers (companies and products).
    • Ask empowering questions like, “How can I increase sales by 20 percent or more?”
    • Update the product, the sales system, and the marketing plan based on lessons learned.
    • Repeat from step 5.

After the first pass through this cycle, the initial results for the amateur and the professional may be virtually identical. But whereas the amateur typically stops after the first pass, the professional understands that this is just the beginning. Let’s say they each release products that initially generate $100 per month in sales. The amateur will often conclude that the product is a failure, perhaps make a few minor revisions that don’t help much, and then move onto the next product. But the professional says, “How can I get to $200 per month?” By iterating through this cycle of refinement and re-release many times (often more than ten times over a period of several years), the professional may ultimately end up with a hit that generates thousands of dollars in monthly income. To the amateur that initial $100 per month is seen as a flop. To the professional, however, it is seen as a seed. The professional understands that the initial launch is only the first step in a long stream of future updates and refinements, not just to the product but also to the sales system and the marketing plan. Here’s why this works:

In order to make a single shareware sale, there are an enormous number of factors that must all come together synergistically. The chance of getting all these factors correct on the initial release is slim to none. Let’s say there are only ten critical factors in making a shareware sale (the quality of the product, the market demand for the product, the effectiveness of your registration incentives, the effectiveness of your ordering system, the file size of your shareware demo, and so on). And let’s say that for each factor there is a range of effectiveness from 0 percent to 100 percent.

Understand this: these factors don’t add—they multiply!

If all of your critical factors are at 100 percent, but just one is at 0 percent, that means you could be getting zero sales, even though you did most things perfectly. For instance, you could have a truly brilliant product, but if people don’t feel secure using your order form, that single flaw could cost you most of your potential sales.

What if each of these 10 factors was at 60 percent effectiveness? Do you realize that this means you’re only getting 0.610 = 0.6 percent of the sales you could be getting. Even if each factor is at 90 percent effectiveness, that’s still only 35 percent of optimal. Obviously this model is oversimplified.

My goal is to dispel the prevailing myth that if each part of your ordering pathway is “good but not great,” that your final sales will be good too—the reality is that lots of good factors multiply together to create “utterly dismal.

Here’s the formula: (Good but not great)

N = Utterly dismal (for a sufficiently large N).

If everything about your product is just good (say 60 percent of optimal), this doesn’t mean you’ll be getting 60 percent of the potential sales. It means you’re more likely getting less than one percent of the sales you could be getting. Refining the critical success factors and making each part of your product, your sales system, and your marketing just a little bit better with each consecutive release is how you grow your sales massively over time. It isn’t out of the question that you can double or triple your sales in a day by doing this. See this article for some ideas on that.

Now the truth of the matter is that most initial releases are nowhere near averaging 60 percent effectiveness for all critical success factors. Especially for first-time developers, there are probably many factors that are at 10 percent or less. The headline on your product web page, for instance, may be nonexistent or poorly written. Your product may have bugs or compatibility problems that prevent many people from running it. Your web site may look unprofessional and scare potential customers away. You may not have even scratched the surface of all the marketing you should be doing. Perhaps you only have one product and aren’t experiencing the benefits of cross-selling other products. It’s entirely possible that when all these factors come together, you may be generating something like 0.01 percent of the potential results that your product is capable of, if you were continue to nurture its development.

Selling software through shareware channels is very different than selling software at retail. With try-before-you buy, there are a huge number of steps each potential customer can go through before buying, any one of which can kill the sale. Just one suboptimal factor can cost you most of your potential sales, and when combined, multiple suboptimal factors may be tossing out potential customers left and right. Picture a ball rolling down a pipe with ten holes. If the ball passes all the way through the pipe without falling through any holes, you make a sale. But if the ball falls through even one of those ten holes, the sale is lost. The way you get your product from dismal sales to outstanding sales is by systematically identifying and plugging those holes.

Having been in this industry for many years, I’ve seen this cycle repeat itself again and again. You would be absolutely amazed at how many of the greatest shareware hits experienced dismal sales after their initial release… sometimes even no sales at all in the entire first year. But the developers turned them into hits by continuously improving those critical success factors over a period of years.

So which is the better approach? To release five products in five years, each at 0.01 percent effectiveness, or to raise a single product from 0.01 percent to two percent? If 0.01 percent makes you an average of $100 per month, the first scenario will get you to $500 per month, and this is exactly what amateur developers do. But the second scenario will get you to $20,000 per month with just one product, and it requires less work too.

There are three good reasons why experienced professional shareware developers are often able to release more consistent hits than less experienced amateurs. First, the pros have already plugged many of the holes in their system that are shared by all products, such as optimizing their web sites to sell, refining the ordering process, implementing a money-back guarantee, crafting a solid marketing plan, gaining excellent search engine placement, etc. So when a new product is released, it inherits the benefits of prior system-wide optimization work. Secondly, the pros can apply the wisdom gained from refining each previous product to any new release, so when they release a new product, they’ve already eliminated all the obvious sale-killers that still plague amateur developers. And thirdly, the pros have already internalized the attitude that the first release is just the beginning; thus, they expect to continue to refine the product and immediately start listening to user feedback to help them locate new holes that need to be plugged.

It is rare in the extreme that a developer’s initial release will be anywhere near its full potential, even if the developer has vast experience. If you release a new shareware product, I guarantee it’s going to be riddled with flaws, and it’s probably earning less than 1 percent of its potential. If you raise each of ten critical success factors by just 5 percent, you’ll increase your sales by 60 percent. And if you do this over and over again, you’ll see your monthly sales gradually climb:

$100… $160… $250… $400… $650… $1000… $1700… $2700… $4300… $6900… $11,000… $18,000… and so on1.

In order to improve these critical success factors, you have to confront the brutal, objective facts. Invite others to evaluate your product, your web site, and your ordering system. This requires putting your ego aside and being as open-minded as possible. Find out how others are marketing their products (Editor’s Note: Feel free to ask in our forum if you’d like). Listen to what others have to say; don’t delude yourself by trying to persuade them you’re right and they’re wrong. Don’t worry about trying to make everything perfect all at once. But see if you can increase several critical success factors by a small amount with each successive release. For instance, you might try to make your product page just 20 percent more effective, your registration incentives 10 percent more enticing, your product interface 30 percent more intuitive, and so on.

As a personal example, shortly after I released Dweep in mid-1999, I began getting requests for an expansion pack of more levels. So I released an expansion pack. Players also complained that Dweep moved too slow and needed a speed control. So I added a speed control. Then players wanted another expansion pack, so I released that. Then players wanted a level editor, so I added that. Then players wanted to be able to post their own levels, so I added a free levels archive. That turned out to be too much work to maintain, so I eventually took it down and replaced it with a forum where players can post their own levels, which has been working out wonderfully. During this time I also made major revisions to the web site, the marketing process, the ordering system, cross-promotions with others games, and the price (raising it from $9.95 to $24.95 while increasing the number of levels from 30 to 152). Most of Dweep’s sales were a result of these later refinements, not the initial release.

The amateur mindset leaves most of the potential rewards forever untapped, wallowing below 1 percent of the true potential. But professionals keep going… treating that shareware product as a tree that must be patiently watered before it bears a full harvest of fruit. I suppose you could say that the amateur sees the glass as 99.99 percent empty, while the professional sees it at 0.01 percent full.

Now lets explore the differences between shareware amateurs and professionals in terms of…

Personal Development

Amateur

    • Myopically focus personal development efforts on the areas you enjoy most (such as design or programming) as opposed to the areas where improvement would yield the greatest results (such as marketing or self-discipline).
    • Gain knowledge sporadically through just one or two primary sources (i.e. reading books and articles, but not live seminars or audio programs).
    • Apply your new knowledge to making your strengths even stronger (i.e. product development), while falling further behind in your weakest areas (i.e. marketing and sales).
    • Guard the best of what you’ve learned as a treasured secret. Maintain a competitive scarcity mentality.
    • Repeat from step 1.

Professional

    • Take personal inventory of strengths as well as weaknesses that specifically detract from those strengths (ex. poor goal-setting habits result in unfocused marketing plan).
    • Identify key knowledge/skills that must be mastered (marketing, selling, programming, etc) as well as key character traits that need improvement (organization, self-discipline, focus, motivation, etc).
    • Identify multiple sources where above knowledge/skills/traits can be improved (mentors, business associates, books to read, organizations to join, conferences/seminars to attend).
    • Take action by diving into these sources. Read the books, join and become active in the organizations, attend the conferences/seminars, and learn from the key individuals.
    • Patiently apply the new knowledge to your business and life, realizing that even small gains will compound exponentially as you continue running this cycle year after year.
    • Pass on your new wisdom to others by sharing advice, writing, volunteering, mentoring others, etc. Maintain a noncompetitive abundance mentality.
    • Repeat from step 1.

The amateur sees personal development in narrow, monodimensional terms—i.e. becoming a better developer. Efforts are focused on acquiring more knowledge within this limited field. A shareware amateur’s bookshelf will be dominated by books within a narrow field, such as software development, virtually ignoring other crucial parts of the business like marketing and sales.

By contrast the professional takes a holistic approach. The professional understands that all areas of one’s life are intertwined, and that a weakness in one area (such as financial management) can detract from strengths in other areas (such as programming). The professional’s bookshelf will likely be filled with a varied mix of books on topics such as business, marketing, sales, finance, technology, psychology, philosophy, health, and relationships. The professional keeps an open mind to acquiring knowledge through a variety of media, perhaps reading a book on software development, having a discussion with peers about marketing, listening to an audio program on time management, and attending a seminar on sales techniques. The professional seeks to advance on multiple fronts, understanding that a 10 percent improvement in five different areas will yield better results than a 50 percent improvement in just one.

The amateur guards knowledge as a scarce resource—a competitive edge. Thus, the amateur rarely becomes known in professional circles, thus missing out on scores of lucrative opportunities that professionals frequently share with each other. This attitude constricts the flow of new knowledge back to the amateur, and the result is that the amateur is cut-off and isolated from the “inner circle” of the highly successful within his/her industry. Few bother to help the amateur directly because the amateur has never done anything for them and is relatively unknown. The amateur is stuck in a downward spiral of scarcity where growing the business feels like climbing a mountain.

Conversely, the professional understands the importance of information flow and that passing on knowledge to others only deepens his/her own understanding. This sharing of knowledge plants seeds of abundance that benefit the professional for years to come. By giving openly and generously, the professional develops a positive reputation that attracts other professionals. An abundance of new opportunities flow to the professional through this network, seemingly without effort. This creates an upward spiral where the professional is able to leverage this network to grow his/her business with relative ease.

Finally, lets dive into the…

Psychological Factors

Amateur

  • Nonexistent or foggy goals (“Make more money”)
  • Sporadic motivation coming from irregular outside influences (inspiring book/movie, great conversation, flash of insight, etc)
  • Focus on making money and getting customers to buy
  • Seeks to blame poor results on outside factors (poor economy, competition, lack of luck, unfairness, shortfallings of shareware model, etc)
  • Expends effort on the most enjoyable actions
  • Scarcity mentality based on zero-sum thinking (“I’m not going to give anything away unless I get something in return”)
  • Short-range time perspective used in planning, often limited to the timeline of a single product cycle
  • Sees problems as obstacles
  • Persistent self-doubt (“Success is elusive”)
  • Unbalanced approach improving major strengths while letting other areas slide
  • Believes that success comes from doing (work), then having (results), then being (successful)
  • “Once I achieve this (foggy) goal, then I’ll be successful”
  • Weak commitment_ (“I’ll try this and see what happens”)
  • Avoids facing brutal facts stays within comfort zone (“I don’t enjoy/understand marketing, so I’ll just keep programming for now”)
  • Believes that risk-taking and luck are necessary for big breakthroughs (“Releasing a new product is like betting on a spin of the roulette wheel”)
  • Success stories from others increase feelings of anxiety, inadequacy, or resentment
  • Associates most frequently with other amateurs who are equally confused, having less frequent contact with professionals (group griping and pity parties outweigh true learning experiences)
  • Negative attitude rips many new ideas to shreds before they pass the incubation stage
  • Negative associations to building business (customers are headaches, too many responsibilities, being overextended, burning out, a risky gamble, can’t make money and do what I love)

Professional

  • Crystal-clear goals committed to writing (“Increase sales by 20 percent within 3 months”)
  • Deliberate cultivation of burning desire
  • Focus on filling customer needs and providing value
  • Accepts responsibility for poor results, seeks to understand causes and learn from them (registration incentives need improvement, product descriptions need rewriting, etc)
  • Seeks to understand causes of poor results and learn from them
  • Expends efforts on the most important actions (in terms of achieving goals) and finds ways to enjoy the process
  • Abundance mentality based on law of sowing and reaping (“Givers get”)
  • Long-range time perspective used in planning, often thinking five plus years ahead
  • Sees problems as opportunities
  • Persistent confidence and faith (“Success is inevitable”)
  • Balanced approach to improving multiple weak areas that detract from strengths
  • Understands that success comes from first being (successful in one’s thoughts), then doing (actions consistent with those thoughts), then having (results consistent with those actions)
  • “Once I believe I’m successful, the external results will naturally follow”
  • Strong commitment (“I will find a way or make one”)
  • Confronts brutal facts head-on (“Marketing is crucial to my business, so I must become a master marketer”)
  • Avoids unnecessary risks and bets on opportunities with the strongest chance of success while seeking to minimize the potential downside (“Releasing a new product isn’t a gamble; I’ll just keep refining it over time until it ultimately becomes a hit”)
  • Success stories from others are mined for new ideas and insights
  • Networks with focused and successful professionals, learning by osmosis
  • Associates most frequently with other focused and successful professionals, less frequent contact with amateurs (continuous flow of knowledge and ideas)
  • Positive attitude lets new ideas incubate in imagination before putting them to the test in the real world
  • Positive associations to building business (financial abundance, good life for family, early retirement, freedom, making people happy, fulfilling one’s dreams, giving to charity, creating jobs)

When results are weak, the amateur seeks security, comfort, and consolation. Amateurs want to know they aren’t alone, so they find safety in numbers by holding group griping sessions in forums that attract other amateurs. Their inner insecurity makes it very hard for them to accept failure, so they’re looking to put the blame elsewhere… on the failure of the shareware system, on the economy, etc. Amateurs look for validation of their position, seeking out “experts” who agree that success in their field is hopeless and that only the really lucky can succeed. When hearing of dismal sales from others, they feel more secure. Success stories are unnerving to the amateur, often making them feel anxious, envious, or resentful.

The professional, on the other hand, is emotionally secure. The professional seeks understanding and knowledge. The professional accepts personal responsibility for his/her results and is always looking to improve. When the professional suffers a setback, s/he wants to understand the causes, assuming that the reason for failure was a lack of understanding or skill that led to mistakes. The professional will suffer failures at least as big as the amateur, if not bigger, but the professional will learn from each experience and move forward with an even stronger plan.

You can’t tell an early professional from an amateur purely by looking at a one-time snapshot of their results. The key differences are internal. Professionals and amateurs who start from scratch may begin on the same footing. After the first year their initial results may appear similar. But fast forward ten years…. Most likely the amateur will have given up and left the business or is still barely eeking out a living. Meanwhile the professional has become an established leader with a strong, sustainable income.

So what is the essential difference between the shareware amateur and the shareware professional? It can be summarized in just one word: fear. The amateur feels vulnerable, believing that certain things might happen which s/he will be unable to handle. The amateur doesn’t want to deal with products that aren’t selling well, avoids facing his/her deepest inadequacies, and seeks to manage fear by clinging to the familiar and the comfortable. Instead of pursuing the greatest opportunities, the amateur pursues the safest and most comfortable paths. For instance, an amateur who feels more comfortable programming than marketing will heavily favor programming projects, whether or not that’s what the business needs most. The amateur ties much of his/her sense of self-worth to external factors, and when those factors are threatened, the amateur feels a strong urge to return to the safety of the comfort zone.

The professional, on the other hand, has internalized thoughts of security and abundance. The professional believes that no matter what happens, s/he’ll be able to handle it. The professional doesn’t cling to a comfort zone. When faced with change, s/he embraces it, seeks out the hidden opportunities, and charges boldly ahead. This isn’t to say that professionals never feel fear; they do. The difference is that professionals turn and face their fears instead of shrinking from them.

Amateurs will normally not be consciously aware of their fears. Such fears will be hidden behind rationalizations such as, “I simply don’t like marketing,” “I’m genetically disadvantaged when it comes to planning,” or “I feel like a scam artist when I write sales copy.” Thinking about such tasks and projects will typically make the amateur feel a sense of discomfort, anxiety, or even dread, but they often won’t consciously know why. When confronted about these shortcomings, the amateur will often become emotional, sarcastic, and defensive. But whereas the amateur addresses this problem by getting defensive and shrinking back into the comfort zone, the professional lets go of his/her ego and strives to become consciously aware of his/her fears, driving them into the open where they readily dissolve. A professional says, “I probably feel uncomfortable marketing right now because of my lack of experience, but I know other people who happen to love marketing. I’ll talk to them to see what they like about it, get some book recommendations, and within a few years, I’ll be outstanding at marketing as well.” Alternatively, a professional might hire or partner with someone else who has the skills s/he lacks, but the decision will be made out of awareness of this deficiency, not from fear and denial.

These models of the amateur and the professional are abstractions of course. Between them lies a continuum where real people can be found. Hopefully you’ll find the contrasts between these two poles helpful in continuing your own professional development.

1 Note that you don’t even reach $1000 per month until the 5th iteration!!!

Bio

Steve Pavlina is President of the ASP and CEO of Dexterity Software, an on-line game publisher dedicated to releasing retail-quality games through shareware channels. You can find Steve interacting with Dweep addicts at his website, Dexterity.com

Copyright© 2003 by Steve Pavlina

shareware,amateurs,vs,shareware,professionals

Game Development Workshop

Doug Holton informed us that the University of Texas, Austin is holding a game development workshop at UT-Austin during August 22-24. A $95 student registration fee if you register by August 1st. A lot of information is to be found in the press release or on the workshop description page. Also interesting is a weblog Doug started, related to programming and developing educational technology.

REALbasic: The Definitive Guide’ by Matt Neuburg

About REALbasic

I have had the distinct pleasure of learning to program my Mac over the last few years using an application called REALbasic (RB). RB is written and published by REAL Software, and is an object-oriented application development environment for creating stand-alone Mac applications. RB can be, and is, used by both professional and nonprofessional computer programmers. It is an excellent teaching platform for the computer sciences and has now matured to version 4.0 as of this writing. If you are the least bit curious about programming your Macintosh in a fun and understandable manner, download the demo of RB and take it for a test drive. RB, as part of its download, comes with a very well-written tutorial to get you started on your programming journey. However, if after trying the demo you subsequently decide to pay for the program, also leave $39.95 (US) for the ultimate resource to using RB and understanding how RB operates. It’s called ‘REALbasic: The Definitive Guide’ (RBTDG) by Matt Neuburg, published by O’Reilly & Associates.

The book covers REALbasic up to version 3.0. Although RB is up to version 4.0, this should not be viewed as a deterrent to ordering the text. The book does not include a CD-ROM, but examples can be downloaded via the author’s web site.

Just Like Wine

Like REALbasic, the second edition of RBTDG has also matured in a very positive manner, as it strives to keep up with the changes made to RB since the first edition. Errors and updated web links are presented to remain current. Although I have never met Mr. Nueburg, I feel like I know him a bit. He is a consummate professional (he has a Ph.D.), quick to respond to e-mails, caring yet tough in his replies to your questions. He is a man who is committed to REALbasic through both time and effort contributed to the cause of bringing information to the users of RB. If there is a fault to point out, he does it. If there is praise to be bestowed, he is quick to add it. His intellectual abilities and caring are poured into his books.

This book has helped me elevate myself from complete beginner to someone who now has an intimate understanding of the joy, craft, and art of a programmer. It is not a computer science textbook, although you will be exposed to some computer science techniques and theory. It is, as the title indicates, a guide to using and understanding RB. Other references will be required to get the full benefit of the examples and subjects covered, and Matt dedicates a page to referring the reader to some of these other sources both online and in print.

RBTDG has a total of 747 pages; it is thorough reference book. Some of the items covered are, of course, redundant from the topics with which RB provides the user (via its on-line reference guide, PDF tutorial, 530 page Developer’s Guide, and 578 page Language Reference). However, this is just a natural way to introduce the material and proceed to delve into it in a deeper manner. With RBTDG you get something you would not from the makers of RB, which is constructive criticism. Matt is never one to hold a punch, and if there is something that he does not agree with, he will let you know in no uncertain terms. Many of these issues are left to the pundits of software design to argue over, and they can get in the way sometimes. More experienced programmers will appreciate the cautions, others need only skip over it.

Plenty of Good

The book has a total of 32 chapters that are divided into three sections. Part One, with chapters one through eight, is Fundamentals. Titles include “The BASIC Language” and “The Architecture of an Application”. Part Two, User Interface, encompasses chapters nine through twenty and includes the titles “Canvases” and “Keyboard”. And Part Three, Reaching Out, contains chapters twenty one through thirty two, which cover topics such as “Files” and “Drag-And-Drop.” This second edition adds “Growing An Application” as an Appendix chapter. The application Matt grows in this appendix is a nifty tic-tac-toe game.

The most enjoyable topic for me was definitely the chapter on using the Canvas classes and their associated graphics property. Getting your computer to draw things is just plain fun, and not terribly intuitive, but it takes a bit of practice and insight to get things to look and behave right. Matt presents a wide variety of the techniques you can use to draw and has a lot of example projects in this book and on his web site.

Surpassing the Original

Visually, this second edition has much clearer figures, featuring the spiffy Mac OS X interface and adding nice drop shadows to the figure depictions. The old turkey and owl bullet icons that visually pointed out certain items have been replaced by a bear trap (warnings or cautions) and bear paw tracks (tips, suggestions).

Since the first edition was published, Matt has been diligent in providing readers (via his web site) with updated web links, new examples, and corrections for errors. He also frequents the RB New User Groups and Bulletin Boards. He will respond to your direct e-mails, which is a rarity for authors from O’Reilly. His accessibility to his readers can only be regarded as appreciative by me and the numerous RB users he has assisted. This is clever on his part, since this is how he hones in on what items he needs to address in his book. So many newbie questions posted in the NUG’s are answered by, “please refer to page xx of my book for an explanation of this problem.”

The example programs are Matt’s. He goes out of his way to create unique sample projects of his own device. These projects are available at his web site. Personally, I prefer this method to CD-ROMs as you only download what you want, when you want it, and are assured of the most recent updated versions.

The Verdict

This book is a no brainer—if you want to use and learn REALbasic, buy RBTDG, you will be glad you did. It is the BIBLE for Real Software’s product.

Written by Matt Nueburg

670 pages 2nd edition (October 15, 2001)

O’Reilly & Associates

ISBN: 0596001770

realbasic,the,definitive,guide,neuburg

Game Developer Conference 2002 Report

gdc0201.gif

Game Developer’s Conference

Work as a Conference Associate

Once again, after a one year hiatus, I volunteered as a Conference Associate for the Game Developer’s Conference (GDC). Being a Conference Associate (CS) is a great way to go to the conference for free. First, for 20 hours of work, you get the equivalent of a Giga Pass (a $1700 value). The work can be hard, but its usually fun. The first two days were the tutorials. Having an interest in the academic side of things I went to see (and work at) the IGDA Academic Summit.

gdc0202.gif

IGDA

Academia and Entertainment

The IGDA’s education committee is trying to do for games what the SIGGRAPH education committee does for computer graphics: establish ties between academia and real world practitioners, establish a core curriculum of study that touches on all facets of the games industry (developing, critical review, etc.) The second day of the tutorial had a few schools give an example of their curricula already in place. Digipen showed what they are doing (a “real world” boot-camp for training developers), The Hong Kong Polytechnic University showed how they are involving their students in real development. Headed by Gino Yu, this program aims to give students the real world skills to come out writing games. MIT’s Comparative Media Studies (not to be confused with MIT’s Media Lab) program, headed by Henry Jenkins, is looking at games as a creative endeavor. Their program seems to be rooted firmly between philosophy and creation. It looks like a compelling program. Georgia Tech’s Masters in Information Design and Technology (a fancy way of talking about games and related media) is a real research institution giving students a real chance to explore what is a game.

gdc0203.gif

Digipen

They, like the MIT program, are very interested in both sides of the equation: the philosophical “what is fun?” side as well as the raw “how do I create a game?” side. Cornell’s Entertainment Technology Center (ETC) was very exciting. Randy Pausch and Don Marinelli co-direct the center, and their differing personalities define the program. Don is the geeky programmer type, Randy is an out their tie-dye wearing artist type. Together they have created a masters program that really pushes students to examine the creative use of technology. Their core courses consist of: An improv acting class (makes sense as improv is the first real interactive entertainment) an art class for incoming programmers and a programming class for incoming artists. The last “classroom” course required concentrate on business. Then, they work on solo and group projects; as they create some amazing things (including an interactive music LBE for San Francisco’s Exploratorium). One of the themes of the summit was: “Employers want specialists that also know everything” and tried to focus the efforts of any games development curriculum on the fact that just a CS degree won’t do it, nor will an art degree or business degree. The standout game developers may specialize in one area, but have great insight into all other areas of game development.

GDC Sessions

Thursday started the “Classic” GDC, with hour long sessions on all aspects of game development. There are five track:

  • Programming
  • Audio
  • Visual Arts
  • Game Design
  • Business/legal

gdc0204.jpg

Maya Booth

Photo courtesy of the Game Developer’s Conference

When I wasn’t working, I tried to go to either Game Design or AI focused sessions. The AI sessions were uniformly interesting and relevant. The Halo AI team explained how they made their agents seem so real (they cheated!) Basically, the enemies had a state machine with only two states: attack and defend. The AI then used markers in the terrain to determine where to go. (i.e. a rock would say “Hide behind me”) or an enclosed space would say “throw a grenade in here” which allowed for seeming intelligent behavior to be embedded right into the level design. Also, the AI roundtable (always a popular event) had the AI teams from Halo, Thief and Deus Ex, Black & White, Dungeon Siege and many others (famous and not so famous) discussing the state of AI in games today as well as offering hints and tips. I also attended the roundtable on scripting languages. And I was surprised that nearly everyone wrote a new scripting language that was domain specific. Very few used off the shelf languages like Small1, Lua, Java or Lisp. There was also a spirited discussion of whom the language should be targeted at: designers or programmers. There was a very vocal camp that said “Artists can’t program, they don’t like it and shouldn’t be made to do it” there was another, less vocal, group that declared that artists can do things programmers wouldn’t think of. And then there was the minority (me included) that decided it was up to individual teams to select what was appropriate—a spirited and informative session.

gdc0205.gif

Rendware

The Conference Expo

The Conference Expo also started on Thursday. The theme for this year’s conference expo should have been “MiddleWare.” Renderware, Intrinsic Alchemy and NxN all had monstrous booths and lots of schwag. nVidia and ATI were each trying to outdo the other. I asked both about the status of cool extensions like vertex shaders and pixel/fragment shaders for the Mac. nVidia was nice enough to answer that they were waiting for Apple, the ATI guy couldn’t care less about me once I mentioned Macintosh. I also queried both on 3dLabs’ white paper on OpenGL 2.0. nVidia said that standardizing the interface to programmable hardware would be good, ATI said that DirectX and OpenGL extensions should be good enough. ATI also said that they would follow the OpenGL 2.0 standard once it was finalize (ATI is a member of the OpenGL ARB) Microsoft was swinging the whole of it’s marketing weight behind the Xbox. They sponsored parties almost every night, their booth was more exclusive than a trendy New York nightclub. And every available inch of wall space around the convention had Xbox logos on them. Microsoft schwag was mostly cheapo stuff this year: pens, mints, t-shirts; but there was tons of it. On the other end of the spectrum—Apple.

gdc0206.gif

Xbox

Apple — MIA

Because of Macworld Tokyo, Apple had no presence at the show. No booth at the Expo, no sponsored sessions touting the Mac as a gaming platform. In fact, on the expo floor there were exactly two Macs! A flat-panel iMac hidden in a corner of nVidia’s booth and one monster tower doing demos at the Maya booth. No Macs at the ATI booth, no Macs at the Metrowerks booth (in fact they didn’t have anyone at the Metrowerks booth that knew anything about the Mac side of things) However, it is definitely worth noting that there were many TiBooks at the academic summit. All the academics had a TiBook (geeky and artist types alike) I spoke with John Sonstein from the Rochester Institute of Technology, and he said that when Mac OS X came out “it was a no brainer, I have everything I need—Unix, a very productive environment, and it runs great on this laptop” Randy Pausch reiterated saying,“I’m so glad to have a computer I can really use.” Hopefully this bodes well for Mac Games in the future.

Hobnobbing

The real reason to go the GDC is for the networking. I had conversations with Will Wright, Warren Spector, Todd Hollenshead, Dave Wessman, Jason Della Roca as well as many very bright individuals. Also, when working a session, you have to introduce yourself to the speakers and make sure everything is good for them. Again, you can use this opportunity to begin a dialogue. For example, on the first day when we were all stuffing bags for conference attendees I stood near two women talking about what they did. It turns out that one is a musician looking to sell her art and the other is a distributor looking for new musicians.

2nd Annual Game Developers Choice Awards

  • Game of the Year — Grand Theft Auto III (DMA Design/Rockstar Games)
  • Rookie Studio of the Year — Bohemia Interactive Studio for Operation Flashpoint
  • Original Game Character of the Year — Daxter from Jak & Daxter: The Precursor Legacy
  • Excellence in Audio — Marty O’Donnell & team for sound effects in Halo: Combat Evolved
  • Excellence in Game Design — GTA3 team for game play in Grand Theft Auto III
  • Excellence in Level Design — Fumito Ueda & team for level design in Ico
  • Excellence in Programming — Richard Evans for artificial intelligence in Black & White
  • Excellence in Visual Arts — Fumito Ueda & team for art direction in Ico
  • Game Innovation Spotlights — Black & White (Lionhead Studios), Grand Theft Auto III (DMA Design/Rockstar Games), Ico (Sony Computer Entertainment, Inc.), Majestic (Electronic Arts), Rez (United Game Artists)

Three special honors, selected by the Game Developers Choice Awards advisory board, were presented at the awards ceremony:

  • Lifetime Achievement Award — Yuji Naka, president and CEO of Sega’s Sonic Team, for the innovative and award-winning work he has produced during his career, including the creation of Sega Hedgehog.
  • First Penguin Award — Hubert Chardot, for his risk-taking work on Alone in the Dark, a game that started the “survival-horror” genre.
  • IGDA Award for Community Contribution — Jeff Lander, for his writings on game development, community building efforts and student outreach.

1 An embedded scripting language now called Pawn.

game,developer,conference,2002,report

Macworld Tokyo 2002 Report

The Flip-flop

mwtokyo0202.jpg Carlos and Miwa

Images from the our WAP phones

Attending the Macworld Expo in Tokyo is like buying the latest soft drink from the numerous vending machines found on every street in Japan; sometimes you hit upon something that not only claims to be delicious—but is, and sometimes you wish you hadn’t spent your 120 yen. I’ve been attending the show in Tokyo for a few years now, and after last year, I vowed to stay away from this year’s show. High on my list of reasons not to go was the lack of any expected major news. Where was the buzz among the rumor sites? It seems that the Tokyo show is becoming more and more of a bore each year as Apple announces major products during the US shows.

In addition, Japan’s economic condition is getting so severe that I expected many no-shows among software and hardware developers. So what changed my mind with only one day to go? It was my curiosity over Apple’s planned “Mac OS X Game Arcade” corner. With several publishers such as Ambrosia Software and MacPlay also in attendance, it seemed like a great opportunity to meet the people behind these names, as well as the Apple employees who are helping to make the Macintosh an attractive gaming platform.

Keynote Review

With mission in hand, my wife Miwa and I set out towards Tokyo from the southern island of Shikoku at 3:30am—the day of the keynote. To my disappointment, we were 45 minutes too late to watch the keynote. Since I missed the speech, I headed to the pressroom to obtain some Apple PRs. There, I met Bryan Chaffin, Editor-in-chief of the online Mac site, ‘The Mac Observer”:http://www.macobserver.com/.” Since most of you already know what was announced, I will provide you with my ‘Japanese’ perspective on the keynote speech.

iPod

This is a hit product for Apple in North America and it only looks to be getting better. That said, I can’t help but wonder if the current iPod makes sense in the Japanese market? Although the floor was littered with accessories for the Japanese “otaku,” I’m not so sure if the iPod will reach beyond this group. This stems from a few observations of the Japanese consumer market:

  • The mini-disc (MD) format is very entrenched in the 12 to 26 age group
  • The expanded contact<a href=“> features are nothing new to even the most basic mobile phones in Japan
  • Size does matter (in Japan’s case, small is key). With Japan moving towards 3G cellular phone technology, I think that the product that will be in demand is the MP3-capable phone handset.

Bluetooth

Not too long ago, I was running around asking when Apple would add Bluetooth to their machines. Japanese PC and mobile phone makers have been releasing limited Bluetooth products for over a year now. Perhaps Apple’s move will help speed up the adoption of this wireless technology in the consumer market. If you’d like to learn more about how Bluetooth works, check out the site ‘How stuff works.”

Keynote Speakers Wanted—Japanese Developers Need not Apply

mwtokyo0203.jpg

Carlos Searching for Miwa and bargains

That title is a little rough, however it best describes what Apple has been doing during their Macworld keynote speeches. Companies with crucial Mac applications such as Adobe, Microsoft and Macromedia are always welcomed onstage, as they should be, however it seems to me that Apple is forgetting about local developers. It’s important that Apple nurture and support Macintosh development in Japan. A healthy local software market will lead to a more attractive platform—something that obviously benefits Apple.

Let me take a moment to spotlight some of the key developers in Japan. (If you’re not interested in the Japanese market, then you should be, as it accounts for the second largest market for Apple outside the United States.)

Justsystem Corporation

Years ago, when you thought of word processing, one name came to mind-Ichitaro. In fact, every office in Japan I have worked in had a license for Ichitaro. Like many companies though, they were faced with a serious foe that trampled them. If you guessed Microsoft, then you guessed correctly. Interestingly enough, they still sell a Mac version of Ichitaro, but it hasn’t been updated in some time. The reason why they are still important to the Macintosh is for ATOK, the leading Japanese input system (the first Mac OS X application I purchased) and the “JustHome” home budgeting series. JustHome isn’t available for the Macintosh (Windows only)-but it should be. Just as Apple needs Quicken in America, I feel it needs JustHome in Japan.

Ergosoft

A long time rival of Justsystems, their latest products, EGWord Series (word processor) and EGBridge (Japanese input software) run on Mac OS X. It is interesting to note that unlike many US developers that have been taking their sweet time to support Apple’s new OS, these guys have been on the forefront of the Mac OS X revolution.

Agenda

This company has several applications and was best known for its postcard creation software (a huge business in Japan). Their home budgeting software “Papatokakeinouto” has been available for Mac OS X for some time now.

E-Frontier

This company has been increasing its share of the 3D market in Japan at an incredible pace. They offer their Shade 3D product in several versions, ranging from beginner to pro-level. What’s better, they are now selling English versions as well. (See the 3D section for more information on this company.) Unfortunately I don’t have the space to list all the companies that would do a great job at representing the Japanese Macintosh industry. However, the list above should be a great place to start.

The Mac OS X Game Arcade

mwtokyo0204.jpg

Mac Developers

Left: Carlos Center: Matt Walicke of Ambrosia Software

Right: Dafydd Williams of ATMOS Software

While the majority of visitors to iDevGames are game developers, we get our share of users who are interested in Mac games. So it’s logical that I next cover Apple’s effort to promote the “fun side of the Macintosh. As ‘Inside Mac Games“ reported, several top publishers were demonstrating (or were they playing?) their games at the arcade. Ambrosia Software featured Deimos Rising, Escape Velocity Nova and a game under beta called Pop-Pop. I spent several minutes studying the beautiful background tiles in Deimos Rising, which I heard were rendered in Bryce. Pop-Pop features a great multiplayer mode and cute graphics. “Inside Mac Games” has a complete preview posted on this very addictive title. The Escape Velocity Nova crew were the most enthusiastic developers at the arcade. Luke Smart and Dafydd Williams managed to transport me to another universe with their explanation of the game’s mechanics and the development process. The game is deep and contains a storyline richer than anything from “Skywalker ranch.” With promises of a postmortem from them and way too much Sci-Fi in my brain, I turned around and came face-to-face with the ‘Terminator.’ Actually it was Andrew Welch, el Presidente of Ambrosia Software, Inc.

The concept of the Mac OS X Game Arcade was the brainchild of Apple’s Consumer Games Marketing Manager, Richard Hernandez. We talked at great length about Macintosh games and I was very pleased to see that Apple placed such a capable individual in his position. Since there was little said about the Mac OS X Game Arcade in the Macintosh media, I’d like to cover some of the points that could lead to an even better arcade for the next show.

It was obvious that the arcade was displaying Macintosh games, but what wasn’t obvious was that the games were running on Mac OS X. In speaking with several Japanese visitors, I realized that the majority of them didn’t realize that the games were running on Mac OS X. A few even commented that there were no games for the new operating system. This might be a common misperception outside of the “gaming world” (i.e. the occasional player), and one that the Mac OS X Game Arcade could have helped to demystify. Solving this problem would have been as simple as placing a poster in Japanese at eye-level stating that this was indeed an arcade featuring Mac OS X games. Although many Japanese have trouble communicating in English, most are adept at reading it. However, it would have made more sense to list the game titles and publishers in Japanese at every Mac in the arcade. I think this would have helped to reinforce the game in the visitor’s mind—something I’m sure the publishers would want.

mwtokyo0205.jpg

Ambrosia Software’s Pop-Pop

The next issue centers on “the right content.” It doesn’t take a marketing major to understand that some products will not do well outside of their original market. Localizing and customizing a product are often required for success in business. Thinking along these lines, I felt some games just didn’t appeal to Japanese Macintosh users. This was caused by difference in culture, lack of localizing, or lack of “console polish.” I don’t want to target any game in particular, but it was obvious that some games didn’t have a crowd of six to eight people deep.

Unfortunately, many publishers overseas are convinced that popular titles in their markets will be sure hits in Japan. In some cases this is true (i.e. The Sims) but not in all cases. For the most part, my wife (a very typical iMac owner) passed on many games that I was ‘mesmerized by.’ Lack of console polish is a bit harder to explain. The best example of a developer who understands this is Pangea Software. In fact, their latest game, Ottomatic, was one of the few games running on Macs outside of the arcade area. Pangea Software’s titles are perfect for an expo: nice eye candy, easy controls, and gameplay that can be learned in 20 seconds. No doubt this is one of the reasons why Apple bundles their games with the iMac. Pangea Software’s games also boast user-interfaces that make gamers who are accustomed to consoles feel at home. The topic of game consoles leads right into the last issue, game controllers. I realize that this might be related to issues with the Mac OS X HID Manager1 but the arcade was really in need of them. Some games are of course better suited for a mouse, however Apple and its developers need to work together to find a solution to this dependence on the keyboard (and/or mouse) for Mac OS X gaming.

Again, I want to emphasize that Richard Hernandez and Apple should be commended for bringing the publishers and developers to Japan to highlight gaming on Mac OS X. This was an important first step, and I look forward to seeing the arcade grow with each new show. Perhaps next time, Japanese user groups can be recruited to help guide the visitors through the many games that will be appearing on Mac OS X or Apple can set up multiplayer networks.

Music on the Floor

Since my interest in the Mac extends to music, I set out to visit the booths that were making the most noise. As with game developers, many software and hardware developers have been affected by the move to Mac OS X (actually, probably even more so). Just as graphic artists are waiting for Photoshop and Quark on Mac OS X so they can fully migrate, so too are musicians who rely on audio heavyweights such as Logic, Performer, ProTools and Cubase. Mac OS X audio apps are being released at a trickle, but hopefully by next year most of players will be on board.

For my own use, I have been shopping around for a product to bring audio in and out of my desktop G4. There are many options ranging from PCI cards, USB devices and a Firewire-based interface (MOTU 828). Each choice seems to contain its pros and cons so I was hoping that talking with the manufacturers’ reps would clear things up-it didn’t. Like me, I think many audio people want a Firewire-based solution, however we don’t need the extra features of the MOTU 828. It seems that we all crave the same thing, which is an under$400 Firewire device; I’m convinced that any company that makes such a device will clean up. Mark of the Unicorn or MOTU, as they are commonly known (love their original website), had a great booth and demo. However, as my question of “Why don’t you make a MOTU 414?” went unanswered, I moved on to Yamaha. This was their worst booth in recent memory. They seemed to be bored; perhaps it was from the industry waiting to adopt their mLan technology. Working under the Edirol brand, Roland had an attractive booth that featured their USB audio devices as well as software. Their UA-3(0) has been a popular low-cost device with musicians wanting to get sound in and out of their Macs for some time. Some Mac users have cautioned against using USB for audio work. However, I listened to Edirol’s USB devices for some time and felt they would be great for the work I plan to do (working on sound and music for games).

mwtokyo0206.jpg

Audio Solutions

Left: Storm and its many virtual instruments and effects

Right: Spark LE running on Mac OS X with Roland USB hardware

If you are one of those users who have been searching for a Macintosh surround sound solution, yet found the USB Emagic EMI 2|6 a tad too high, you may be interested in the new UA-3D2. Edirol’s UA-5 is also an interesting USB device. Unlike the UA-3 model, you get a 24-bit/96 kHz AD/DA converter and XLR type connectors.

The Edirol drivers support ASIO 2.0 and Sound Manager audio applications. Speaking of the driver, the Edirol staff said they are rock solid and provide low latency. Mac OS X compatibility was, however, still in beta testing. I’m going to recommend Edirol to users once they get on board with Mac OS X and provide a better Mac software bundle for their audio interfaces. Before leaving Edirol’s booth, I watched a demo of Storm. If you’ve seen Propellerhead Software’s Reason, then you will have a good idea of what Storm is. The developer of Storm, Arturia, announced support for Mac OS X at NAMM 2002. If you’re a game developer in need of a complete audio studio, check out either Reason or Storm.

One vendor I was surprised to see was M-Audio (A division of Midiman). This company markets various audio and MIDI interfaces. Their Audiophile 2496 card is one heck of a bargain if you need a high quality PCI audio card. Although far from perfect, M-Audio should also be applauded for their Mac OS X drivers. Now, if only Echo Audio would follow suit with their audio cards. (I’m planning on getting either an Audiophile 2496 or Echo Audio’s MIA card for my music studio.) Before I leave the world of audio, I’ll put in a little plug for the music sequencing instrument called “Live” by Ableton. Apple should bundle a light version with each Mac—it’s that cool.

The Third Dimension

The Macintosh 3D market is a funny thing. For such a niche field, there seems to be an abundance of players and saviors, as my past editorial pointed out. Despite recent troubles, Alias|Wavefront had an impressive showing and was giving away Maya Personal Learning Edition to attendees. Maxon’s Cinema 4D line and Strata3D (still no Mac OS X version) were also being demonstrated. I felt that the Cinema 4D people were very knowledgeable and did the best job of localizing their presentations. NewTek’s LightWave booth featured the Star Ship Trooper all-CG film and some unattended workstations. (Or was the staff hiding from me?) Anyhow, it was a far cry from a year ago when their demos almost made me switch from Strata.

The 3D application that made the largest impact was Shade 3D by the developer I introduced earlier, Expression Tools. Shade Professional, and now Shade Personal, are shipping in English. (You can download a demo from their website.) If they manage to find distributors in North America and Europe, I expect them to give serious competition to the 3D vendors from above as well as Electric Image and form-Z. Apart from Maya, Shade and the CAD program VectorWorks, the 3D world was a tad boring this year. Perhaps if Pixologic, Eovia or Hash showed up, things would get more interesting. Finally, the Japanese distributor, Image One, that handles Electric Image, form-Z and Cleaner5 was demonstrating Vue d’Esprit 4 by e-on Software. This was my first glimpse at the program, and after the demo, I learned two things:

    • I couldn’t pronounce the name.
    • The rendering was better than Bryce.

How to Catch a Japanese Otaku

mwtokyo0207.jpg Microsoft Companion Girls

Microsoft asks“Where would you like to go with them today?”

If you’ve never been to an expo in Japan, be warned-the companion girls may drive you crazy. Depending on who you are, that may be good or bad. What is a companion girl exactly? They are sometimes called “event girls,” but for the most part, the Japanese refer to them as companion. They come from all walks of life: professional models, race queens (ie. the girls who hold the umbrellas), students, and I will stop there. Often wearing flashy and tight matching skirts, their role is to entice Japanese otaku to their company’s booth so that product literature can be handed out. If you have the courage (or if your wife is on the other side of the show), you can even ask them to pose with you (or for you). This of course has nothing to do with the Mac, but even at a Mac show, you should be prepared to meet the hordes of companion girls. One last point about companion girls; Apple doesn’t employ them at their booth. You will however find them at other US-based companies such as Adobe, Microsoft and Symantec-who in my wife’s opinion had the most busty girls at the show. (Editor’s note: I can confirm that they were. Log your complaints to http://www.symantec.com/feedback/.)

Back to Business

Now that I managed to wake you up, I will cover some of the vendors who attended the show, and some that didn’t. With a much smaller presence than I can ever remember, Metrowerks’ booth (or should I say counter?) was easy to miss. The two reps were nice but didn’t seem prepared to answer my questions on CodeWarrior 8. (Perhaps because the tech rep was from the embedded systems group.) I did learn that it would be released around May. As for CodeWarrior Learning Edition, it seems that there are no plans to upgrade it to Mac OS X. Adobe and Macromedia seemed to be outdoing each other for the “I can make my presentation feel like a Japanese college classroom the most” award. What I mean is that these companies tend to approach the show from a “we speak, you listen” mentality. Believe it or not, they could use some pointers from Microsoft, which did a good job of spoon-feeding as well as letting users play around with Mac Office X.

Filemaker seems to truly understand the needs of the Japanese market. Although everyone I know uses Microsoft Access-J, Filemaker’s support for iMode should be a big hit with Japanese mobile ASPs. iMode is NTT DoCoMo’s mobile internet access system, which has over 27 million (as of Oct 4, 2001) subscribers, increasing by about 40,000 per day. Their demonstration showed how easy it is to move a database between various platforms (Mac, iMode, PDA, etc).

Two names that were curiously missing from the show were Epson and Canon. Both imaging heavyweights always have a large booth at Macworld. I would expect Lexmark or even HP to skip a show during hard times, but not them. The show seemed smaller without the bitter rivalry of Epson and Canon, an observation echoed by long-time resident of Japan and member of RINGO (Tokyo Mac Users Group), Richard—a great Mac user who allowed me to use his iMac during the show to upload a report.

Final Thoughts

mwtokyo0208.jpg Aminaturon

Aminaturon is cute and fun to play game

It is strange that I struggled with the question of whether I should attend or not. In the end, I was very pleased that I went. Although there weren’t any surprising products or news during the show, the opportunity to network with people in the industry made the trip very worthwhile. For example, I was finally able to meet Richard Kerris of Apple (Developer Technologies, Worldwide Developer Relations) who I met online through my editorial “Looking at the Macintosh 3D Market.” I’m also grateful to Richard Hernandez for setting up the game developer dinner party. I’m looking forward to attending more of these ‘events’ to help foster a stronger community spirit!

Overall, the best of the show for me was hidden in the user-group corner. With a single iMac and a stack of CD-Rs with his latest arcade 2D shoot’em-up game, Mr. Nita, a Japanese lone-wolf developer, was truly fascinating to meet. His game, “Animaturon” cost only 1,000 yen (about $14) and runs on most low-end machines. Although the requirements to run the game are modest, Mr. Nada’s programming skill has really pushed the Macintosh hardware. What surprised me the most was that he began development at the beginning of February! In addition, his design diary (document) was the best I’ve ever seen. It resembled something right out of Walt Disney with its many detailed cartoonish diagrams. With a little more polish, Animaturon could have passed for an Ambrosia Software title—yep, it was cute and had fun gameplay. I mentioned that his game reminded me of the fast 2D blitters of the 16-bit generation consoles. He confessed to being a big MegaDrive (Genesis) fan and had a goal of bringing fast-pace retro style games to the Mac using his custom “gShot” game engine. Sounds good to me!

Before I sign-off, I should thank my wife Miwa for helping me cover the show and for lasting as long as she did despite suffering from the flu and a fever! She enjoyed meeting the Apple staff and Mac game developers, especially the president of MacPlay. She affectionately said to me, “He sounds just like Steve Austin from the WWF.” Might it have something to do with MacPlay’s address—Dallas, Texas?

Show Awards

mwtokyo0209.jpg Playing Pop-Pop

Worse Pop-Pop player at the show: Carlos Camacho

mwtokyo0210.jpg Bluetooth

Biggest unexpected announcement: Bluetooth

mwtokyo0211.jpg G3 Server

Mac most likely to be purchased by our forum regulars: G3 Beer Server

mwtokyo0212.jpg eMate

Best “Blast from the past: Apple eMate

mwtokyo0213.jpg Best Companion Girl

Best companion girl of the show: Roxio (the “Toast” people)

mwtokyo0214.jpg Ultra-hen girl

Most annoying (and tacky) companion girl of the show:

Symantec (for shame, for shame)

mwtokyo0215.jpg VR Man

Best “Otaku” of the show: Mr. VR Man

mwtokyo0216.jpg DJs at Filemaker

Presentators most likely to be mistaken for DJs: Filemaker Inc.

mwtokyo0217.jpg Clone of Carlos

Advertisement that most resembled our Editor-in-chief: Apple Inc.

mwtokyo0218.jpg The iTour

“Only in Japan” award:The iTour people

Gallery

mwtokyo0219.jpg Filemaker and iMode

Mac OS X Game Corner: Great to see Apple putting support behind gaming on the Mac

mwtokyo0220.jpg Is there life beyond EVN?

Left: Luke Smart of ATMOS Software talks about the meaning of the universe

Right: Carlos stands in awe

mwtokyo0221.jpg Developer’s Party

Left: Dafydd Williams of ATMOS Software

Center: Miwa

battling a fever

Right: And editor who’s drank too much

mwtokyo0222.jpg Apple Car

Left: Possible color for the next iMac?

Right: Carlos pondering which mode of transportation to take to the show

mwtokyo0223.jpg Sick Miwa

Background: Something rarer than a Chupacabra

Bottom: Fever taking hold of Miwa

mwtokyo0224.jpg Looking at iDG

Background: iDevGames at the Apple booth

Foreground: An Otaku

mwtokyo0225.jpg Metrowerks’ Crew

Left/Center: Ms. Kimura and Mr. Watarai of Metrowerks

Right: Someone who’s been in too many pictures

mwtokyo0226.jpg Alias-Wavefront and Strata

Left: Maya dazzles the crowd with features and price tag

Right: Strata 3D Pro creating FLASH movies

mwtokyo0227.jpg Rich Hernandez of Apple

Left: Richard Hernandez of Apple (The man with a gameplan)

Right: Someone talking about uDevGames 2002 contest

mwtokyo0228.jpg Richard Kerris of Apple

Left: Rich Kerris of Apple

Camerawoman: A very patient wife, Miwa

1 Allows access to gamepads, joysticks, etc.

2 The UA-3D lacks multiple outputs.

macworld,tokyo,2002,report

Carrara Studio 1.1 by Eovia

Carrara Studio

Welcome Back

Carrara was a 3D modeling and animation package originally launched during the final days of MetaCreations. Rebranded as Carrara Studio, the program is now under the control of Eovia, developers of the advanced modeler Amapi 3D. Eovia has enhanced the successor of the former best-selling Mac 3D applications Ray Dream Studio and Infini-D with numerous bug fixes. Having descended from the GUI world of MetaCreations, users will find many similarities between Carrara Studio and Bryce, as well as Poser. Eovia has done a worthy job in bringing the power of 3D to the masses with Carrara Studio’s workflow design and value-added goodies.

Installation

Carrara Studio ships with two CDs — an application CD and a content CD. The application CD contains the Carrara Studio 1.1 Installer and documentation, plus a completely functional version of the modeler Amapi 3D. During the installation process you can select to install the Smart Pack, QuickTour, help files and some other goodies. The Smartpack contains 25 third-party plug-ins that offer such features as cartoon rendering, advanced procedural shaders, and noise tweener. A complete installation of Carrara Studio will require 85.5MB of hard drive space. Eovia recommends a minimum of 64MB of RAM, however with most 3D applications having more will lead to improvements in modeling and rendering. The content CD is an extra bonus featuring additional objects, a UV mapping program, and textures. In addition, it also showcases the art of Eovia and their users.

The Interface

Carrara Studio Interface

You have the option of going through a QuickTour when the program is first launched. It is extremely helpful as it teaches the fundamentals of the program: 3D workspace, navigation, interface, tools and trays, spline modeling, arranging objects, shading, lighting, animation and rendering. In the world of 3D, applications generally fall into three camps: separate application programs (i.e. animation and modeler), one application with a main work window, or one application with several “workflow” sections. This latter approach is the method employed by Carrara Studio. The process of creating, texturing, animating and rendering a model are all performed in unique compartmentalized steps called “rooms.” Although some designers debate this approach to creating 3D art, a strong argument can be made in its favor based on the idea that the simplified interface presents only the tools needed for a given task. In addition to improving the workflow of advanced users, the “room” concept offers an easier learning curve into the world of 3D for beginners. A side benefit from Carrara Studio’s interface is the removal of the constant need to resize or reposition windows to conserve screen real estate, a problem that seems to plague many graphic applications. The five rooms which cover every function of creating 3D art include:

REALbasic 4 by REAL Software

rb01.jpg REALbasic

REALbasic 4.0 — Does It Got Game?

REALbasic is a Mac OS-based Interactive Development Environment (IDE) that creates compiled applications for Mac Classic, Mac OS X and Windows. It has been around as a commercial product for almost four years and has grown into a very popular alternative development platform. The IDE itself runs on either Mac OS X or Classic. The BASIC language in REALbasic is only loosely based on the original BASIC syntax. It is strongly typed (meaning you have to declare every variable before you use it), and it allows, but doesn’t force, Object Oriented Programming (OOP) practices. This review will focus on using REALbasic as a game development platform.

Installation

Installation is a breeze; move the new REALbasic folder onto your hard drive, transfer any plug-ins you may be using from the old plug-in folder to the new one and you’re done. It is recommended that Mac OS Classic users increase the memory allocation, especially if you are using lots of sounds and graphics. I have mine set to about 45MB. REAL Software offers a limited-timed demo of REALbasic on their website. (Electronic documentation is also available.)

rb02.jpg The REALbasic Interactive Development Environment

What’s New In REALbasic 4.0

While 4.0 did include a fair amount of new features, the main focus of this release was squashing bugs and rewriting problematic features. IDE improvements include:

  • Improved Build Application process including the ability to compile for all three target systems with one request.
  • Improved Code Editor and Browser including removal of annoying flickering, better undo/redo handling, and the ability to Option-Click just about anything and have its name automatically placed in the code editor!
  • Improved compiler error handling including caching the use of the Resource Fork when compiling for Windows.
  • External Project Items is a new feature that allows you to have REALbasic resources stored outside the project file instead of being stored internally. This allows easier use of shared code libraries and team programming.
  • An Advanced Find dialog that allows you to search for declarations, external project items and control names. Also, you can now limit the search to selected code in addition to the project, item, and method search scopes.

User Control improvements include:

  • EditField improvements
  • A completely rewritten ListBox that has many new features and is much more stable across platforms.
  • Addition of fog in the Rb3D engine.
  • Volume and Pan capability added for sounds.

In general, the overall stability of compiled applications has improved quite a bit. There are exceptions and we’ll get into them later. The IDE itself is pretty stable, but I did experience freeze-ups when working with complicated programs. The problems I had were most likely caused by errors in my code, however it would be nice if the IDE handled error catching a bit more gracefully.

rb03.jpg Use of Canvas as Indicator

Game Development Features

REAL Software has done a great job at adding features which should make the package more appealing to game developers. REALbasic has the ability to create games in many genres, including real-time 3D.

rb05.jpg Canvas Control

Canvas Control

The Canvas control is a jack-of-all-trades graphic object that you can draw on, load a photo or rendered graphic on, and that can detect various events like mouseDown, mouseUp, mouseDrag, etc., which allow for interactivity. In my spacecraft simulator, “A-OK! The Wings of Mercury”, every switch control and gauge is based on a Canvas control. On the mouseDown event, I detect what side of the canvas was clicked and simply draw the pre-rendered picture that represents the correct switch position. For gauges, a little sin/cosine math and the drawLine command does the trick. New with 4.0 is the additional events that the Canvas control can now detect, adding to its utility. Previous versions required you to detect events like mouse down in the window where the Canvas control was placed.

As the Canvas allows for flexibility in displaying graphics as sprites, it can serve as the basis for creating Real Time Strategy or Role Playing games. A simple example of this can be found at Joe Strout’s programming site.

rb06.jpg Movie Player

Movie Player

Remember Myst? Most of the animated effects were pre-rendered QuickTime movies played on top of a static graphic. The MoviePlayer control handles any file that QT can handle, including QTVR (although you have to handle the pan/zoom control via the QuickTime libraries instead of direct REALbasic syntax).

REALbasic also allows you to edit QuickTime files. While the obvious application is to build a video editor, the real advantage to game developers using QuickTime movies is that you can edit and add special effects on the fly. Yes, some of this is time-consuming, but movies can be built into the background.

rb07.jpg NotePlayer Control

NotePlayer Control

Another QuickTime-based control, NotePlayer allows you to play MIDI notes using QuickTime’s built-in Music Synthesizer. Since MIDI files are very compact, your game can feature great BGM without requiring massive storage space for sound files.

Sound Class

REALbasic hides the details of allocating sound channels for you by using this class. You can drag in a Mac OS compatible sound (AIFF, System 7, etc.) and play it once, play it in a loop and, new in 4.0, control the volume and stereo pan position under program control. I use the programmable volume to simulate a variable power thruster in A-OK! WoM; it’s a welcome addition. In addition to storing the sound internally, a sound file can be loaded in as needed. It’s a little extra work, but it allows you to change the sound without recompiling the program. The ability to customize a game is a selling point in today’s game market, so it’s nice to have the choice.

It is important to be aware of the platform you will target, since some sound formats are native to their OS. One way around this is to use the MoviePlayer control to play a sound. Since QuickTime handles just about any sound file seamlessly between Mac and Windows, this is a good choice. The only problem is that tightly looped sounds don’t always play cleanly. You’d be better off with the Sound class for those types of sounds.

rb08.jpg SpriteSurface Control

SpriteSurface Control

While the Canvas can be used to display sprites, the SpriteSurface control is a purpose-built control that handles many of the small details (like redrawing the background) for you. SpriteSurface has been polished and improved quite a bit over the last two major releases (only a small bug fix in 4.0) and is quite capable of handling 2D and pseudo 2.5D games.

rb09.jpg Rb3D

Rb3D

Based around the Rb3DSurface and a handful of classes, Rb3D provides REALbasic programmers with a bare-bones real-time 3D engine. Actually, it’s not an engine as much as it is a wrapper that provides a REALbasic syntax for other 3D engines.

Rb3D is built over open-source code Quesa and OpenGL. This is a good approach as it allows REAL Software to take the current build of Quesa and incorporate it permanently, allowing complete control of the engine, or create their own high-performance engine in the future.

Although Rb3D contains most of the basic 3D functions, it is sorely lacking in one area—a separate light object. You can control the intensity of two global lights, an ambient and a directional, but the position of the directional is fixed. It’s impossible for you to create your own light. Let’s hope that REAL Software addresses this issue in the next release. I should also mention that Rb3D is missing built-in collision detection and a particle generator. Although savvy programmers could implement them, they would be a welcome addition if they were added.

rb10.jpg RbScript

RbScript

This is an excellent method for implement scripting in a game environment. It allows end users, or non-programming game designers, to write and execute REALbasic code while the compiled application is running. The scripts can also be compiled before they are executed so that there are no speed issues with interpreted code. RbScript is compiled to PPC code on Mac, and on Windows it runs as interpreted byte code.

RegEx

Developing a retro text adventure? RegEx allows you to use regular expressions to parse those pesky command lines. If you are familiar with PERL or GREP, then you get the idea.

rb11.jpg

Socket

Socket

The Socket control only implements TCP/IP, which might be too much overhead for multiplayer first person shooters. In past versions, it suffered from stability problems, especially with applications requiring a stable connection that lasted for weeks or with a lot of traffic. While it has been improved tremendously, there are still those who are experiencing stability problems in very isolated cases. Unless you require maximum throughput, the Socket control would work well in a multiplayer game context, even real-time games. There is an alternative available: SuperSocket from Essence Software, which is much more full featured and is reported to be more stable for high volumes. I use this to implement UDP, which is faster than TCP/IP. Bottom line is the stock TCP/IP control works well enough for all but the fastest multiplayer games.

rb04.jpg The REALbasic Menu Editor

Additional Features

  • Language Syntax — Strong Typing and Object Orientation coupled with an easy syntax is a powerful combination.
  • System Library Access Support — Any missing functionality can usually be accessed via Mac OS and Window code libraries.
  • On-line Language Reference — The on-line manual, once inaccurate and out-of-date, is a very good tool. If you select a tool or key word and open the reference of the help menu, it takes you right to that page.
  • Tool Tip Window — This is a very useful little gem. In addition to warning you about duplicate variable names and such, it will display a method’s required parameters when the name is typed. That alone saves me lots of time.
  • Speed

REALbasic creates fully compiled applications. There is no run-time or pseudo-code engine and the code is not interpreted like BASIC languages of old. The IDE first compiles your program into the machine code of choice (PowerPC or Intel) and then links in a compiled library of functions that make up the REALbasic feature set.

Even when you RUN a program in the IDE, it is not interpreted. The IDE goes through the same compile and link cycle with two differences. When running in the IDE, the compiled code is "instrumented" which means that it contains extra instructions needed to support breakpoints, stepping, and so on. There is also a debugging version of the platform library, which allows REALbasic to peek into memory to see property values and such.

The resulting compiled program can be fast or slow depending on how much time you spend learning REALbasic’s tricks and optimizing your code. It should be stressed however, that the best optimization you can do in any language is to choose an efficient algorithm, and no compiler in the world can do that for you automatically.

Product Support

REAL Software is a small company with limited resources. Yet, in my almost four years of dealing with them, I have found them to be very, very responsive. There are four rules that really apply to dealing with any small company:

  • Use Their ProcessALL bugs and feature requests must be submitted via REALbugs, a stand-alone application. Very soon now, this will be replaced by a web page, a move applauded by many.
  • Be Reasonable — Sometimes a very important feature or bug is driving you nuts, but there might be reasons why your issue is not serviced. I asked for volume and panning control for the Sound class over two years ago. Well, it’s finally here! But while it did hamper me, it was not a life-threatening issue.
  • __Don’t Cry Wolf __- Unlike many other tool providers, REAL will allow you to contact them and request help with a "show-stopping" bug. This is a service that you would pay for in other companies. I used it only once. I was about to demo an early build of A-OK! WoM and was dismayed that I could not loop a Sound class. I tried QuickTime and other tricks, but it did not work seamlessly. I contacted REAL Software and told them that my might rocket engine sound has the hiccups, so let’s please get a looping capability for the Sound class. Within two or three weeks it was there. If you are a hobbyist or student programmer, don’t raise the "show-stopper" flag just because it’s there. Some of us use REALbasic to support our families.
  • Be Nice — Most of the programming, support, marketing staff and CEO spend a lot of time on the REALbasic mailing lists, responding to all sorts of questions at the same ungodly hours and weekends as you and I put in. Appreciate it.

Release Policy

REAL Software releases a new version of REALbasic approximately every six months. If you are a professional user, you could consider it a form of subscription price. Generally, the x.0 releases contains the newest features and the x.5 releases focus more on bug fixes. To REAL Software’s credit, this release (4.0) was really about squashing bugs or rewriting problematic features (ListBox, for example). Also, after every x.0 and x.5 release, there is usually a bug fix update or two to kill any really bad bugs that may have slipped out. In addition, REAL Software releases its new version the minute development starts in a series of alpha releases. Alpha releases (especially early ones) can be very buggy, so they are only for the courageous and should not normally be used for production code. Nevertheless, it is great to be part of the product’s development.

Community

There are four separate REAL Software-sponsored mailing lists that provide a great forum for sharing, learning and discussing REALbasic: a general list, a news-only list, a plug-ins list and a developer (alpha release) list. A newsgroup, comp.lang.basic.realbasic, has also been created. A REALbasic web-ring exists and there is even a place for REALbasic discussion in iDevGames’ forum. There are also three textbooks for learning REALbasic:

REAL Good But Not Perfect

While some games work well with just mouse or keyboard input, to become a full-fledged tool for the game market, REALbasic needs cross-platform support for game controllers. This translates into building an input API and mapping it to Input Sprockets, HID and DirectInput for Windows. Yes, you could do all this yourself via library access, but it’s time spent away from programming your game. Once again, Essence Software has a partial solution: Input Widget, that allows use of any controller that Input Sprocket supports. They are also creating a version that supports HID and DirectInput.

The Sound class sometimes falls apart when you are managing a lot of sounds. In A-OK! WoM, I can have up to ten sounds playing at any one time. The Sound class creates a sound channel each time you use a sound, even if it’s one that you are using already. Therefore, you have to keep track of sounds manually. I have also noticed that sometimes multiple Sound classes of the same name don’t stop immediately when commanded to or, rarely, never stop at all. Once you have more than one sound with the same name, you loose the ability to manage it (unless you assign each possible use of a sound a different name). The Sound class needs the ability to assign sounds to channels.

Rb3D is missing some core features that absolutely must be addressed soon, namely a light object, bounding box access, or a built-in collision system and, most importantly, an improvement in the quality of the Quesa part of the puzzle. Right now, Rb3D’s performance and quality of image suffer when using the Quesa/OpenGL combination. Geoff Perlman, REAL Software’s CEO, has indicated that they are working closely with the Quesa development team to improve Quesa on all fronts. It doesn’t hurt that Joe Strout, the REAL Software developer responsible for Rb3D (and other things), is part of the Mac OS Quesa team.

Conclusion

As the premier alternative development environment on the Macintosh, REALbasic is a very good buy, especially the electronic download Standard edition. Coupled with great community support, it is the ideal tool to enter the world of game development. For new game programmers, REALbasic offers the ability to go beyond “game generating” tools and create games in several genres. Established game developers should also add REALbasic to their development tool chest as its RAD ability is excellent for product prototyping and level editor creation. Looking ahead, the product is on track to build a larger market share with features such as a new (and faster) compiler and smart linker, which should help to reduce compiled application size.

With over twenty years in programming embedded systems (ASM), PERL, HyperCard and variants of C, I feel REALbasic represents a good middle ground of power, ease of use and flexibility. REALbasic has been instrumental in the development of my project “A-OK! the Wings of Mercury” — a full featured spacecraft simulator that was coded (60,000 lines) entirely in REALbasic. If it was not for REALbasic, I could not have designed and programmed a full-fidelity spacecraft simulator that features accurate simulation of spacecraft systems, trajectory, networked capability and real-time 3D graphics.

  • Rated 09
  • Version: 4.02
  • Category: Integrated Development Environment
  • Developer: REAL Software
  • Url: http://www.realbasic.com
  • MSRP: Pro $349.95, Standard $149.95 (Electronic Download: Pro $299.95, Standard $99.95)

realbasic,4,real,software

ZBrush 1.23b by Pixologic

Painting in 3D

ZBrush is a new painting application with a 3D rendering engine developed by Pixologic“. This powerful tool has been generating a lot of buzz in the games industry and was chosen as a finalist for Game Developer Magazine’s 2001 Front Line Award. Since my work for Strange Flavour relies on the use of 3D software for creating game assets, and having heard positive comments about it, I was eager to take ZBrush for a test drive. My initial impression of ZBrush reinforced what everyone was saying about this tool — it’s groundbreaking! My review will cover ZBrush’s 3D painting and modeling features and evaluate the performance of ZBrush for use in game development.
Tutorial.jpg

Getting Started

ZBrush is available for both the Macintosh and Windows platforms. Although many of today’s popular tools are cross-platform, Pixologic should be commended for their cross-platform upgrade policy. As a registered owner of one full-priced PC or Mac license, you are entitled to purchase another license at half price for the other platform. ZBrush is not available in stores and must be purchased and downloaded via Pixologic’s website. If the screen shots and ratings don’t convince you to try the program, a limited time demo, along with documentation, is available in their download section. The 8.8MB demo is fully functional and you can get started with the application after receiving the unique serial number that is sent to your e-mail address.

The installation of ZBrush on my PowerMac G4 MP 500MHz with 1GB RAM went very smoothly. Once running I was presented with a very ergonomic-looking interface that in many ways reminded me of the interfaces built by Kai Klaus of MetaTools fame. Although ZBrush shares a certain style with many of MetaTools’ former programs, its interface felt silky smooth and was very snappy. In fact, at times it felt smoother than the Mac OS running underneath it!

The Interface

ZBrush’s initial setup presents you with a workplace window in the center of the screen where you do all your modeling and drawing. All the menus are distributed to the right and left of this document area. This allows easy access to the menus without cluttering up the document area. The menus can be repositioned to your own preference and saved as the default configuration for successive ZBrush sessions. To conserve screen real estate, as well as keep the screen uncluttered, any menu can be iconized (and then appears in the top-center menubar) or collapsed; rarely used menus are automatically closed. Similar to Apple’s Balloon Help, pointing to any control for a short period of time will display a pop-up info window.

When you launch ZBrush, the program prompts you to navigate the tutorials. There are several automated tutorials available to guide you through most of the basic commands of ZBrush. Watching a running tutorial is a bit like watching a master artist bringing a painting alive on television. Not only are the tutorials informative, they are also fun to watch. The power of these tutorials comes from ZBrush’s built-in scripting language.

ZScript.jpg

ZScript

ZBrush’s tutorials and many other customizable features are all running on a scripting language called ZScript. This concept is not new in 2D applications such as Photoshop (Action command), but in the 3D world it is a very welcome feature. Scripts can be created to perform specific actions or to create entirely new objects. As you can imagine, ZScript forms a very powerful backbone within ZBrush and offers endless possibilities for creating new art and saving time during game asset production. Pixologic have stated that a future version will allow for further customization of ZBrush’s interface through ZScript. It is worth mentioning that their website contains free downloadable ZScripts ranging from tutorials to utilities. I expect more to be added over time as the user-base grows.

Modeling

After running through some of the initial tutorials covering the interface, I was very eager to explore the process of making my first model. Of all the objects that artists must model, creating and controlling realistic organic objects can be the most challenging. In my opinion this is the area in which ZBrush truly shines. By viewing a few ZScripts that demonstrated the creation of character models, I was able to learn some of the best ways to approach modeling a face. The first step was to create a sphere, which can be thought of as a lump of clay in ZBrush, and which was then pushed, pulled, and bent into shape — a Wacom graphic tablet or mouse helps here. This approach to modeling is also available in the 3D application Amorphium Pro by Electric Image. After a few minutes, my sphere was turned into a manga-style face that, along with some good textures, could have easily been used in any commercial game. Overall, the way ZBrush models is a bit like sculpting with stretchable putty, almost like Kai’s Goo but in full 3D and much more fun. Although ZBrush has several different sculpting tools, I found I only needed to use the two basic movement tools to get the results I wanted. The main tool you use to create your models is the Transform palette, which works on basic 3D solids like spheres, cubes, etc., that you’ve placed in the 3D area, and which also allows you to build up or subtract an area in volume as you paint on its 3D surface or push/pull an area around.

Head.jpg Anime Head

ZBrush contains many deformation functions that perform operations such as twist and shear. For modeling characters, the symmetry function allows you to mirror what you’re doing on one side of the model to the other or on multiple sides. This came in extremely handy in the majority of work that I created with the program. ZBrush is fantastic at creating organic objects and doesn’t disappoint with more mechanical ones such as spaceships, either. Experimenting with polygon reduction, and turning smoothing off on one axis, you can introduce some hard lines into an initially very organic-looking spaceship model to make it appear more structural in shape. In fact, after using the program for a few weekends I was soon finding new ways to make sleek spaceship and car body shapes that didn’t suffer from the “meta-ball” look.

The ability to export models for use in other 3D applications is an important feature for artists who work with multiple tools. The current version of ZBrush can export models in DXF or OBJ formats. I exported several DXF and OBJ (retains textures) models created in ZBrush into Cinema 4D with no problems. During the importing process, the models will lose their ZBrush smoothing effects, but Cinema 4D’s Hypernurb function can be used to rectify this. If you wish to take advantage of ZBrush’s painting tools to create textures, the same formats are supported for importing models. ZBrush also provides a very good optimize function in the deformation palette that allows you to reduce polygons on an object. This feature is especially useful for models which will be used directly in a 3D game engine and require low polygon counts. You can also import models to use as brushes for texturing. For instance, if you wanted to quickly draw a small jungle, import a tree and then draw it all over the 3D area.

Texturing and Painting

If ZBrush stopped at modeling, I would still rate it highly, but it goes even further with a generous assortment of tools to help apply textures and paint your models. Textures can be created by painting on a layer with 3D primitives or brushes you’ve created. The screen area is then captured and converted into a 2D bitmap to be applied as a texture onto an object. Alternatively, you can just paint onto a 3D object with a layer specified as the texture map. It’s quite an odd but powerful combination of 3D and 2D.

Render.jpg Rendering

ZBrush employs a full 3D-painting engine that helps to distinguish it from other 2D painting applications. In effect, you are really painting with pixels in 3D rather than moving polygons around. This mode allows you to paint using several pre-defined 3D brushes or a model you previously made onto a 3D virtual canvas. The nearest tool that I can compare it to is the $499 PaintFX plug-in by Soft Images for Maya. Which is impressive, as ZBrush costs less than most of the plug-ins for the major 3D packages and does a lot more. A good example of this would be painting a scene with grass. You would start with a blank ground object and then paint on the grass as individual blades, adding in additional objects like plants and trees from your palette of pre-modeled brushes. However, it doesn’t stop there, as ZBrush employs a materials palette with a number of definable surface types that allow you to paint the scene with any number of these while also adding more depth with the 3D brushes. I spent a few fun-filled days just playing with the painting features inside ZBrush. It reminded me of the days when I moved from Electronic Art’s 8-bit painting program Deluxe Paint to the natural media application Painter. The opportunity to utilize the painting tools to create textures for game models, screen backgrounds, or game interfaces should be appealing to graphic designers working in the game development industry.

Rendering

ZBrush has proven itself as a powerful tool for creating 3D models and textures. The next step was to determine if the spaceship and face designs I created could be easily and quickly rendered into 2D sprites. Strange Flavour’s two titles, Bushfire and AirBurst, required a great deal of sharp and attractive small sprites. For those two projects, my 3D program of choice was Cinema 4D, mainly because of the rendering quality and precision it has for creating more mechanical-like models (vital for doing small objects that will be used as game sprites). I’m always interested in finding new tools to help in this area, so I was eager to test ZBrush’s rendering engine. For my tests, I placed the models in roughly the same size I wanted for the test game, set up the best rendering mode and then tweaked antialiasing. The sprite frames were exported from ZBrush to Photoshop’s PSD format and then turned into a final sprite bank. The initial rendering resulted in sprites that lacked sharpness. One way around this problem is to render the sprites at twice their size, and re-scale inside Photoshop. However, I abandoned this time-consuming workflow after switching to Cinema 4D’s excellent renderer. Pixologic recommended that I experiment with the antialias and rendering settings to improve the output. After some trial and error, I was finally able to achieve the results I was looking for. In comparison, rendering at twice the size and re-scaling resulted in much better detail. So it seems that with this version of ZBrush, I would have to utilize Photoshop or Debabilizer to batch process the sprites. Not the end of the world, but a step I would like to avoid in the future, especially if I have 300 plus sprites to work on.

Ship.jpg Ship sprite

Thinking back to the power of ZScript I feel that there is still a place for ZBrush in my workflow. Although some time would be added from the re-scaling, it is possible that I could reduce the amount of post-process work I normally have to do in Photoshop. For example, a ZScript could be written to automatically lay out all the sprites rotations of a spaceship in rows onto one screen and at the correct positions. The double sized screen would still need to be re-scaled in Photoshop. However, you would have the complete sprite bank without needing to use a batch system like Debabilizer to pull individual sprite cells together onto one screen, which was my previous method for arranging sprite banks. So all in all, I should be able to automate most of the laborious tasks I was doing in Photoshop directly within ZBrush itself with just a few predefined scripts.

Conclusions

As with any 3D application, ZBrush requires a fair amount of time to learn. New users may either feel at ease with the MetaTools-like approach to the interface, or worried about being restricted by it. Taking the time to go through the tutorials will quickly ease those fears, as the depth of the program will soon become apparent. ZBrush excels as a game development tool not only for object creation, but for creation of textures, backgrounds, and GUI elements as well. In regards to my experiment with creating sprites, overall I was satisfied and as I learn more about ZScript, I’m sure that my workflow will greatly benefit from ZBrush. Initially, I was intrigued by the power of the modeler for its organic capabilities, however the power of ZBrush lies in its ability to seamlessly integrate its many tools into a very creative 2D and 3D package. In short it focuses technologies from 3D texturing and sculpting packages like Amorphium, Painter3D and BodyPaint into a cleverly designed close-knit system. Because ZBrush ties all these basic functions of 3D modeling together, along with some of its own cool features, it could be used on its own to create models for 2D or 3D games. If you’re writing games on a tight budget, it’s a really good investment as a primary modeler, and if you’re a large game studio then it’s worth buying specifically for its creative possibilities.

  • Version: 1.23b
  • Category: 3D Painting Application
  • Developer: Pixologic
  • Url: www.pixologic.com
  • MSRP: $ 585.00

Mark Tully of TNT Basic

tnt01.gif

TNT BASIC

tnt02.jpg

AMOS

A game-tailored BASIC is somewhat of a new idea on the Macintosh. During development did you study Amiga/ST game creation tools such as Blitz Basic or AMOS?

I think it’s fair to say that AMOS was our inspiration. We used to knock out games together in AMOS all the time and we’ve thought for a long time that the Mac needed something similar. If you have a look at AMOS you’ll notice that there’s a lot of similarity between the two languages; that’s no coincidence, as the AMOS manual was never out of arm’s reach while we were designing TNT Basic!

As a former AMOS programmer that’s great to hear, however, is it possible to port an AMOS game to TNT Basic?

Well, one of the major differences between the two products lies in the handling of variables; TNT Basic requires that they be declared before using them. Although we have most of the features of AMOS, we don’t support some things such as asynchronous animation and data banks. So for simple AMOS games that don’t use them it should be a straightforward port, assuming you can get all your game assets converted.

Blitz Basic recently announced they would port their product to Mac OS X. Where do you see TNT Basic in this growing marketplace?

Our goal is to make TNT Basic a very competitive product both in terms of features and price. That said, TNT Basic development team is currently comprised of only two programmers as opposed to a product such as Blitz Basic that has the support of a full-time team.

Although your manual states anyone can make a game with TNT Basic, what type of prerequisites would you recommend to the non-programmer who is interested in creating games?

When I first started making games in AMOS, all I had was a lot of game playing experience and a few ideas for my own games. I found programming was the easy bit, the hard part was coming up with good ideas and sticking to it long enough to produce a playable game. So in answer to your question, I’d say two things, creativity and commitment.

What genres of games is TNT Basic suited for?

TNT Basic is aimed at the 2D game market. Within that paradigm there are games like shoot-‘em-ups, platform games, overhead racing games, adventure games, and many more—all of which TNT Basic would be suited to. We’ve made it easy for users to create tile-based maps, scroll them around as well as integrating collision detection, something that benefits all these genres.

tnt03.gif

Source code

Could you describe the steps in creating a game with TNT Basic?

A TNT Basic project is completely edited from one IDE called “Hieroglyph.” To create a simple game you import graphics into Hieroglyph, then you would begin to write some code. Hieroglyph features on-line help and syntax coloring to help you as you program. When you’ve written your code, you hit run and Hieroglyph executes your game through TNT Basic. If there are any programming errors, these will be highlighted and you can fix them. Then run again, play your game, then back to Hieroglyph, edit some more, run it again and so on. This is the commitment bit I mentioned earlier. As your game evolves you can add music, sounds, and maybe begin to make use of tiled maps to ease your development. It can take a while to get a good game, but don’t give up!

How is debugging carried out in TNT Basic?

TNT Basic has a very good runtime error detection model. If a program does something wrong then a message is presented reporting the exact line that caused the error. At this point in time, though, we don’t have a step debugger. However, we hope to get one in eventually. That will allow you to have your program in front of you as you play it step by step in a window.

So once the game is complete, how are they distributed?

Well the first thing that a user would need to do is to build a stand-alone executable. TNT Basic must be registered1 to do this, so if it’s not, that’s the first step. Then the user can distribute it as they see fit, for example on their website. Of course, we’d be more than happy to host it on our site as well.

Do you collect a royalty fee on your users’ games?

No, developers can sell their games in any manner they wish, for example, as shareware. Our only revenue stream is through registrations of the TNT Basic package itself. In fact, developers don’t even have to label their games “Made with TNT Basic.” This is unique as many game creation systems require their logos or banners in the final game. If a developer does want to mention TNT Basic, though, that is fine with us!

/tnt04.jpg

Screenshot

Smooth sprite animation is always a challenge in creating 2D games. Can you tell us a little about the graphic technology behind TNT Basic?

I learned to program by hacking together many simple Mac games, but none of them ever saw the light of day. This method led me to try new ideas and approaches to creating games. As I hated starting from scratch with each new project, I created a collection of engines and tools to be reused in future games. One of these tools was a sprite engine called “Blast” (another example is Hieroglyph). Blast is a very fast sprite engine based around “run length encoded” (RLE) sprites. Its sprite model can support any color depth scaling, translucency, anti-aliasing and non-image data. That means we can have sprites which are text, QuickTime movies or 3D objects. However, not all features are available in TNT Basic yet.

Does Blast handle masks, rotation and scaling?

It supports multi-level transparency masks and sprite transparency. Although it supports scalable sprites, we haven’t implemented it for this version of TNT Basic. Since it is a highly requested feature we should add it soon. For rotation, we will probably leave it out until we add hardware acceleration.

Have you considered licensing Blast to developers?

We did at one point, but we decided not to. We’re more interested in selling TNT Basic as a complete solution.

tnt05.jpg

Screenshot

For an average shoot-‘em-up game, what type of FPS can we expect?

We ship an example with TNT Basic called “Bouncing Splats” that throws 50 sprites around the screen at 90-100fps on an iMac 400MHz. If a game were to be built up around that, then the frame rate would obviously drop. I’d hazard a conservative guess at a solid 50fps for an average shoot-‘em-up game. We don’t plan to stop there though—we’ve got a lot of optimizations, and a few neat tricks left to employ!

To achieve such high framerates, what type of development system are you using?

We develop TNT Basic using Metrowerks’ CodeWarrior under Mac OS X. I work on an iMac DV 400MHz, and John develops on a G4 Cube 500MHz .

Support for various MOD formats are very good in TNT Basic. How is the MP3 playback performance?

It’s actually surprisingly good. Apple has done a great job with QuickTime. It makes a CPU hit of about 10% which is pretty good for the quality of music you get. The CPU hit is even less under Mac OS X.

I notice that you support Apple’s InputSprockets for user input. Could you comment on this abandoned API and the challenges you are facing in providing user input in Mac OS X?

InputSprocket is a good idea, but there are some things which I would prefer to be done differently. I would like the option of being able to design my own dialogs for configuring keys, for example. I really think Apple should have brought InputSprockets over; they’ve introduced equivalent new technologies, but these are not (yet) as well polished and easy to use as InputSprockets were for me. The reason we don’t have configurable input under Mac OS X is simply because we have to completely rewrite all the input code for Mac OS X. It’s annoying because the new features of Mac OS X mean we can give things like customizable dialogs to our users, but these won’t work in Mac OS 9 as InputSprockets doesn’t allow them; so we end up with a schism in TNT Basic’s feature set across the two OSes.

tnt06.gif

TMAP Info

Speaking of Mac OS X, how is work proceeding on TNT Basic for Mac OS X?

We just released TNT Basic 1.02 which has a substantial speed boost for Mac OS X graphics. We still haven’t quite hit Mac OS 9 speeds, but as we get more experienced with Mac OS X we should be able to get there. We’re going to implement a ‘customize input’ dialog for Mac OS X in the next version. That’s the last piece in our Mac OS X compatibility checklist. Then we can get on with adding more features, which is what we really want to do!

I take it that the application was Carbonized. How difficult was the process?

I don’t think it really took that long for TNT Basic itself, it was probably less than a week; then another week or two for Hieroglyph and its plug-ins. As I mentioned, the tricky part was finding suitable replacements for Apple’s Game Sprockets. One of the main problems we had with Mac OS X was graphics. In Mac OS X, all windows are double buffered. What this means is that when you draw to your window, it doesn’t appear on screen, but instead goes to a buffer which then has to be flushed to screen. This is how Mac OS X’s Quartz does all its fancy transparency stuff; but it really hits your frame rate if you don’t handle it right.

Your website includes some simple tutorial games. Are you planning on releasing your own games that were created in TNT Basic?

To be honest we don’t have the time! Beans and Bang On were fun to create, but in the end we just gave them away to help people learn. Since we want to add many features to the product, we are concentrating on TNT Basic itself. We hope that by providing a great tool, a strong community will be built. Hopefully, we can work with the leading TNT Basic developers to obtain their games for educational and inspirational purposes.

Do you have any final words for the many Mac users who are hoping to use your product to make their dreams of creating games come true?

For $25 you could buy a shareware (or an older commercial) game. On the other hand, you could spend the same on TNT Basic and start making your own games. There are many routes available for users to enter the world of game development, however, current products create a kind of barrier to entry resulting from their steep learning curve. We feel TNT Basic offers the best solution for budding game developers as well as programmers who have been frustrated with the tools currently on the market.

Mark Tully

Position: Co-author of TNT Basic

Company: TNT Basic

Url: http://www.tntbasic.com

Bio: Mark Tully has been writing Mac games and tools for the last seven years while attending College and University. He now works as a professional games developer in the UK writing games for the PlayStation2.

1 Editor’s Note: TNT Basic is now freely distributed under an Open Source license.

mark,tully,tnt,basic

Expanding iDevGames in 2002

Help build a new iDevGames

expandidg0201.gif

From Mac Game Designer to iDevGames

This year iDevGames marks its fourth anniversary. Looking back to our early days as Mac Game Designer, we have certainly come a long way. I am very grateful (and proud) that some of Mac Game Designer’s early visitors and staff are still a part of this community. I must admit that in the first year I often questioned what I was doing. Indeed, my wife still questions what I am doing when I spend many weekends inside, or when the hosting bill arrives each month! Luckily for me, she is very supportive of my dream to build a great site for Macintosh game developers. (It must stem from her love of SNOOD and The Sims.) Building a community is what this endeavor has been all about. Each of us, readers and staff, share the common goal of improving gaming on the Macintosh and in many ways we are succeeding. Our file library of source code and game assets has been growing at a steady pace. The forum is very lively with discussions ranging from getting the most speed from Mac OS X to the latest hardware from Apple. uDevGames 2001 also garnered a great deal of industry press for iDevGames and will hopefully become a focal point of the Macintosh calendar as time goes by.

State of the site

Four years ago we were hosting on a virtual server which offered 100MB of storage space. Since then we have moved four times and the site is now hosted on a shared Sun server with 350MB of storage space. This is ample for an average site but we host a large number of game assets and source code that rapidly fill disk space—even when compressed. Four years ago I never imagined we would ever approach 350MB worth of content but the reality is we shall very soon reach this limit. The second problem that is rearing its ugly head is that of bandwidth. During uDevGames 2001 our server was unable to cope with download demands and we found ourselves scrambling to add mirror sites. The final issue that we now face is that of server control. As some of you know, virtual servers offer inexpensive hosting but place restrictions on what webmasters can do, restricting all but the most basic of admin functions. Behind the scenes, our famed webmaster Griggs has done a lot of work. With more freedom he could do so much more.

Where do we go from here?

Without a doubt, iDevGames and the Macintosh game developer community are growing. I expect to see even more new faces in 2002 thanks to Apple’s great hardware, Mac OS X and new tools such as dim3. So we are now faced with the dilemma of keeping things as they are or riding the wave towards creating a bigger and better site. One potential solution that presented itself in the past was to simply merge iDevGames with another established site. While working under the umbrella of a partner site, we would be afforded greater bandwidth and server space, but despite being easier on my wallet, I have tended to steer iDevGames away from this strategy due to my desire to keep iDevGames an independent enterprise—free to provide unbiased content. Some helpful visitors have also suggested storing our files on remote servers. Although this approach was fine during uDevGames 2001, it is not realistic in terms of staff management and maintenance.

In a perfect world, iDevGames would be served on Apple’s server hardware from our own Network Center. Since Steve Jobs and I are not on a first name basis (although we both have a fondness for black shirts) and this is reality, we have to explore other avenues. The answer appears to be: move to a dedicated server. A few years ago dedicated servers were the domain of large websites but that is now changing. I have spent the last few months exploring dedicated server options for iDevGames and I am happy to report that I have settled on a stable and cost-effective solution. This dedicated server would provide us with 40GB storage space for content as well as ample bandwidth to take the site to new levels in 2002 and beyond.

How you can help

Moving from a virtual server to a dedicated server is a decision that cannot be taken lightly. The costs involved would move the site from a hobby into a whole new category. Despite the great pleasure I derive from running iDevGames, conversing with all of you and helping our platform, the burden would be too great on my monthly budget. Therefore, I would like to ask for you to come together as a community and make a financial donation to iDevGames. Your contributions will be utilized to cover the monthly costs of the new dedicated server. If you believe in what we are doing and want to see us add even more code, game assets and other content, now is the time to show us you support the site. The initial monetary target would cover:

  • $349 server setup fee
  • $198 two months server fee
  • $160 new forum software (vBulletin)
  • $707 total

Our monthly goal will be $99 (USD). Based on our traffic, if half of iDevGames visitors donated even one dollar a month, we would have more than enough revenue to cover our costs. I have always had a very difficult time asking for money in my life so this request is rather difficult for me to make. I am optimistic that our visitors will prove that it was the right decision. The amount is entirely in your hands and donation is completely voluntary. Every penny counts and even small donations can go a long way. To make a donation, through PayPal, simply click this link.

A stronger iDevGames will not only benefit our visitors, but will also attract the attention of sponsors and advertisers. During the past year, we have been building great relationships with companies in our industry. I fully expect that they will show their support after the new iDevGames launches through advertisement purchases, prize donations and site sponsorship.

Final thoughts

We have been building great momentum since 1998. While some readers may think that game development is a niche on the Mac, it is a niche that must be addressed if the Mac is to survive and prosper in the consumer market. I look forward to iDevGames playing a larger role in evangelizing and supporting our platform. On behalf of the staff and myself, thank you for supporting iDevGames!

expanding,idevgames,in,2002

iDevGames Forum

iDevApps Forum