Cocos2D Podcast: Gane Ingresos Adicionales
¡El último episodio del Cocos2D Podcast es!
Esta vez Azam y yo hablamos de las opciones usted tiene que ganar ingresos adicionales de o con su apps, usando iAd anuncios, En - App Compras, vendiendo su código fuente y otras ideas.
Cocos2D Podcast: Ganancia de Ingresos Adicionales
Usted también podría querer leer mi entrada de bitácora Como hacer más de 18.000$ en seis meses vendiendo el código fuente sobre el éxito financiero de mi Starterkit que dibuja la línea. A propósito, soltaré un nuevo equipo animoso en otoño. Más detalles en las semanas próximas. More details in the coming weeks.
Fuentes de Cocos2D: Copyright de Zynga Añadido
Como @GeekAndDad indicado en el Gorjeo la mayoría del código fuente cocos2d ha sido actualizada con un Copyright Zynga. Esto está en la referencia a dos destina (1) (2) en github en la rama desarrollar del cocos2d-I-Phone. (2) on github in the develop branch of cocos2d-iphone.
El jefe de Licencia de MIT ahora comienza con:
* cocos2d para I-Phone: http://www.cocos2d-iphone.org
*
* Copyright (c) 2008-2010 Ricardo Quesada
* Copyright (c) 2011 Zynga Inc.
*
* El permiso es por este medio concedido, gratuitamente, a cualquier persona que obtiene una copia
* de este software y archivos de documentación asociados (el “Software”), para tratar
* […]
¿Sentido?
Esto sólo significa que los cambios hechos en 2011 al código fuente cocos2d son el copyright por Zynga. Que debe ser esperado, ahora que Ricardo es un empleado de Zynga.
Esto no cambia nada en cuanto a la licencia de MIT. Y esto no implica una transferencia de copyright. De hecho, ya que Ricardo todavía es puesto en una lista como el dueño de copyright para los años 2008-2010 esto sugiere que no había ninguna transferencia del copyright. In fact, since Ricardo is still listed as copyright owner for the years 2008-2010 it is suggesting that there was no transfer of copyright.
También note que un poco del código fuente en el proyecto de cocos2d-I-Phone es el copyright por otros reveladores o compañías, cuyo copyright no ha sido cambiado. Esto incluye clases como CCActionEase, CCActionGrid, CCActionPageTurn3D, CCBlockSupport, CCGrabber, CCMotionStreak, CCTexture2D – sólo para llamar a unos cuantos.
Las preguntas más frecuentes me pongo de lectores de mi Aprender el libro de Cocos2D:
- “¿Dónde puedo descargar el código fuente? ”
- “¿Por qué hacen me pongo compilan errores en CCLabel? ”
- “¿Hay allí una versión actualizada de CCAnimationHelper? ”
Todos ellos se reducen al hecho que el libro fue escrito contra el cocos2d-I-Phone v0.99.5 con algunos proyectos usando v0.99.4 y unos cuantos hasta habían usado v0.99.3.
Lamentablemente esto también es por qué algunos lectores descontaron una o varias estrellas en sus revisiones de libros de Amazonas. Incluso más inoportuno porque los cambios que rompen el código eran completamente cosméticos (clases renombradas, parámetros de función funciones quitadas o pedidas de nuevo, desaprobadas a favor de otros). Todos los cambios requirieron la sólo fijación de las líneas usando una de estas clases anticuadas (CCLabel, CCLayerColor) o funciones (bitmapFontAtlasWithString, frameWithTexture, …). All changes required only fixing the lines using one of these outdated classes (CCLabel, CCLayerColor) or functions (bitmapFontAtlasWithString, frameWithTexture, …).
Lista rápida de Cambios
Guardé la pista de los cambios que hice al código fuente. Esto es a qué esto se reduce:
- quite: los EAGLView viewWith …-> quitan el último parámetro: preserveBackBuffer:NO preserveBackBuffer:NO
- quite: CCSpriteFrame: los frameWithTexture-> quitan el último parámetro: offset:CGPointZero frameWithTexture -> remove last parameter: offset:CGPointZero
- quite: CCAnimation: los animationWithName-> animationWithFrames & quitan el último parámetro: marcos animationWithName -> animationWithFrames & remove last parameter: frames
- renombre: CCLabel-> CCLabelTTF
- renombre: CCBitmapFontAtlas-> CCLabelBMFont
- renombre: CCBitmapFontAtlas: bitmapFontAtlasWithString-> labelWithString bitmapFontAtlasWithString -> labelWithString
- renombre: CCXxxxxTransition-> CCTransitionXxxxx
- renombre: CCColorLayer-> CCLayerColor
- renombre: CCQuadParticleSystem-> CCParticleSystemQuad
- renombre: sistema de partícula: centerOfGravity-> sourcePosition centerOfGravity -> sourcePosition
- cambio: sistema de partícula: use NSUInteger en vez del intervalo para initWithParticleCount use NSUInteger instead of int for initWithParticleCount
Éstos son los cambios que afectan el código fuente del libro. Había algunos cambios más del motor de cocos2d-I-Phone, por ejemplo algunas acciones han sido renombradas también.
Buenas noticias:
Código fuente Actualizado para v1.0Actualicé el código fuente del libro para usar el cocos2d-I-Phone v1.0.0 rc2. Una vez que el final v1.0 es soltado haré otra actualización.
Usted puede conseguir el código fuente del libro de Aprender la página de producto de Libro de Cocos2D (voluta al fondo), o vía esta relación de descarga directa. La descarga es aproximadamente 100 MB y contiene el código fuente de todo el capítulo más algunos proyectos suplementarios no mencionados en el libro, y todos ellos (¡más de 70!) usan ahora el cocos2d-I-Phone v1.0.) are now using cocos2d-iphone v1.0.
Note: Este código obviamente se diferencia ligeramente del código descrito en la primera edición de Aprender el libro de Cocos2D, entonces usted debería ponerse v0.99.x no modificados reservan el código fuente también.
La mejora a Cocos2D v1.0
También recientemente escribí un seminario que perfila los pasos para actualizar un cocos2d-I-Phone existente v0.99.x proyecto a v1.0 por si usted tenga un proyecto existente que le gustaría mejorar a la última versión Cocos2D.
Aprenda Cocos2D:
Segunda EdiciónTodos estos cambios serán reflejados en la segunda edición de Aprender el libro de Cocos2D.
La segunda edición será el verano 2011 soltado, probablemente alrededor de julio hasta agosto. Esto es mi estimación basada en el hecho que se programa que mi trabajo es completado el 27 de junio, y trabajo mucho para guardar aquel horario (apretado).
Realmente, haga esto trabajamos mucho. La segunda edición de Aprender el libro de Cocos2D tendrá contribuciones de un coautor. ¡Alguien que es famoso en la comunidad Cocos2D! Ser descubierto.
Someone who is well-known in the Cocos2D community! To be unveiled.
Libro: Aprenda Cocos2D
Aprenda el I-Phone e iPad Cocos2D desarrollo Animoso proporciona una introducción absoluta al motor de juego de I-Phone cocos2d e instrumentos relacionados. Esto se concentra en el proceso de crear varios juegos hechos completamente con cocos2d y poco a ningún I-Phone código de OpenGL y SDK. Creando 2-3 juegos de muestra sobre el curso del libro usted aprenderá conceptos claves de los instrumentos de motor y relevantes animosos cocos2d como Zwoptex (TextureAtlas), ParticleDesigner (Efectos de Partícula), y otros. By creating 2-3 sample games over the course of the book you’ll learn key concepts of the cocos2d game engine and relevant tools like Zwoptex (TextureAtlas), ParticleDesigner (Particle Effects), and others.
Los juegos de ejemplo son modelados después de juegos de Tienda de App populares de modo que ellos sean relevantes, reconocibles, e inmediatamente divertidos e inspiradores. Los juegos aumentan en la complejidad y destacan la repetición común cocos2d preguntas de principiante. Como usted circula, usted aprenderá sobre escollos posibles y como navegarlos con éxito. Como usted se mueve de comenzar al avanzado, usted encontrará sabiduría de programación animosa general, puntas para la mejora de rendimiento, así como agujas de realizaciones alternativas y lectura adicional. As you move along, you’ll learn about possible stumbling blocks and how to navigate them successfully. As you move from beginning to advanced, you’ll encounter general game programming wisdom, tips for performance improvement, as well as pointers to alternative implementations and further reading.
Se supone que el lector tiene el conocimiento de programación anterior, pero no necesariamente con el Objetivo-C. Sólo hablan de temas relacionados, como Xcode, Objetivo-C, el I-Phone SDK, y OpenGL donde absolutamente necesario.
Lo que usted aprenderá
- Familiaridad con el corazón cocos2d API de motor animoso y el motor de física Box2d
- Entendimiento del proceso y las mejores prácticas de desarrollo animoso, en el contexto de cocos2d y sus instrumentos relacionados
- El entusiasmo y el entusiasmo para crear sus propios juegos se aparearon con una realización que usted es capaz de crear juegos que pueden competir en la Tienda de App
- Donde ir de aquí: más información y realizaciones alternativas
Para quién este libro es
El libro es apuntado al principio de reveladores animosos que buscan una manera más fácil y aún más potente de crear la 2da utilización de gráfica irresistible OpenGL y Objetivo-C. Se supone que el lector tendrá un poco de conocimiento de programación orientada al objeto y la Manzana y ambiente de revelador iPhone/iPad.
Índice de materias
- Introducción
- Inicio
- Elementos necesarios
- Su Primer Juego
- Componentes básicos animosos
- Elfos a Fondo
- Desplazamiento con Alegría
- Fusile les
- Efectos de partícula
- Funcionamiento con Tilemaps
- Tilemaps isométrico
- Motores de física
- Juego de flipper
- Centro animoso
- Del Común
|
Detalles de libro
|
Recursos de libro
Descargas: Instalador para cocos2d-I-Phone v0.99.5 Compre el Libro vía Amazonas: |
Una discusión en curso sobre como enviar/recibir correctamente datos con el Equipo Animoso en el Cocos2D Central me incitó a escribir un proyecto de demostración de complementar Aprender el capítulo de Centro de Juego del libro de Cocos2D. El código trabajador que resulta está en este correo, y también reimprimido abajo.
Game Kit Data Envía/Recibe el Proyecto de Demostración (descarga aquí) está basado en Aprender el código de libro de Cocos2D hecho para el Capítulo de Centro Animoso. Esto ha llamado Tilemap16 sólo para quedarse de acuerdo con el esquema de nombramiento.
Usted controla pequeño Ninja como de costumbre, pero esta vez en cualquier momento usted lo mueve, también hará circular todos otros dispositivos relacionados porque la coordenada de azulejo es enviada vía el Equipo Animoso a todos los jugadores relacionados, pero sólo cuando realmente cambia. La demostración hasta permite que usted mueva Ninja a cualquier dispositivo, y todos los otros seguirán, entonces esto realmente trabaja en cada dirección. Además, una variable de resultado (intervalo) es transmitida cada marco sólo para mostrar como enviar tipos diferentes de datos en tiempos diferentes. In addition, a score variable (int) is transmitted every frame just to show how to send different types of data at different times.
Lamento que yo no pudiera haber hecho una película para mostrar que chulo esto es demasiado ay, mi iPod estaba ocupado dirigiendo la demostración, entonces todo que puedo mostrar como la prueba es mi iPod e iPad marcha del juego con ambos Ninjas en la misma posición (imagen pulposa hecha con mi I-Phone ya antiguo 3G bajo programación perfecta, pero condiciones de iluminación terribles):

