Caída Muerta: OpenGL ES v1.x
Actualmente Cocos2D está siendo revisado para una liberación de v2.0. Esto sólo apoyará OpenGL ES 2.x y así los juegos hechos con Cocos2D v2.x no correrán en 1ros & 2dos dispositivos de generación (I-Phone, I-Phone 3G, iPod Toque 1 & 2).
Los dos hilos de desarrollo en el foro Cocos2D aquí y aquí están llenos de usuarios que expresan su desilusión (entre otras emociones/crítica) para no apoyar un corazón de interpretación que apoya tanto GL ES 1.x como 2.x. Aunque se dijera que si usted todavía tiene que apoyar todos los dispositivos, usted puede seguir simplemente usando el Cocos2D v1.x rama.
He dirigido algunos números y vine a la conclusión siguiente: ¡si su juego sólo apoya OpenGL ES 2.x y sale en 2012 Q1, usted perderá a menos del 10 % de clientes!
Aquí está por qué creo que OpenGL ES v1.x está actualmente en el proceso de caerse muerto, y cerca de la golpeadura de la tierra dentro de la llegada ~6 meses.
Estadística de Ventas de I-Phone Q1 2011
Wikipedia tiene una lista agradable de la estadística de ventas de I-Phone (totales) ya que ellos fueron relatados por la Manzana cada cuarto. Estas estadísticas se extienden de 2007 Q3 a 2011 Q1. Lamentablemente, ventas por la Manzana no son relatados por el dispositivo, entonces algunas ventas trimestrales son combinadas ventas del I-Phone 3G + I-Phone 3GS respectivamente I-Phone 3GS + I-Phone 4. Unfortunately, sales by Apple are not reported by device, so some quarterly sales are combined sales of iPhone 3G + iPhone 3GS respectively iPhone 3GS + iPhone 4.
Traté de extrapolar ventas de dispositivo individuales haciendo la asunción que con el tiempo los períodos donde dos dispositivos de I-Phone diferentes estaban siendo vendidos, el más nuevo probablemente se venderían más. Ya que hablamos del Apple I eligen una hendidura de 70/30, significando que supuse que el 70 % de las ventas fuera para el dispositivo más nuevo. Esto parece sobre directamente ya que los dispositivos más nuevos siempre se han vendido mejor que la generación anterior, sino también según un poco de estadística de revelador. This seems about right since newer devices have always sold better than the previous generation, but also according to some developer statistics.
Por ejemplo los reveladores de Golpe que relatan un iOS 4 precio de adopción del 90 % en el enero de 2011 a través de todos los dispositivos iOS (los 1ros dispositivos de generación no pueden instalar iOS 4). O Surgeworks iOS 4 informe de Adopción que contiene la estadística de uso de 1ros usuarios de dispositivo de generación de sólo el 2.5 % para un app, y el I-Phone del 5 % 3G usuarios para otro app.
La izquierda de las cartas de tarta siguientes muestra el número total de dispositivos de I-Phone vendidos a aquella fecha, con períodos de ventas de dos dispositivos combinados. Las cartas de tarta en el derecho muestran la estadística de ventas extrapolada para generaciones de dispositivo de I-Phone individuales, y que OpenGL versión de ES ellos apoyan.
Descargue la hoja de Excel yo solía crear estas cartas:
Note como en 2010 Q1 aproximadamente dos tercero de todos los dispositivos de I-Phone sólo apoyó OpenGL ES 1.x, pero dentro de un año el cuadro giró sólo el otro camino. ¡En 2011 Q1 dos tercios de dispositivos de I-Phone vendidos eran capaces de dirigir OpenGL ES 2.x código!
Esto tiene mucho para hacer con dos factores: el I-Phone 4 se vendió como el loco, mientras que último OpenGL ES 1.1 I-Phone vendido (I-Phone 3G) fue discontinuado en el junio de 2010. Significando ya que la Manzana de 2010 de Q3 ya no vende OpenGL ES 1.1 dispositivos de I-Phone. Y OpenGL ES 1.1 Toques de iPod dejó de venderse en 2010 Q4 también. Meaning since Q3 2010 Apple does no longer sell OpenGL ES 1.1 iPhone devices. And OpenGL ES 1.1 iPod Touches stopped selling in Q4 2010 as well.
Toda la Estadística de Ventas de Dispositivo iOS Q2 2011
Según el No conectado, la Manzana hizo un informe para haber vendido 200 millones de Dispositivos iOS durante el iOS 5 anuncio. 25 millones de aquellos eran iPads. Éstos son las ventas más modernas stats, que asumo para ser el Q2 2011 estadísticas. These are the most up to date sales stats, which I assume to be the Q2 2011 statistics.
Basado en los números de Wikipedia que declara 83 dispositivos de I-Phone de Mio. vendidos contra más de 60 dispositivos de Toque de Mio. iPod vendidos, 175 Mio. restantes deberían ser el 42 % iPod Toque (74 Mio) e I-Phone del 58 % (102 Mio).
El porcentaje de OpenGL ES 2.x dispositivos de I-Phone capaces a aquellos único apoyo OpenGL ES 1.1 era el 31 % en 2010 Q1 y brincó al 64 % en 2011 Q1. Asumiendo los 1.1 a 2.x la proporción es el mismo para el Toque de iPod, que nos da 137 dispositivos de Mio iOS (I-Phone, iPod Toque, iPad) con OpenGL ES 2.x capacidad contra 63 dispositivos de Mio (1er & 2do I-Phone de generación / iPod Toque) que no apoya 2.x.
Esta carta de tarta incluye todos los Dispositivos iOS y que OpenGL versión de ES ellos apoyan:
Esto significa que el 70 % de todos los dispositivos iOS vendidos a la fecha apoya OpenGL ES 2.x. Esto nos deja con sólo el 30 % de dispositivos iOS no capaces de dirigir OpenGL ES 2.x código.
¡No quiero perder al 30 % de mis clientes!
¡Usted no va!
Tenga presente que estas estadísticas sólo son sobre dispositivos vendidos. Ellos no reflejan lo que ha pasado a estos dispositivos desde entonces, o como ellos están siendo usados hoy.
También puedo afirmar que los dispositivos más viejos desaparecen rápido del mercado. Aunque el 30 % de los dispositivos vendiera el apoyo sólo OpenGL ES 1.1, su base de cliente potencial será considerablemente menos que el número de dispositivos vendidos. Esto es para una variedad de motivos: This is for a variety of reasons:
- el dispositivo ha sido perdido o fue robado
- dispositivo roto más allá de uso/reparación
- dispositivo simplemente ya no en uso
- el dispositivo poseído por una persona que con poca probabilidad comprará nuevo apps
En particular el último artículo debe considerarse: el usuario de dispositivo. Otra vez, el usuario es su cliente potencial, no el dispositivo. Y en general todos estos artículos con mayor probabilidad pasarán el más viejo que el dispositivo es. Again, the user is your potential customer, not the device. And in general all of these items are more likely to happen the older the device is.
Un commenter en uno de dos GL ES 2.0 hilos en el foro Cocos2D relató como los usuarios felices debían ver un juego correr suavemente en sus 1ros dispositivos de generación. Para mí que no soy la prueba que el apoyo a dispositivos más viejos es beneficioso. Al contrario, creo que claramente nos muestra que los viejos usuarios de dispositivo de generación son mucho más selectivos sobre sus compras, dejan ya su amor por sus dispositivos, y pueden considerar una mejora porque ellos pueden haber dejado de disfrutar de sus dispositivos. Esto contribuye al "menos probablemente para comprar nuevo apps” factor. To the contrary, I think it clearly shows us that old generation device users are much more selective about their purchases, are already giving up their love for their devices, and may be considering an upgrade because they may have stopped enjoying their devices. This contributes to the “less likely to buy new apps” factor.
Usted también puede suponer que los usuarios de dispositivos más viejos tengan menos ingresos prescindibles, o estén satisfechos por el dispositivo como es. Si un usuario es realmente contento con un viejo dispositivo iOS, es probable que la persona prefiera usar apps y juegue a pocos juegos (er) o sólo siga usando el apps & juegos ya poseídos.
El número de clientes potenciales que usted perdería – si usted liberara OpenGL ES 2.0 juego ahora mismo – es tal vez aproximadamente el 10 % al 20 % como máximo. Mucho menos si su juego es complejo y visualmente rico, y sufriría un poco de rendimiento o degradación visual en dispositivos más viejos de todos modos.
¿Y el futuro próximo?
(Q1 2012)Considerando que 6 meses de ahora, en 2012 Q1, habremos visto la liberación de nuevos dispositivos de I-Phone (I-Phone 5, posiblemente iPod 5) y así otro retumbo en ventas, es un mejor acuerdo de comenzar a hacer algunos efectos visuales chulos con shaders que parecen grandes en el I-Phone 4 y 5 más bien que tratar de apoyar todavía 1ros y 2dos dispositivos de generación.
En particular si usted tiene que poner en unos (o mucho de) el esfuerzo de apoyar los dispositivos más viejos, por ejemplo si usted tiene que optimizar el rendimiento, reducir el conjunto de características (eg ningún o limitó el apoyo de Centro Animoso) o (Dios prohíben) usted tiene que asegurar la compatibilidad por iOS 3.0.1 o más abajo (¡CADisplayLink no disponible!). ¡Aquel tiempo y esfuerzo son mejor gastados para la fabricación de mejor OpenGL por ES 2.x juego! That time and effort are better spent on making a better OpenGL ES 2.x game!
Obviamente la decisión también depende de como visualmente rico su juego va a ser y si usted puede esperar toparse con el rendimiento y otras cuestiones de dispositivos más viejos de todos modos.
Resumen
Totalmente espero la cuota de mercado de OpenGL ES 1.1 dispositivos vendidos para caerme a aproximadamente el 20 % hacia 2012 Q1. Esto pone el número de clientes potenciales (para reveladores animosos) todavía usando aquellos dispositivos y comprando juegos seguramente a mucho menos del 10 %. Entonces considere que el I-Phone 5 puede explicar ya hasta hasta el 5 % (~10 Mio) de todos los dispositivos iOS vendidos hacia 2012 Q1. Then consider that the iPhone 5 may even already account for up to 5% (~10 Mio) of all iOS devices sold by Q1 2012.
Hacia el final de 2012 la base de cliente potencial (para reveladores animosos) todavía la utilización de 1ros y 2dos dispositivos de generación se habrá hecho completamente insignificante.
Esto significa, si usted comienza a desarrollar OpenGL ES 2.x juego dentro de los próximos 3 meses, y su juego toma 3 + meses para completar, usted perderá a muy pocos clientes apoyando sólo 3ra generación y dispositivos más nuevos. ¡Y usted realmente puede ser capaz de ganar a más clientes apoyando hábilmente los nuevos dispositivos!
Creo que es sabio comenzar a usar Cocos2D v2.0 tan pronto como es listo para la producción, que puede ser en aproximadamente 3-6 meses según los comentarios y progreso corriente.
¡Juego En, Cocos2D 2.x!








