Aren't most developers moving to cross-platform "write once, compile many" solutions?
i.e. Marmalade, Corona, Unity?
This is still helpful but chance many successful developers never really see their coding change because this will be a layer behind the 3rd party dev system they use.
Not if you're anti-android, pro apple. Then this is a win win.
I honestly think this is also Apple's way of drawing developers into their platform and out of other platforms with the ease of use of spritekit. Also, if you've seen the numbers, it's already discouraging to develop for android.
I find it difficult to believe Apple won't make a serious play for the gaming industry considering their recent developments. With Apple developing Game Center, Game Center improvements, Core Motion, Sprite Kit and Game Controller APIs an argument could already be made.
Apple is targeting the mass market for 2D arcade style games in iOS 7
Yes. Obviously. But another benefit to baked-in 2D sprite-based animation and particle systems is easier animation in non-game apps. Sure, you need to be careful with animation in apps, because overdoing it can be fatiguing and/or distracting for users. But still, when you need to add just a touch of personality to an app's interface, animation can help a lot.
Core Graphics can do lots of things, but Sprite Kit may be able to do things that are beyond it. Without requiring a 3rd party library out of Apple's control or learning to code OpenGL.
In that case, maybe Sprite Kit is based on what Apple uses for the new Messages scrolling balloon animation. Perhaps intented more for those one-off uses, like how Delicious Library used Scene Kit, and not to build an entire game with.
No one is going to use Sprite Kit for ordinary UI animations. We have Core Animation for that, and it's very good at its job (all UI stuff in iOS is backed by Core Animation layers, and iOS's UIKit builds an even easier to use animation system on top of it). And yes, Core Animation is built on top of OpenGL, which is why it's so fast.
The bouncy message bubbles in iOS 7's messages app are done with UIKit dynamics, a new feature in iOS 7.
Here's what I think, this is good and bad for different reasons.
If you're hardcore married to the concept of multi-platform, write-once-behave-mediocre-on-everything paradigm, eg Electronic Arts, then this is just a bad thing. EA (more specifically, Maxis) uses SDL/OpenGL on the Mac. So something like this is unlikely to be used since it can't be ported to the PC or other game consoles (PS3/PS4/Wii) even if they have OpenGL.
When Game developers write a game that targets the WiiU/PS3, they don't have to change as much as they have to when they target the Xbox360.
On the other hand, developers routinely have to write new abstraction code for every platform anyway, so if this simply allows for an accelerated interface (OpenGL/OpenCL) to the hardware, developers will use it. It would be in Apple's best interests in being able to target Windows from Xcode, and allow for OBJC OSX games to be compiled and run on Windows own OpenGL/OpenCL capability. Developers could then simply write their entire 2D game on OSX, given some audio library and game controller abstraction.
Or you know, they can just keep on using SDL and the SDL developers will instead use the SpriteKit if it's available.
As for why not use some other game engine? Well it goes back to the same reason why people don't just write games in HTML5. It's layers upon layers of abstraction and frameworks, that to do something simple often involves more work (and on portable devices like the iPad) and sucks back the battery life in doing so. On portable devices you pretty much want to make the smallest, program necessary. On the PC/Mac desktop this isn't as important. The prime reason we won't see HTML5 game development is because Chrome and Firefox use single-threaded 32-bit javascript engines.
Doesn't it seem awful strange that games released today look the same as they did in 2002? What happened? CPU single-thread performance flatlined (indeed most games today are still only using one cpu core) All that has changed since 2002 is that cores have been added, but games still fail to take advantage of it. (A pentium 4 3Ghz has a passmark of 700, a Intel Core i3-2367M has a passmark of 713, and a AMD A4-4355M APU has a passmark of 695 and a Intel Core2 6300 1.86GHz has a passmark of 696, or in other words, the cheapest laptop processors out there have the same single-thread performance as a 10 year old desktop.
GPU performance on the other hand has scaled completely differently. The performance of the current Haswell GPU in the i7-4770k passmark is 633, if anything that can be considered base-line, and sits right between the GeForce GT 430 at 645 passmark and the Radeon HD 2900 PRO at 617 passmark. That latter GPU is relevant because it's the same family as the Xbox 360, but was released in 2006.
So todays games have largely been stuck with the expectation of single-thread performance of a 10 year old CPU with the GPU performance of a 6 year old GPU. Games have to be able to scale back their performance to DirextX9 (2002) levels of performance so that they can run on the minimum hardware that is still passed off as "new" today.
Who's to blame really. Intel for making cheap graphics parts so that laptops and "ultrabooks" don't have discreet video parts, OEM's for using these "good-enough" graphics parts in all their low-margin computers, or developers themselves who keep programming like it's 2002? Look at the complaints about developing for the multi-core PS3, and Xbox360. Yet here we go with mobile devices having dual and quad core cpu's and fairly powerful GPU's, and they still don't know how to use it.
If Apple has found a way to make more efficient use of the CPU/GPU by abstracting the threading issues away, then let them. Maybe a game on OSX/iOS that utilizes it will blow away a similar game not using it.
Here's what I think, this is good and bad for different reasons.
If you're hardcore married to the concept of multi-platform, write-once-behave-mediocre-on-everything paradigm, eg Electronic Arts, then this is just a bad thing. EA (more specifically, Maxis) uses SDL/OpenGL on the Mac. So something like this is unlikely to be used since it can't be ported to the PC or other game consoles (PS3/PS4/Wii) even if they have OpenGL.
When Game developers write a game that targets the WiiU/PS3, they don't have to change as much as they have to when they target the Xbox360.
On the other hand, developers routinely have to write new abstraction code for every platform anyway, so if this simply allows for an accelerated interface (OpenGL/OpenCL) to the hardware, developers will use it. It would be in Apple's best interests in being able to target Windows from Xcode, and allow for OBJC OSX games to be compiled and run on Windows own OpenGL/OpenCL capability. Developers could then simply write their entire 2D game on OSX, given some audio library and game controller abstraction.
Or you know, they can just keep on using SDL and the SDL developers will instead use the SpriteKit if it's available.
As for why not use some other game engine? Well it goes back to the same reason why people don't just write games in HTML5. It's layers upon layers of abstraction and frameworks, that to do something simple often involves more work (and on portable devices like the iPad) and sucks back the battery life in doing so. On portable devices you pretty much want to make the smallest, program necessary. On the PC/Mac desktop this isn't as important. The prime reason we won't see HTML5 game development is because Chrome and Firefox use single-threaded 32-bit javascript engines.
Doesn't it seem awful strange that games released today look the same as they did in 2002? What happened? CPU single-thread performance flatlined (indeed most games today are still only using one cpu core) All that has changed since 2002 is that cores have been added, but games still fail to take advantage of it. (A pentium 4 3Ghz has a passmark of 700, a Intel Core i3-2367M has a passmark of 713, and a AMD A4-4355M APU has a passmark of 695 and a Intel Core2 6300 1.86GHz has a passmark of 696, or in other words, the cheapest laptop processors out there have the same single-thread performance as a 10 year old desktop.
GPU performance on the other hand has scaled completely differently. The performance of the current Haswell GPU in the i7-4770k passmark is 633, if anything that can be considered base-line, and sits right between the GeForce GT 430 at 645 passmark and the Radeon HD 2900 PRO at 617 passmark. That latter GPU is relevant because it's the same family as the Xbox 360, but was released in 2006.
So todays games have largely been stuck with the expectation of single-thread performance of a 10 year old CPU with the GPU performance of a 6 year old GPU. Games have to be able to scale back their performance to DirextX9 (2002) levels of performance so that they can run on the minimum hardware that is still passed off as "new" today.
Who's to blame really. Intel for making cheap graphics parts so that laptops and "ultrabooks" don't have discreet video parts, OEM's for using these "good-enough" graphics parts in all their low-margin computers, or developers themselves who keep programming like it's 2002? Look at the complaints about developing for the multi-core PS3, and Xbox360. Yet here we go with mobile devices having dual and quad core cpu's and fairly powerful GPU's, and they still don't know how to use it.
If Apple has found a way to make more efficient use of the CPU/GPU by abstracting the threading issues away, then let them. Maybe a game on OSX/iOS that utilizes it will blow away a similar game not using it.
Good post. I am sure they use multi-threading for some things like networking, and maybe other logic. Its difficult to thread UI in a pre-emptive operating system.
Doesn't it seem awful strange that games released today look the same as they did in 2002? What happened?..
Maybe there is just a market for simple looking games that are fun. Does the 53 yr old housewife want 3d virtual worlds?
Analogy.... (ut hoh!)
Today there are thousands of options for electronic music from synthesizers, to computers... all that rich layered sound at your fingertips, yet every week there is a song in heavy rotation on the radio that is just a guitar, drums and a few people singing. Hey... Ho... Hey... Ho..
I know what sprites are, because I am old. I have no idea what "ReBoot" is. Seems reasonable to attempt a couple of sentences explaing some old school tech to the polygon generation.
Doesn't it seem awful strange that games released today look the same as they did in 2002? What happened?..
Maybe there is just a market for simple looking games that are fun. Does the 53 yr old housewife want 3d virtual worlds?
Today there are thousands of options for electronic music from synthesizers, to computers... all that rich layered sound at your fingertips, yet every week there is a song in heavy rotation on the radio that is just a guitar, drums and a few people singing. Hey... Ho... Hey... Ho..
Too true. The mainstream has always skewed towards what has the most broad and bland appeal. That's why it's mainstream. Huge elaborate productions haven't been mainstream since prog rock fell out.
In other words, there's no reason to take it personally the next time a casual Facebook game has more users than a million dollar AAA game. Life is better once you break the subconscious need to validate your entertainment choices by their popularity. This can be difficult from within the false consensus of niche online communities, however: "Yeah, well all my Facebook friends are getting the Verizon Samsung Galaxy S 4 HD Remix, so it must be the most popular phone in the world!"
This goes for tech as well. Having your chosen software platform drop a few percent of market share does not immediately make it a less valid choice. Beyond a certain threshold of developer support, of course; how many people actually used QTVR?
I wouldn't say that Unity3D is used by a special set of game developers. The price point is fantastic for Indie games. If you are willing to fork out around $2,000, you can have every feature of what is honestly one of the coolest game engines on the market considering you can publish to iOS, Android, Blackberry, Windows Phone, Mac OS X, Linux, Windows, and if you are a member of the respective programs, PS3, Xbox, and Wii. Its a much better bargain than Unreal, which wants 25% of your profits.
Most of the 3D indie games I've seen have been based on Unity3D. My upstart bought a few licenses.
Comments
Quote:
Originally Posted by frxntier
Pac Mac? Have I missed something?
"Introducing, the new iPac Mro!"
Quote:
Originally Posted by skyzlmt
Aren't most developers moving to cross-platform "write once, compile many" solutions?
i.e. Marmalade, Corona, Unity?
This is still helpful but chance many successful developers never really see their coding change because this will be a layer behind the 3rd party dev system they use.
Not if you're anti-android, pro apple. Then this is a win win.
I honestly think this is also Apple's way of drawing developers into their platform and out of other platforms with the ease of use of spritekit. Also, if you've seen the numbers, it's already discouraging to develop for android.
Didn't Apple make Scene Kit open source via COLLADA?
After watching a few minutes, I remembered the show as a Saturday Morning cartoon series. Spritacular graphics for the television in their day.
Originally Posted by AppleInsider
Apple is targeting the mass market for 2D arcade style games in iOS 7
Yes. Obviously. But another benefit to baked-in 2D sprite-based animation and particle systems is easier animation in non-game apps. Sure, you need to be careful with animation in apps, because overdoing it can be fatiguing and/or distracting for users. But still, when you need to add just a touch of personality to an app's interface, animation can help a lot.
Core Graphics can do lots of things, but Sprite Kit may be able to do things that are beyond it. Without requiring a 3rd party library out of Apple's control or learning to code OpenGL.
In that case, maybe Sprite Kit is based on what Apple uses for the new Messages scrolling balloon animation. Perhaps intented more for those one-off uses, like how Delicious Library used Scene Kit, and not to build an entire game with.
The bouncy message bubbles in iOS 7's messages app are done with UIKit dynamics, a new feature in iOS 7.
In my opinion this is the biggest new feature in iOS 7 for developers. Users are going to see some very cool apps - both games and non-games.
If you're hardcore married to the concept of multi-platform, write-once-behave-mediocre-on-everything paradigm, eg Electronic Arts, then this is just a bad thing. EA (more specifically, Maxis) uses SDL/OpenGL on the Mac. So something like this is unlikely to be used since it can't be ported to the PC or other game consoles (PS3/PS4/Wii) even if they have OpenGL.
When Game developers write a game that targets the WiiU/PS3, they don't have to change as much as they have to when they target the Xbox360.
On the other hand, developers routinely have to write new abstraction code for every platform anyway, so if this simply allows for an accelerated interface (OpenGL/OpenCL) to the hardware, developers will use it. It would be in Apple's best interests in being able to target Windows from Xcode, and allow for OBJC OSX games to be compiled and run on Windows own OpenGL/OpenCL capability. Developers could then simply write their entire 2D game on OSX, given some audio library and game controller abstraction.
Or you know, they can just keep on using SDL and the SDL developers will instead use the SpriteKit if it's available.
As for why not use some other game engine? Well it goes back to the same reason why people don't just write games in HTML5. It's layers upon layers of abstraction and frameworks, that to do something simple often involves more work (and on portable devices like the iPad) and sucks back the battery life in doing so. On portable devices you pretty much want to make the smallest, program necessary. On the PC/Mac desktop this isn't as important. The prime reason we won't see HTML5 game development is because Chrome and Firefox use single-threaded 32-bit javascript engines.
Doesn't it seem awful strange that games released today look the same as they did in 2002? What happened? CPU single-thread performance flatlined (indeed most games today are still only using one cpu core) All that has changed since 2002 is that cores have been added, but games still fail to take advantage of it. (A pentium 4 3Ghz has a passmark of 700, a Intel Core i3-2367M has a passmark of 713, and a AMD A4-4355M APU has a passmark of 695 and a Intel Core2 6300 1.86GHz has a passmark of 696, or in other words, the cheapest laptop processors out there have the same single-thread performance as a 10 year old desktop.
GPU performance on the other hand has scaled completely differently. The performance of the current Haswell GPU in the i7-4770k passmark is 633, if anything that can be considered base-line, and sits right between the GeForce GT 430 at 645 passmark and the Radeon HD 2900 PRO at 617 passmark. That latter GPU is relevant because it's the same family as the Xbox 360, but was released in 2006.
So todays games have largely been stuck with the expectation of single-thread performance of a 10 year old CPU with the GPU performance of a 6 year old GPU. Games have to be able to scale back their performance to DirextX9 (2002) levels of performance so that they can run on the minimum hardware that is still passed off as "new" today.
Who's to blame really. Intel for making cheap graphics parts so that laptops and "ultrabooks" don't have discreet video parts, OEM's for using these "good-enough" graphics parts in all their low-margin computers, or developers themselves who keep programming like it's 2002? Look at the complaints about developing for the multi-core PS3, and Xbox360. Yet here we go with mobile devices having dual and quad core cpu's and fairly powerful GPU's, and they still don't know how to use it.
If Apple has found a way to make more efficient use of the CPU/GPU by abstracting the threading issues away, then let them. Maybe a game on OSX/iOS that utilizes it will blow away a similar game not using it.
Good post. I am sure they use multi-threading for some things like networking, and maybe other logic. Its difficult to thread UI in a pre-emptive operating system.
Quote:
Originally Posted by Misa
Doesn't it seem awful strange that games released today look the same as they did in 2002? What happened?..
Maybe there is just a market for simple looking games that are fun. Does the 53 yr old housewife want 3d virtual worlds?
Analogy.... (ut hoh!)
Today there are thousands of options for electronic music from synthesizers, to computers... all that rich layered sound at your fingertips, yet every week there is a song in heavy rotation on the radio that is just a guitar, drums and a few people singing. Hey... Ho... Hey... Ho..
http://en.wikipedia.org/wiki/ReBoot
It's on the iTunes US store and possibly still netflix
skyzlmt
Misa
Doesn't it seem awful strange that games released today look the same as they did in 2002? What happened?..
Maybe there is just a market for simple looking games that are fun. Does the 53 yr old housewife want 3d virtual worlds?
Today there are thousands of options for electronic music from synthesizers, to computers... all that rich layered sound at your fingertips, yet every week there is a song in heavy rotation on the radio that is just a guitar, drums and a few people singing. Hey... Ho... Hey... Ho..
Too true. The mainstream has always skewed towards what has the most broad and bland appeal. That's why it's mainstream. Huge elaborate productions haven't been mainstream since prog rock fell out.
In other words, there's no reason to take it personally the next time a casual Facebook game has more users than a million dollar AAA game. Life is better once you break the subconscious need to validate your entertainment choices by their popularity. This can be difficult from within the false consensus of niche online communities, however: "Yeah, well all my Facebook friends are getting the Verizon Samsung Galaxy S 4 HD Remix, so it must be the most popular phone in the world!"
This goes for tech as well. Having your chosen software platform drop a few percent of market share does not immediately make it a less valid choice. Beyond a certain threshold of developer support, of course; how many people actually used QTVR?
Most of the 3D indie games I've seen have been based on Unity3D. My upstart bought a few licenses.