GDC was an amazing experience. I'm currently working on decompressing from it all and processing my notes and audio recordings.
You can view what I have so far here
More thoughts to come soon...
Tuesday, March 31, 2009
Wednesday, March 18, 2009
GDC 09
By:
I will be attending this year's Game Developer's Conference in San Francisco next week.
The biggest problem I'm having are all the conflicting sessions that I want to go to. I ultimately assigned priority levels to those that are in conflict. Be that as it may, I will just decide what to go to while on the floor, making sure to give myself some breathing room and time to check out the exhibitor booths.
Having an all access pass means that I'll be able to go to all of the various summits that are going on as well as being able to view those materials that presenters make available online after the conference.
I'm a member of the International Game Developers Association (IGDA) and will be attending various IGDA related events throughout the week.
There are also various "tweetups" and evening meetups that I will also try to attend.
The following are some of the sessions I plan on attending:
(308) Why the iPhone just changed everything
(308) Beyond the Screen: The Principles of Pervasive Game Design
(309) Mini Games in C++ Workshop
(303) Games that Connect People - Part 2
(308) Improving Game Play with Sensor Technology in Mobile Devices
(306) Worlds in Motion 2009 Kick-off!
(301) Game Design Workshop
(306) Post mortem: Game mechanics without rules in Habbo Hotel
(303) Intro to Casual Games - Part 2
(308) The iPhone Bag Of Tricks
(304) Independent Games & Sales: Stats 101
(308) Creating a Compelling User Experience
(308) The Challenges and successes of porting games to the Apple iPhone
(308) Navigating for success in today's mobile landscape
(308) Am I dead yet?
(304) No Publisher? No Problem! iPhone for Indies
(308) Social Games for Android, iPhone, Java, C++ and Objective C? Where do you fit in?
(308) Post Mortem: Super Monkey Ball iPhone
(308) Get Smart About Smartphones: Insight Into the Future of Mobile Gaming
(308) How Independent Studios Successfully Develop and Distribute Mobile Games
(307) From the Ground Up: AI Architecture and Design Patterns
(308) Independent Games Festival Mobile Award Ceremony
(308) How do we socialize mobile games?
(308) Mobile Social Games: As Big on Phones as They are on Web-Based Social Networks?
(304) Making Web Games: The Indie Experience
Discovering New Development Opportunities
(309) A Guided Tour of The Art of Game Design: A Book of Lenses
(305) Serious Games Showcase
(304) How to Finish a Game Project You... Hate?
Nuances of Design
Fault Tolerance: From Intentionality to Improvisation
Universal Character System in SAINTS ROW 2
Lockless Programming in Games
Media Molecule: 'Winging It' - Ups, Downs, Mistakes, Successes in the Making of LITTLEBIGPLANET
Developing Mobile 3D Games Using the POWERVR SDK and Tools
Casual Games Roundtables
Tools SIG
The Inspiration Behind Nintendo DSi Development
HavokTM Technologies: Present and Future
The Game Design Challenge: My First Time
Mobile Games SIG
Making Friends is Hard: Social Mechanics in Contemporary Design
Silencing the Censors - Recent Developments in the Battle for Free Expression in Game Development
Level-5's Techniques to Producing a Hit Game—From PROFESSOR LAYTON to INAZUMA ELEVEN and THE ANOTHER WORLD
Utilizing Flash® for Game UI Development
How Lionhead Studios Created Believable Characters in FABLE II Using Softimage XSI
Curious/New Members: Gaming the IGDA
Artificial Intelligence in Computer Games Roundtable
Riding the Waves of Change: How Video Game Companies Can Flourish in an
Environment of Relentless Volatility and Flux
Game Design SIG
Advanced Scrum and Agile Development
Learn from Legends: Crane & Cartwright's Core Principles for Game Development Success
Casual Games Roundtables
Casual Games SIG
GDC Microtalks - One Hour, Ten Speakers, Unlimited Ideas
Game Studies Download 4.0
The Future of Web Games
10 Things Great Designers Exhibit
Experimental Gameplay Sessions
Master Metrics: The Science Behind the Art of Game Design
The Beauty of Destruction
iPhone Development: Exploring The New Frontier
HavokTM Technologies: Present and Future
Have You Got Perfect Pitch?
The Grass is Greener? Freelance vs. In-House Audio Solutions
The Brutal Art of Brutal Legend
Everything I Learned About Level Design I Learned from Disneyland
Accessibility 101: Crash Course for Beginners
Play in the Age of Social Software
Unlikely Beginnings: FALLOUT 3's Lead Designer on his Path into the Game Industry
The World of FABLE II
Burned by Friendly Fire: Game Critics Rant
Casual Games Roundtables
Serious Games Summit Summary
10 Perspectives on Staying Passionate about Games
How to Start Designing Games On Your Own (and What that Really Means)
Producing FABLE II
Robotic Testing to the Rescue
Flash SIG
Artificial Intelligence in Computer Games Roundtable
Bringing Ambience To The Foreground: Enhancing Emotion Through Ambient Sound Design
Learning from the Atari 2600
Lionhead Experiments Revealed
Raising Capital In A Recession
Game Preservation SIG
Online Games SIG
The biggest problem I'm having are all the conflicting sessions that I want to go to. I ultimately assigned priority levels to those that are in conflict. Be that as it may, I will just decide what to go to while on the floor, making sure to give myself some breathing room and time to check out the exhibitor booths.
Having an all access pass means that I'll be able to go to all of the various summits that are going on as well as being able to view those materials that presenters make available online after the conference.
I'm a member of the International Game Developers Association (IGDA) and will be attending various IGDA related events throughout the week.
There are also various "tweetups" and evening meetups that I will also try to attend.
The following are some of the sessions I plan on attending:
(308) Why the iPhone just changed everything
(308) Beyond the Screen: The Principles of Pervasive Game Design
(309) Mini Games in C++ Workshop
(303) Games that Connect People - Part 2
(308) Improving Game Play with Sensor Technology in Mobile Devices
(306) Worlds in Motion 2009 Kick-off!
(301) Game Design Workshop
(306) Post mortem: Game mechanics without rules in Habbo Hotel
(303) Intro to Casual Games - Part 2
(308) The iPhone Bag Of Tricks
(304) Independent Games & Sales: Stats 101
(308) Creating a Compelling User Experience
(308) The Challenges and successes of porting games to the Apple iPhone
(308) Navigating for success in today's mobile landscape
(308) Am I dead yet?
(304) No Publisher? No Problem! iPhone for Indies
(308) Social Games for Android, iPhone, Java, C++ and Objective C? Where do you fit in?
(308) Post Mortem: Super Monkey Ball iPhone
(308) Get Smart About Smartphones: Insight Into the Future of Mobile Gaming
(308) How Independent Studios Successfully Develop and Distribute Mobile Games
(307) From the Ground Up: AI Architecture and Design Patterns
(308) Independent Games Festival Mobile Award Ceremony
(308) How do we socialize mobile games?
(308) Mobile Social Games: As Big on Phones as They are on Web-Based Social Networks?
(304) Making Web Games: The Indie Experience
Discovering New Development Opportunities
(309) A Guided Tour of The Art of Game Design: A Book of Lenses
(305) Serious Games Showcase
(304) How to Finish a Game Project You... Hate?
Nuances of Design
Fault Tolerance: From Intentionality to Improvisation
Universal Character System in SAINTS ROW 2
Lockless Programming in Games
Media Molecule: 'Winging It' - Ups, Downs, Mistakes, Successes in the Making of LITTLEBIGPLANET
Developing Mobile 3D Games Using the POWERVR SDK and Tools
Casual Games Roundtables
Tools SIG
The Inspiration Behind Nintendo DSi Development
HavokTM Technologies: Present and Future
The Game Design Challenge: My First Time
Mobile Games SIG
Making Friends is Hard: Social Mechanics in Contemporary Design
Silencing the Censors - Recent Developments in the Battle for Free Expression in Game Development
Level-5's Techniques to Producing a Hit Game—From PROFESSOR LAYTON to INAZUMA ELEVEN and THE ANOTHER WORLD
Utilizing Flash® for Game UI Development
How Lionhead Studios Created Believable Characters in FABLE II Using Softimage XSI
Curious/New Members: Gaming the IGDA
Artificial Intelligence in Computer Games Roundtable
Riding the Waves of Change: How Video Game Companies Can Flourish in an
Environment of Relentless Volatility and Flux
Game Design SIG
Advanced Scrum and Agile Development
Learn from Legends: Crane & Cartwright's Core Principles for Game Development Success
Casual Games Roundtables
Casual Games SIG
GDC Microtalks - One Hour, Ten Speakers, Unlimited Ideas
Game Studies Download 4.0
The Future of Web Games
10 Things Great Designers Exhibit
Experimental Gameplay Sessions
Master Metrics: The Science Behind the Art of Game Design
The Beauty of Destruction
iPhone Development: Exploring The New Frontier
HavokTM Technologies: Present and Future
Have You Got Perfect Pitch?
The Grass is Greener? Freelance vs. In-House Audio Solutions
The Brutal Art of Brutal Legend
Everything I Learned About Level Design I Learned from Disneyland
Accessibility 101: Crash Course for Beginners
Play in the Age of Social Software
Unlikely Beginnings: FALLOUT 3's Lead Designer on his Path into the Game Industry
The World of FABLE II
Burned by Friendly Fire: Game Critics Rant
Casual Games Roundtables
Serious Games Summit Summary
10 Perspectives on Staying Passionate about Games
How to Start Designing Games On Your Own (and What that Really Means)
Producing FABLE II
Robotic Testing to the Rescue
Flash SIG
Artificial Intelligence in Computer Games Roundtable
Bringing Ambience To The Foreground: Enhancing Emotion Through Ambient Sound Design
Learning from the Atari 2600
Lionhead Experiments Revealed
Raising Capital In A Recession
Game Preservation SIG
Online Games SIG
Monday, March 16, 2009
Librarian for iPhone
By:
This past week Librarian became available on the iTunes App Store. I created this application partly to test the application submission process as well as experiment with the iPhone's microphone interface.
Librarian has been downloaded 323 times its first week and the top 3 countries include:
Check it out!
Librarian has been downloaded 323 times its first week and the top 3 countries include:
- United States
- Japan
- Australia
Check it out!
Friday, March 6, 2009
Animating transparent PNGs using UIKit
By:
Lately I've come to the conclusion that it is not possible to animate a series of PNGs that have areas of transparency on top of an existing background image without incurring some sort of a performance hit the very first time the sequence is played.
Whether you use imageNamed: (automated caching) or imageWithContentsOfFile: (using manual caching of the images using NSDictionary, etc.) and drawing the images to an UIImageView instance, unless the images are visible to the user, there will be no benefit from pre-drawing the images to a disconnected UIImageView, one that has alpha = 0, or by using any other method that hides this initial first render pass of the animation IF the PNGs have any sort of transparency within them as far as I can determine.
The main reason for this is due to the fact that the hardware renderer has to composite each PNG onto the current visible background the first time the PNG is rendered. Afterwards, this information is cached and doesn't have to be recomposited, even if you move the location of the PNG (as far as my tests show anyway). If you can't see the PNG, then the compositing step of the renderer isn't occurring (as far as I know).
If you have PNGs with areas of transparency and need to animate them without an initial performance hit the first time the sequence is displayed, I suggest using OpenGL ES's support for double-buffers. The one caveat here is that the version of OpenGL ES that the iPhone supports (1.1) only accepts textures that have dimensions that are powers of 2 (2, 4, 8, 16, 32, 64, 128, 256, 512, 1024). So if you have a series of images with dimensions 320x480 for instance, you will need to attach it to larger blank texture with dimensions 512x512 for instance (this is one method anyway). Normally image animations in OpenGL are done via a single texture that has all of the frames in it next to each other and then you simply change the texture coordinates in sequence, but I'm not sure how you would fit a series of 320x480 images inside of a single texture this way.
Any thoughts/comments on this are appreciated.
Whether you use imageNamed: (automated caching) or imageWithContentsOfFile: (using manual caching of the images using NSDictionary, etc.) and drawing the images to an UIImageView instance, unless the images are visible to the user, there will be no benefit from pre-drawing the images to a disconnected UIImageView, one that has alpha = 0, or by using any other method that hides this initial first render pass of the animation IF the PNGs have any sort of transparency within them as far as I can determine.
The main reason for this is due to the fact that the hardware renderer has to composite each PNG onto the current visible background the first time the PNG is rendered. Afterwards, this information is cached and doesn't have to be recomposited, even if you move the location of the PNG (as far as my tests show anyway). If you can't see the PNG, then the compositing step of the renderer isn't occurring (as far as I know).
If you have PNGs with areas of transparency and need to animate them without an initial performance hit the first time the sequence is displayed, I suggest using OpenGL ES's support for double-buffers. The one caveat here is that the version of OpenGL ES that the iPhone supports (1.1) only accepts textures that have dimensions that are powers of 2 (2, 4, 8, 16, 32, 64, 128, 256, 512, 1024). So if you have a series of images with dimensions 320x480 for instance, you will need to attach it to larger blank texture with dimensions 512x512 for instance (this is one method anyway). Normally image animations in OpenGL are done via a single texture that has all of the frames in it next to each other and then you simply change the texture coordinates in sequence, but I'm not sure how you would fit a series of 320x480 images inside of a single texture this way.
Any thoughts/comments on this are appreciated.
Thursday, March 5, 2009
iPhone Gaming Framework: Stage 1 Tutorial
By:
Interesting tutorial on leveraging the XNA GameStateManagement demo to build a gaming framework for the iPhone.
A Giant List of iPhone Developer Related Links
By:
The great people over at Mobile Orchard took notice of my on-going iPhone Resources list. Take a look and feel free to contribute!
SmartFoxServer API: Java, .Net, Mono, Unity3D, Director, Ajax...
By:
I've used the Smartfox Server API in the past for Flash based multiplayer projects. It's nice to see that they now have an API written in Objective-C for iPhone development. They also have an API for .NET/Mono/Unity 3D. Check it out.
Monday, March 2, 2009
iPhone Resources
By:
After noticing that my list of tabs that pointed to iPhone related sites kept growing at an ever expanding rate, I decided to move them into a Google Docs document so that I can could keep everything organized in one place and to also share it with other developers.
If you know of a resource that isn't included on the current version of my list, please let me know.
If you know of a resource that isn't included on the current version of my list, please let me know.
How to manage your iPhone apps in iTunes - Ars Technica
By:
"Ars presents a simple guide to managing your iPhone applications in iTunes. Here are the quick facts you need to know regarding where your applications are stored, how to delete (and restore) them, and what happens to your application data."
Got O.A.T.S.? - Organization for App Testing Standards - iPhone and iPod Touch Application Review Ethics
By:
iPhone application reviewer ethics rules.
iPhone hacking: Lessons from the front line
By:
Good discussion on enterprise IT security risks with the iPhone and what steps can be taken to minimize them with regards to iPhone application development.

