Livro de cocos2d, Capítulo 5: Obtenção mais grande e melhor

No dia 23 de julho de 2010, em Anúncios, livro, por Steffen Itterheim by Steffen Itterheim

O capítulo 5 – Obtenção de mais grande e melhor

A essência deste capítulo deverá discutir o projeto de jogo simples do capítulo anterior. Lancei tudo em uma classe, claramente não o que você quer fazer para mais grandes jogos. Mas vir de da mesma classe ao verdadeiro desenho de código é um grande passo que alguns hesitam em tomar. Farei isto mais fácil e discutirei questões comuns e as suas soluções, tal como que a seperate, que subclassificar de e como você pode ter todos os objetos de seperated se comunicam um com outro e trocam a informação de vários modos. But getting from one-class to real code design is a big step which some hesitate to take. I’ll make that easier and discuss common issues and their solutions, such as what to seperate, what to subclass from and how you can have all the seperated objects communicate with each other and exchange information in various ways.

Um grande tópico será naturalmente como aproveitar-se da hierarquia de cena cocos2d’s e que alçapões ele pode ter movendo-se de um jogo de camada única para aquele que tem múltiplas camadas e cenas até múltiplas.

Quanto ao título de capítulo não estou tão seguro se isto será ele. Talvez ao longo do caminho enquanto estou escrevendo que o modificarei. Boas-vindas de sugestões! Suggestions welcome!

O capítulo será submetido na sexta-feira, 30 de julho.

O que é o seu tomar na boa estrutura de código de cocos2d?

Você lutou alguma vez com conceitos de design cocos2d? Ou a hierarquia de cena cocos2d? Ou como ao leiaute uma cena e dividem o seu jogo em partes lógicas? Diga-me dele. Or how to layout a scene and divide your game into logical parts? Tell me about it.

Sei que as perguntas de teses são um tanto genéricas para perguntar. É sobre as coisas que não se sentem certas mas lá não parecem ser um caminho melhor, mais óbvio. Penso que todos nós sabemos alguns daqueles, se você fizer, estar seguro de dizer-me! Deixe um comentário ou escreva-me um e-mail. I think we all know some of those, if you do, be sure to tell me! Leave a comment or write me an email.

Sumário de trabalho no Capítulo 4 – jogo Primeiro simples

O jogo que decidi fazer é chamado Baixa de Rabiscos e características que deixam aranhas e um acelerômetro controlou o estrangeiro que tenta evitar as aranhas. Ao todo foi dividido em 8 passos concretos. Lotes e muitos comentários de código, também. Lots and lots of code comments, too.

Ele começa recursos bastante simples, acrescentam a Xcode e duendes acrescentam. Adquire mais gameplay-esque quando os controles de jogador dirigidos pelo acelerômetro foram torcidos para fornecer a aceleração e a desaceleração do objeto de jogador. Ao contrário os movimentos de aranhas são dirigidos só por ações. In contrast, the spiders movements are driven only by actions.

Apresento-o a duas características não documentadas de cocos2d, a saber CCArray que é desde então v0.99.4 costumou guardar todas as crianças de um nó. O outro são a classe CGPointExtension que tem todas as funções normalmente fornecidas por um motor de física, contudo não cada jogo deve ligar um motor de física somente porque cada um precisa daquelas funções matemáticas. Por isso CGPointExtension entra prático. That’s why CGPointExtension comes in handy.

Com o método ccpDistance os cheques de choque são feitos. Os choques radiais simples, e no modo de edição os raios de choque são desenhados também.

Entre o CCLabel da conta foi substituído com um CCBitmapFontAtlas, porque ele matou o framerate. Logo mencionei Hiero e como usá-lo em princípio mas por todos os detalhes não houve nenhum quarto. Mas enquanto estive nele criei o Seminário de Hiero. But while I was at it I created the Hiero Tutorial.

No fim do projeto acrescentei que alguns pulem que não é descrito no livro (demasiados detalhes) mas realmente acrescenta à olhada do jogo e sensação. A baixa de aranhas, suspenda em lá, logo cobre antes de cair, todas ações de utilização feitas. Também acrescentei o fio que eles estão suspendendo de usar ccDrawLine. E logo há um jogo por cima da etiqueta que mostra até mais uso de ação. I’ve also added the thread they’re hanging from using ccDrawLine. And then there’s a game over label which shows even more action use.