Ejemplo de Código fuente
En el resumen esto es el código que esto es usado para enviar/recibir a datos con la ayuda de la clase de GameKitHelper que escribí para el libro (también incluido en la descarga y libre de usar para cualquiera y cualquier objetivo):
typedef enum
{
kPacketTypePoint,
} EPacketTypes;
typedef struct
{
Tipo de EPacketTypes;
} SPacketInfo;
typedef struct
{
Tipo de EPacketTypes;
Punto de CGPoint;
} SPointPacket;
Envío de un paquete:
{
La posición de CGPoint = [toca locationInView: [toque la visión]]; [touch view]];
Paquete de SPointPacket;
packet.type = kPacketTypePoint;
packet.point = posición;
gkHelper = [GameKitHelper sharedGameKitHelper];;
[gkHelper sendDataToAllPlayers: &packet length:sizeof (paquete)];packet length:sizeof(packet)];
}
Recepción del paquete:
{
//en primer lugar, suponga que sea SPacketInfo general, así podemos tener acceso al tipo
Paquete de SPacketInfo* = (SPacketInfo *) [bytes de datos];SPacketInfo*)[data bytes];
interruptor (paquete-> tipo)>type)
{
caso kPacketTypePoint:
{
SPointPacket* pointPacket = (SPointPacket *) paquete;SPointPacket*)packet;
CCLOG ("recibió el punto: %.1f, %.1f", pointPacket-> point.x, pointPacket-> point.y); %.1f, %.1f", pointPacket->point.x, pointPacket->point.y);
ruptura;
}
falta:
CCLOG ("recibió el tipo de paquete desconocido %i", paquete-> tipo);, packet->type);
ruptura;
}
}
Requisitos & Sistema
Usted necesita:
- 2 dispositivos que son el Centro Animoso capaz, eg ellos deben tener el Centro Animoso App instalado. Si no es, aquel dispositivo no está listo para el Centro Animoso. Los 1ros & 2dos dispositivos de Generación hasta el I-Phone 3G no apoyan el Centro Animoso. Además el Simulador no trabajará debido a Matchmaking/Invites no apoyado en el Simulador. 1st & 2nd Generation devices up to iPhone 3G do not support Game Center. In addition Simulator will not work due to Matchmaking/Invites not being supported on the Simulator.
- 2 cuentas de Centro Animosas (usted puede crear cuentas falsas vía el Centro Animoso App)
Lo que usted tiene que hacer:
- Cree nuevo App en iTunes Unen, permiten el Centro Animoso de que App, y sustituyen el Bulto ID de su App con el que en info.plist del proyecto. Por favor refiérase a la sección de Centro Animosa en el iTunes Unen la documentación.
- Asegúrese que las Notificaciones de Empuje son permitidas en todos los dispositivos vía Ajustes App.
- Dirija el Centro Animoso App en ambos dispositivos, entrada al sistema y asegúrese que cada dispositivo es entrado al sistema con una cuenta única. Entonces invite la cuenta del otro dispositivo como el amigo y acepte al amigo solicitud, esto hace más fácil afiliarse a partidos de cada uno.
- Construya el Tilemap16 App y despliéguelo a ambos dispositivos. Siempre que usted haga un cambio en el código, usted debe desplegar App a ambos dispositivos otra vez, para asegurarse que ellos dirigen el mismo código.
- Dirija App en un dispositivo, espere la pantalla de matchmaking a aparecer. Invite al amigo de su otro dispositivo cuenta a afiliarse al partido.
- Espere en el otro dispositivo el partido invitan para aparecer. La canilla Acepta. El juego Tilemap16 lanzará. The Tilemap16 game will launch.
- El Juego de canilla Ahora en el primer dispositivo una vez el otro jugador se ha unido con éxito y está listo.
- Mueva Ninja al uno o el otro dispositivo y mírelo hacer circular el otro.
¡Disfrute!
Casi olvidé del Cocos2D-proyecto en github. Mientras esto trabaja impecablemente con la última liberación estable v0.99.5 de Cocos2D, todavía era atado en un fardo a sólo el RC1 (libere al candidato). Entonces he actualizado la versión cocos2d en el depósito. So I’ve updated the cocos2d version in the repository.
Por si usted no sepa cual el Cocos2D-proyecto es:
El Cocos2D-proyecto es una gran manera comenzar cualquier Cocos2D-I-Phone proyecto basado.
Esto alivia - y degradación del motor animoso Cocos2D en cualquier momento. Esto incluye el código fuente adicional así como objetivos múltiples y construya configuraciones para la distribución de Ad Hoc & App Store (crea los archivos IPA/ZIP necesarios) y la depuración de agujeros de memoria y cuestiones relacionadas.
El Cocos2D-proyecto es libre, la fuente abierta, usa la Licencia de MIT y viene ya atado en un fardo a la versión de cocos2d-I-Phone que esto actualmente trabaja con “de la caja”.
No es afiliado o endosado por cocos2d-iphone.org y Ricardo Quesada. Usted conseguirá el apoyo al Cocos2D-proyecto en el Cocos2D Central.
Futuras actualizaciones
Con la ayuda de otros, el desarrollo Cocos2D-de-proyecto ha tomado una vida de su propio. El producto en proceso corriente es mucho más que un proyecto de Xcode simple que se refiere sólo al motor animoso Cocos2D. Miro adelante para anunciar una actualización grande en unas semanas de pareja. Quédese templado. I’m looking forward to announce a big update in a couple weeks. Stay tuned.
Calendario de Linkvent, Día 23: ¡Duelo de BATAK – el 33 % lejos para Xmas!
Usted puede recordar
a partir del 6 de diciembre,
cuando realmente promoví
el código fuente de Duelo BATAK.
Okey, okey, le oigo … bastantes de las rimas.
Dan Nelson me ha informado que está en el espíritu de Xmas por cualesquiera motivos (¿extraño, verdad?), y esto significa para usted que el precio del código fuente de Duelo BATAK es reducido ahora a 197$ (abajo de 297$, aproximadamente el 33 % lejos). ¡Por lo que Dan me dijo que las ventas van buenas para él, entonces felicitaciones al éxito merecido! From what Dan told me sales are going good for him, so congratulations to the well-deserved success!
El Duelo de BATAK está disponible en la Tienda de App para.99$ y este remolque debería darle una impresión de sobre qué este juego es (no, no voces en off con sabor a queso, no deje a la primera impresión engañarle):








