|
|
||||||||
Progress on porting Phit to the iPhone has moved quickly this week. On Wednesday I set out to port my 3D renderer from Windows to the iPhone. This is a renderer I've maintained for several years and which I use in teaching 3D rendering for games at the Guildhall. (A renderer is a piece of software that displays 3D objects on the screen.)
Porting the renderer proved much easier than I expected. Now I can load and display 3D models—like this one from Unreal Tournament 2004—on the iPhone simulator.
I was surprised that the renderer ported over so well. It was written for the PC. On the PC it supports both Direct3D and OpenGL—I stripped out the Direct3D portion. It is quite a large piece of code, with about 40 files or so and maybe 15,000 lines of code. I've only ever compiled it with Visual Studio, and the gcc compiler used for iPhone is substantially different.
I thought the biggest hurdle would come from the fact that the iPhone framework is written in Objective-C, whereas my renderer is all C++. As it turns out, Objective-C files that have the extension .mm happily coexist in both worlds: they can call C++ object member functions as well as Objective-C object methods. So I wrote one or two Objective-C classes to interact with the iPhone OS and framework. I have my two dozen or so C++ classes that make up the engine. And then I have three or four "adapter" classes in .mm files that help my C++ classes talk to the iPhone OS.
I tried to get an iPhone this week to test the code on. (The iPhone Simulator on the Mac tells you nothing about how your code will actually perform on the iPhone. Presumably the iPhone will run quite a bit slower for complex 3D scenes.) Unfortunately, with the June 9th announcement of the new iPhone, nobody is selling iPhones anymore. So I got an iPod Touch instead. But I'm still having to wait because Apple hasn't gotten us our Developer certificate yet. You need that to make your iPhone/iPod Touch into a development device.
So on the one hand I'm learning the iPhone SDK. On the other hand I'm working on Phit, upgrading it for life on the iPhone.
Specifically, I wanted to improve the way the pieces move in Phit, making them smoother and more natural. The iPhone sets a high standard for user interface "feel", and I want iPhit to meet or exceed that standard.
So I'm creating a new physics system for iPhit. It uses Verlet integration to move and constrain pieces, and features a sophisticated collision detection system so that pieces can "stack" and won't pass through each other. The implementation I have now seems to work very reliably, but is slower than I'd like. Still, it begins to give an idea of iPhit might feel on the iPhone. Feel free to try out the new physics and let me know what you think.
Labels: games, iPhone, Phit, programming, technology
|
|
||||||||
Since the release of Phit last year, this simple, addictive puzzle game has become one of the web's most popular past times. Now it's time to spread the word that Phit is coming to the iPhone.For the past few weeks I've been working with Armor Games to port Phit into a native iPhone application. We're adding multi-touch capability so you can drag more than one piece at a time. We're updating the way pieces move to be more fluid and responsive. And we're providing a whole new set of fresh puzzles—even experienced players will discover new challenges.
We think Phit will be the perfect boredom-basher for iPhone users everywhere. Keep an eye on this space to find out when iPhit will be available in the iPhone App Store.
|
|
||||||||
Then Hyatt drops a bombshell. At Thomas Nelson, competitive advantage is more important than brand equity. A well-written book with great ideas, he claims, is better than a book with a famous author. He awards well-written/great-idea books "Tier B" status, whereas books merely written by famous people languish in "Tier C." (Books with both great writing and a "platformed" author receive the coveted "Tier A" rating.)
Brains over beauty? That's what Mike claims. Score one for the little guys! Publication—here we come!
And yet—something about Mike's post strikes me as fishy. Maybe it's my own sad experience of smashing up against the door to publication. Maybe it's my inner cynic gritting his teeth at a cruel glimpse of hope. Or maybe it's the fact that out in the real world, publishers don't think like Mike Hyatt thinks.
Consider Thomas Nelson's own bestseller list. (It's not actually a bestseller list. None of the top three titles score better than 4,000 in the Amazon sales rankings. It's a "what we wish were bestsellers" list.)
Who's the author of their number one "bestselling" title? Bill Cosby. Yes, that Bill Cosby.Number two: Max Lucado, the most prolific writer in Christendom.
Three: David Jeremiah, megapastor. Starting to see a trend?
The trend continues through the top twenty, thirty books. William Bennett. Beth Moore. John Eldredge. Stasi Eldredge. Another Max Lucado. Frank Peretti. Bono. In fact, every author that Nelson spotlights as a "bestseller" is either a TV personality, an already-bestselling author, a radio host, or all of the above. I see Tier A books (celebrity + good writing). I see Tier C books (celebrity + bad writing). Tier B books are conspicuously missing.
Mike Hyatt says good writing trumps celebrity. His company's favorite books are all about celebrity. Where's the disconnect?
In a more recent post, Hyatt lays out some of his reasons for blogging. He says, "When I am writing, I have my employees in mind first." Maybe this statement holds the answer.
Maybe when Hyatt champions good writing, he is prescribing policy, not describing it. Maybe he regrets that his editors and marketers clamber after titles with "platform" while overlooking quiet gems. Maybe he wants to reverse the trend.
But is it really reversible?
Having worked in the video game industry for over a decade, I've seen the inner world of how games get chosen and made. I've seen great ideas passed over because they didn't have a game god to champion them. I've seen millions of dollars poured into losing ideas because the people who pushed them were "stars." In the games industry, celebrity almost always trumps quality.
The principle is universal. In an uncertain world, decision makers gravitate toward what is familiar rather than what is actually good. I got a Mac last week. I love it. Why didn't I get one before? Uncertainty. This morning I was thinking about buying a new file server. I visited the Dell site. Later I thought: "If I love my Mac so much, why don't I think about getting a Mac for my file server?" But I knew the answer: Uncertainty. I know Dells. I've used them for years in a million ways. Sometimes they've betrayed and cheated me, but I know their wiles. They may be worse, but I know how they're worse. I didn't even considering buying a Mac.
Fear of the unknown. Maintaining the status quo. "A fool returns to his folly like a dog returns to its vomit."
Imagine I'm a book editor. I've got two crisp manuscripts in front of me. On my left is a proposal by an unknown author who quilts in his spare time. His book is luscious, profound, riveting, hilarious, life-changing, world-changing. On my right is a proposal by Joel Osteen entitled Polished Turd. Which do I buy?
The answer is not as obvious as you might think. It comes down to a question of numbers. How many early adopters will each book attract? What will the book's infection rate be?
Every product—game, book, toothbrush, anything—has some number of early adopters. These are the people who buy a product as soon as they get wind of it. They're fans. They search for news about the product. They subscribe to the mailing list. There are 1 million people who will buy U2's next album on the day it comes out. (I'm one of them.) They don't care if it consists of 60 minutes of pulsing static: it's U2, they'll take it. These are U2's early adopters.
Those of us who make and sell products love early adopters. Three reasons:
- They buy early.
- They buy predictably.
- They buy crap.
So what's a book editor to do? I look at the initial sales figures for the last Osteen book. That tells me, roughly, how many early adopters he has. ("Roughly" because if the book sold well after the initial wave, the number of fans probably increased, but if it sold poorly then we may have lost some.) I do the math. The J Man (as I teasingly call him—we're old pals by now) will sell at least 2 million copies of Polished Turd. Well, okay, discount 25% because of the title. Call it 1.5 million.
Now I look at Quilter-Boy's masterpiece. If everyone in the world were forced to read it, 90% would love it and world peace would ensue. But we can't use force, unfortunately. So we pay for endcaps in B&N and Borders and slip Amazon a little something to nudge their Recommendations engine. Now millions of people will see the book. It will pass across their optic nerve, if only for a moment. Will they buy it?
I laugh aloud and shake my head, recalling past glories and regrets. Phew! What a question that is! How long you got?
Will the title grab them? Will my cover designer score another Poisonwood Bible? Who can I get to write the blurb? Who can I get to endorse? Who'll write the forward? How handsome is the author? How interesting his bio?What's the competition? Will this book stand out? What titles are other publishers developing that could get the jump on us?
Is the world "feeling" this book? There's an edge of gloom to this guy's writing—is the mood of the day on the upswing? Maybe we should let it lie for a year or two. The market might be more open then.
So how many early adopters will we get? Unknown. I can ballpark it. But ballparking doesn't feed the kids.
So we ask another question. What's the infection rate? Will the thousand-odd people who read this book in the first few weeks get their friends to read it? How many early adopters will become evangelists? How virulent will their evangelism be?
"Yeah, I read it—it's okay." "There's this book I've been reading that has really got me thinking." "Listen! I just finished this new book—in one night—and you have got to read it. If you don't, we can't be friends anymore."
The infection rate is a number. It answers the question: How many new readers does each new reader make? Zero—the book is a bomb. Nobody who read it recommended it. Zero point Five—the book is okay. One out of every two readers got someone else to read it. One—the book is good. Every reader made another reader.
Two. Five. Ten. Now we're getting into Philosopher's Stone numbers. People can't talk about the book without wiping foam from their lips. Those who haven't read it feel they have to apologize.
This is what I want for Quilter-Boy. He deserves it. But will he get it?
Unknown.
For both books, their sales will be the result of their early adopters and their infection rates. An unknown author's only chance is to write such an incredible book that the infection rate is huge. Even then, infection takes time. Harry Potter's first print run was 500 copies. That was 1997. It took two years—it must have felt an age to Rowling—before the series hit the bestseller lists.
Why would an editor take a chance on so many unknowns? Here's where Mike Hyatt steps in. "We have to find the next generation of talent," he says in a related post. "In fact, we will continue to take risks on those relatively few manuscripts that are exceptionally well-written."
Why? Because the safe road leads to stagnation.
We're learning that hard truth in the games industry, where every other game is a remake of DOOM. The risky, innovative Wii is trouncing the competition. The latest Unreal Tournament (the fifth installment in the series) sold worse than all the others. Even the evergreen Ultima series died around sequel #7. (I helped dress the corpse of #9.) If the youthful games industry is learning it, the book industry must have learned it centuries ago. When it comes to choosing what product to make, risk is a necessary evil.
So I don't believe that Thomas Nelson—or any other publisher—will ever take on risky writers with as much enthusiasm as we'd like. They'll tell themselves that their Tier Cs authors belong in Tier A while tossing Tier Bs out the window. Mike Hyatt imagines a world where Tier Bs get the respect and investment they deserve. It's a dream, but maybe dreaming it can make it more true.
|
|
||||||||
Our family invented a new game this weekend. It's fun and cheap so we thought we'd share it with you.We call it "Sculpture Garden." It's good for any number of players. Our 3-year old found it boring, but our 5- and 9-year olds loved it. It would probably work for 4s too, but we don't have one to test with! Oh, and I liked it a lot, which is more than I can say for most children's games.
To play, you need a set of wooden play blocks. If you have kids, you probably already have some. You want a set with interesting shapes (not just cubes) and plenty of pieces. Our set started out as 100 pieces, but we've probably lost a few.
Begin the game by removing all the blocks that don't sit "flat." Our set has triangular blocks and a sort of curved block that don't stack well. We set these aside.
Now pick three blocks and set them down about 9 inches apart. Choose who goes first, then take turns.
On your turn, you pick a block without looking (we kept them in the box, averted our eyes, and reached in). Then place the block on top of one of the three stacks.
If a stack falls over, you lose! If more stacks remain standing, the "surviving" players can keep playing to see who gets first place.
That's all there is to it.
Yes, it's like Jenga. But:
- You don't have to buy a Jenga set.
- It's faster to set up and put away.
- There's more strategy. You can decide which stack to place a block on each turn, and this choice allows you to "rig" other players.
- The stacks make interesting, abstract sculptures that look quite fun—until you destroy them.
|
|
||||||||
Every PC user switching to a Mac should see Dan Rodney's list of Mac-related symbols and keys, as well as LifeHacker's superb guide to the Mac for PC immigrants. Particularly helpful tidbits:- In Firefox for Mac, use Control+Tab/Control+Shift+Tab to toggle between tabs. This is similar to the inteface on the PC, except that the Mac Control key and the PC Ctrl key are really not the same.
- If you're in an application and you need to toggle over to the Finder, then back again, don't minimize the application. If you minimize it, there's no way to restore it without using the mouse. Instead, use Cmd+H to Hide the app. Then restoring is just a matter of Cmd+Tabbing back to it. (Now how do you hide all apps at once?)
Labels: Mac