Um dos princípios que segui é ficar afastado de coordenadas fixas tanto como possível. Portanto o projeto, uma vez terminado, realmente correu somente perfeito em um iPad. Embora a experiência seja um diferente, há mais caída de aranhas e eles caem mais rápido mas há também o espaço mais seguro para manobrar a. Although the experience is a different one, there’s more spiders dropping and they drop faster but there’s also more safe space to maneuver to.

Oh e, a arte de jogo é tudo minha. Sim, sei … mas as aranhas do Homem realmente têm somente seis pernas! :)

Livro de cocos2d, Capítulo 4: Jogo Primeiro Simples

No dia 17 de julho de 2010, em Anúncios, livro, cocos2d, por Steffen Itterheim by Steffen Itterheim

O capítulo 4 – Jogo Primeiro Simples

Depois que o Capítulo 3 cobriu o fundamentals do motor de jogo cocos2d, este capítulo porá para usar o que você aprendeu. O jogo simples é tudo sobre inimigos caem que você tem de evitar via controles de acelerômetro. Tipo dos parecidos um Salto de Rabiscos inverso. Mas não é quase o próprio gameplay, quero que o jogo seja razoavelmente completo de um cardápio principal, transições de cena, jogo acabado e naturalmente áudio. Sort of like an inverse Doodle Jump. But it’s not just about the gameplay itself, I want the game to be reasonably complete with a main menu, scene transitions, game over and of course audio.

O capítulo será submetido na sexta-feira, 23 de julho.

Você tem alguma sugestão do jogo?

O que faz você pensa deve estar em um primeiro jogo cocos2d? Avise-me!

Sumário de trabalho no Capítulo 3 – Princípios básicos

Quando comecei o capítulo não estive realmente seguro do seu foco e o progresso foi um pouco lento. Conseqüentemente ele clicou e achei-me terminar tendo escrito mais páginas do que necessário e ainda ter um grande número de coisas partiu não contado. A chave olhava para o cocos2d API documentação de referência e lembrava-se de com que ele se pareceu quando fui principiante. Com certeza cada classe, o método e a propriedade estão lá mas para um começo cocos2d revelador a referência API é somente uma enorme lista de nomes. Em outras palavras, se a sua experiência foi ou é algo como minha foi, é frustrante trabalhar com a referência API. The key was looking at the cocos2d API reference documentation and remembering what it was like when I was a beginner. Sure, every class, method and property is there but for a beginning cocos2d developer the API reference is just a huge list of names. In other words, if your experience was or is anything like mine was, it’s frustrating to work with the API reference.

Terminei de escrever sobre o desenho de motor cocos2d e o seu gráfico de cena primeiro, o resto que 80 % do capítulo explicam detalhadamente com muitas amostras de código como usar aqueles remendam classes CCNode. Todos os importantes são cobertos: CCNode, CCScene, CCLayer, CCSprite, CCLabel, CCMenu, CCMenuItem* bem como o Diretor, Transições e Ações. Além das amostras de código e como - para acrescentei admoestações numerosas, erros comuns, melhores práticas e outros nós que são tanto necessários para fazer qualquer documentação completa. CCNode, CCScene, CCLayer, CCSprite, CCLabel, CCMenu, CCMenuItem* as well as the Director, Transitions and Actions. Besides the code samples and how-to I’ve added numerous caveats, common mistakes, best practices and other nodes which are so very much needed to make any documentation complete.

