Desenvolvimento de Jogos com Corona SDK
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

Desenvolvimento de Jogos com Corona SDK

  • 3,750 views
Uploaded on

Palestra apresentada no evento WICA na Universidade Cruzeiro do Sul (Unicsul), no campus Anália Franco, em 18/06/2013.

Palestra apresentada no evento WICA na Universidade Cruzeiro do Sul (Unicsul), no campus Anália Franco, em 18/06/2013.

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
3,750
On Slideshare
3,294
From Embeds
456
Number of Embeds
4

Actions

Shares
Downloads
69
Comments
0
Likes
3

Embeds 456

http://gamedeveloper.com.br 287
http://cicanci.blunz.com 165
http://www.linkedin.com 3
http://blog.gamedeveloper.com.br 1

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Desenvolvimento de Jogos com Corona SDKUniversidadeCruzeiro do Sul -WICA 2013Bruno Cicanci
  • 2. Conteúdo Por onde começar Protótipos Programação Corona SDK Bonus Level
  • 3. Por onde começar
  • 4. Do conceito...
  • 5. ... ao jogo!
  • 6. Game Designhttp://catavento.art.br/ppt/15semcomp.pdf
  • 7. Gameplay jogando
  • 8. Programação sem ter a arte final
  • 9. Art Of Game Design (Aplicativo)https://play.google.com/store/apps/details?id=com.schellgames.deckoflenses
  • 10. Protótipos
  • 11. Objetivo do protótipo:Validar a mecânica do jogo
  • 12. Protótipo de papel
  • 13. Protótipo Digital
  • 14. PlaygroundBioshock Infinity: http://www.youtube.com/watch?v=5OAj5JBMvBo
  • 15. Programação
  • 16. Jogue fora o protótipo!
  • 17. Controle de versão
  • 18. Boas práticas de programação Variáveis: mVariavel (private) sVariavel (static) pVariavel (param) VARIAVEL (constant) Funções: Get() Set(Param pParam) Comentários: No início da classe com exemplo de utilização e autor Explicações em partes complexas Justificativas de código temporário
  • 19. Game LoopToda LÓGICA do jogo éprocessada de acordo com oINPUT do jogador, e oresultado é exibidoGRAFICAMENTE na tela
  • 20. Game Loop - Exemplo
  • 21. Finite State Machine (FSM)
  • 22. Corona SDK
  • 23. Corona SDKProgramação com script LuaPlataformas: iOS, Android, Kindle eNookDesenvolvimento mais rápido dejogos 2D e aplicativosDiversos pluginsGratuito (para Android e iOS)!
  • 24. Jogos em 2D
  • 25. Storyboardlocal storyboard = require "storyboard”storyboard.gotoScene( ”menu" )…storyboard.removeScene( ”intro" )
  • 26. Scenelocal storyboard = require( "storyboard" )local scene = storyboard.newScene()scene:addEventListener( "createScene", scene )scene:addEventListener( "enterScene", scene )scene:addEventListener( "exitScene", scene )scene:addEventListener( "destroyScene", scene )
  • 27. Scenefunction scene:createScene( event )endfunction scene:enterScene( event )endfunction scene:exitScene( event )endfunction scene:destroyScene( event )endreturn scene
  • 28. DisplaylocalWIDTH = display.contentWidthlocal HEIGHT = display.contentHeight
  • 29. Imagelocal player = display.newImage( ”player.png" )player:setReferencePoint( display.BottomLeftReferencePoint )player.x = 0player.y = 0
  • 30. Textlocal scoreText = display.newText(”SCORE: ".. score, 0, 0,native.systemFontBold, 16)scoreText:setTextColor(0, 255, 255)…scoreText:removeSelf()
  • 31. Groupfunction scene:createScene( event )group = self.view...group:insert( background )group:insert( forest )group:insert( collider )group:insert( scoreText )end
  • 32. Touchfunction onTouch(event)if(event.phase == "began") thenelseif (event.phase == "moved") thenelseif (event.phase == "ended") thenendreturn trueend
  • 33. Eventsplayer:addEventListener("touch", onTouch)…Runtime:addEventListener("accelerometer", onTilt)Runtime:addEventListener( "system", onSystemEvent)
  • 34. Physicslocal physics = require "physics"physics.start();physics.setGravity(0, 9.8)local leftside = display.newImage("img/side.png")physics.addBody(leftside, {friction=0.5})leftside.bodyType = "static”
  • 35. Soundlocal backgroundMusic = audio.loadStream("backgroundMusic.m4a")local narrationSpeech = audio.loadStream("narrationSpeech.wav")local backgroundMusicChannel = audio.play( backgroundMusic, {channel=1, loops=-1, fadein=5000 } )local narrationChannel = audio.play( narrationSpeech, {duration=30000, onComplete=NarrationFinished } )
  • 36. Tiled (Editor de nível)
  • 37. Tiled (Implementação com Lime)lime = require("lime.lime”)local map = lime.loadMap("mapa.tmx”)local visual = lime.createVisual(map)
  • 38. TexturePacker (Sprite sheet)
  • 39. TexturePacker (Implementação)local sheetInfo = require("player”)local myImageSheet = graphics.newImageSheet( "player.png",sheetInfo:getSheet() )local player = display.newSprite( myImageSheet ,sheetInfo:getSequenceData() )player:setSequence( "walk" )player:play()
  • 40. Fórum, documentação, wiki, tutoriaishttp://www.coronalabs.com/
  • 41. Bonus Level
  • 42. Modelos de Negócio Funciona bem com jogos de iOS,porém desde que tenha umaversão de demonstração para ojogador testar Jogos indie geralmente tempreços entre $0.99 e $2.99 A versão de demonstração podeser limitada ou uma versão dojogo usando o modelo denegócio gratuito Funciona bem com jogos deAndroid, pois a pirataria neste OSé maior Anúncios, quando colocados emlocais corretos e com umafreqüência adequada, podem darum bom retorno Jogos Freemium são muitocomuns no Android OS e iOSPago Gratuito
  • 43. Arte 2D para programadoreshttp://2dgameartforprogrammers.blogspot.com.br/
  • 44. Concursos
  • 45. Social
  • 46. Publicidade no Jogo
  • 47. Links interessantesMecânicas de jogohttp://www.squidi.net/three/index.phpEntão, você quer ser um game designer?http://www.youtube.com/watch?v=zQvWMdWhFCcEntão, você quer trabalhar na indústria de games?http://www.youtube.com/watch?v=u_fr8tEQSGEGerador de personages em 2D (pixelart)http://charas-project.net/charas2/index.phpArtigos sobre gameficationhttp://www.gamification.co/2013/01/04/top-articles-by-gamification-experts-in-2012/10 livros sobre games que você precisa lerhttp://arena.ig.com.br/2012-06-28/dez-livros-de-games-que-voce-precisa-ler.html
  • 48. Livros Desenvolvimento de Jogos e Programação: Code Complete - http://amzn.to/oqrBeP Effective C++ - http://amzn.to/NJ2ed2 More Effective C++ - http://amzn.to/qQSksw Desenvolvimento de Jogos Eletrônicos - http://novatec.com.br/livros/jogos2/ Software Engineering for Game Developers - http://amzn.to/qrY571 Game Engine Architecture - http://amzn.to/pgnZFR Game Coding Complete - http://amzn.to/qA0Nz4 Programming Game AI by Example - http://amzn.to/nQ5SdY Real-time Rendering - http://amzn.to/pbHDTp Game Programming All in One - http://amzn.to/p2S05M Beginning C++ through Game Programming - http://amzn.to/q0X1fV XNA Game Studio Creators Guide - http://amzn.to/nmSlFf iPhone Programming The Big Nerd Ranch Guide - http://amzn.to/p6kUkJ Head First iPhone and iPad Development - http://amzn.to/p0qXOo Agile Game Development with Scrum - http://amzn.to/nfp3T3 Game Design: Game Design Workshop - http://amzn.to/pVvJE0 Rules of Play: Game Design Fundamentals -http://amzn.to/oHmOZ8 The Game Design Reader: A Rules of Play Anthology -http://amzn.to/pTjOd7 Half-Real: Video Games between Real Rules and FictionalWorlds - http://amzn.to/qA7yd6 A Theory of Fun for Game Design - http://amzn.to/nmR1Ya The Art of Game Design: A book of lenses -http://amzn.to/p0Z5xr
  • 49. Sites e revistas Sites: Gamasutra - http://www.gamasutra.com/ Gamesindustry - http://www.gamesindustry.biz/ AppData - http://www.appdata.com/ Ars Technica - http://arstechnica.com/gaming/ GameCareerGuide -http://www.gamecareerguide.com/ Fóruns GameDev - http://www.gamedev.com.br/ PDJ - http://www.programadoresdejogos.com/ UniDev - http://www.unidev.com.br/ Blogs: AltDevBlogADay - http://altdevblogaday.com/ Game Developer – http://gamedeveloper.com.br Game Producer - http://www.gameproducer.net/ Indie Games - http://indiegames.com/index.html Revistas: Casual Connect - http://casualconnect.org/magazine-archive/ Develop - http://www.develop-online.net/ EDGE - http://www.next-gen.biz/ Game Developer Magazine -http://www.gdmag.com/homepage.htm Game Sauce - http://gamesauce.org/news/ Wired - http://www.wired.com/gaming
  • 50. Obrigado!http://gamedeveloper.com.brbruno@gamedeveloper.com.br