Por exemplo, como as Camadas são melhor usadas para agrupar outros nós e naturalmente como permitir o toque e o acelerômetro introduzido acrescentando as funções necessárias que não são mencionadas na referência API desde que eles são parte do I-Phone SDK API. Há também alguma recomendação esquisita que flutua em volta para não usar demasiadas Camadas porque eles são lentos. Não posso encontrar a fonte mas o que realmente encontrei foi que isto só é verdade se as Camadas permitirem o toque ou a entrada de acelerômetro, porque isto é o que custa muita realização. Portanto o que você não quer ter é vária entrada de aceitação de camadas, de outra maneira use tantas Camadas como você precisa – que não deve ser muitos de qualquer maneira. E se você realmente precisa de múltipla entrada de aceitação de Camadas, porque não somente usam uma Camada de mestre (possivelmente usando um treinador de Toque Visado) que adiante os eventos de entrada apropriadamente a outras Camadas? I can’t find the source but what I did find was that this is only true if the Layers enable touch or accelerometer input, because that’s what costs a lot of performance. So what you don’t want to have is several layers accepting input, otherwise use as many Layers as you need – which shouldn’t be many anyway. And if you do need multiple Layers accepting input, why not just use one master Layer (possibly using a Targeted Touch handler) which forwards the input events appropriately to the other Layers?

Livro de cocos2d, Capítulo 2: Início

No dia 2 de julho de 2010, em Anúncios, livro, cocos2d, por Steffen Itterheim by Steffen Itterheim

O capítulo 2 – Começar

Este capítulo começa com os pré-requisitos habituais. Carregue e instale o I-Phone SDK e cocos2d. Instalação cocos2d Padrões. Criar o primeiro projeto de um cocos2d projeta o padrão. Installing cocos2d Templates. Creating the first project from a cocos2d project template.

Pelo que já escrevi que estimo que seja aproximadamente um terço do capítulo. Penso o que seria o mais interessante neste capítulo deve falar sobre a estrutura de código geral de projetos de cocos2d. Os elementos básicos como Cenas, Camadas e Nós. Como transitar de uma tela ao outro, ver que estamos fazendo de fato algo fresco com pouco esforço. Para isto penso que os selecionadores marcados também devem ser apresentados a transições de tempo, e uma tela poderia ser uma Camada que está esperando pela entrada de toque para avançar à seguinte tela. The basic elements like Scenes, Layers and Nodes. How to transition from one screen to another, to see that we’re actually doing something cool with little effort. For that I think the scheduled selectors should also be introduced to time transitions, and one screen might be a Layer which is waiting for touch input to advance to the next screen.

Também poderia ser um bom lugar de discutir a gestão de memória cocos2d, como autolançamento estático initializers, e assegurando-se o dealloc é chamado quando você troca cenas – de outra maneira você está tendo obviamente um rombo de memória.

A meta é adquirir o leitor em uma posição onde ele se sente cômodo expondo uma estrutura de tela em cocos2d. Ele sabe como inicializar objetos e como acrescentar e retirá-los da cena. A fundação do trabalho com cocos2d se você assim vai. The foundation of working with cocos2d if you so will.

O que faz você pensa deve estar no Capítulo 2?

Avise-me se você pensar que estou faltando a algo importante. Se você não tiver nenhuma sugestão então somente pensam no que você esperaria do capítulo lendo esta descrição, que poderia dar-lhe alguns pensamentos.

Também eu daria as boas-vindas a qualquer dica e os alçapões comuns pela primeira vez cocos2d reveladores poderiam apanhar-se em armadilha em. As dicas peritas são também bem-vindas, aquelas pequenas coisas sórdidas ou hábitos que podem mordê-lo mais tarde se você não os considera do começo.

Estou ansiando pelo seu feedback! Antes melhor. O capítulo 2 será submetido depois sexta-feira, 9 de julho. Chapter 2 will be submitted next Friday, July 9th.

O que é planejado quanto ao Capítulo depois deste

Somente para pôr o Capítulo 2 no contexto, para o Capítulo 3 estou planejando falar sobre classes cocos2d essenciais e processos. Duendes, Etiquetas, Cardápios, Ações, etc. Ele lhe mostrará como trabalhar com eles usando pequenos fragmentos de código. O capítulo terá provavelmente um caráter "de referência" com várias amostras de código, para que os usuários experimentados se sintam cômodos omitindo adiante enquanto os principiantes ainda o acham fácil e encorajante para apanhar os detalhes. It’ll show you how to work with them using small code snippets. The chapter will probably have a “reference” character with various code samples, so that experienced users feel comfortable skipping ahead while beginners still find it easy and encouraging to pick up the details.