LEADER 05912nam 22007455 450 001 9910437589303321 005 20200630063749.0 010 $a3-642-36580-9 024 7 $a10.1007/978-3-642-36580-5 035 $a(CKB)2560000000105637 035 $a(EBL)1317311 035 $a(OCoLC)870244235 035 $a(SSID)ssj0000934464 035 $a(PQKBManifestationID)11524591 035 $a(PQKBTitleCode)TC0000934464 035 $a(PQKBWorkID)10930005 035 $a(PQKB)11552232 035 $a(DE-He213)978-3-642-36580-5 035 $a(MiAaPQ)EBC6312321 035 $a(MiAaPQ)EBC1317311 035 $a(Au-PeEL)EBL1317311 035 $a(CaPaEBR)ebr10968995 035 $a(PPN)170491021 035 $a(EXLCZ)992560000000105637 100 $a20130607d2013 u| 0 101 0 $aeng 135 $aur|n|---||||| 181 $ctxt 182 $cc 183 $acr 200 10$aLearning C# by Programming Games /$fby Arjan Egges, Jeroen D. Fokker, Mark H. Overmars 205 $a1st ed. 2013. 210 1$aBerlin, Heidelberg :$cSpringer Berlin Heidelberg :$cImprint: Springer,$d2013. 215 $a1 online resource (448 p.) 300 $aIncludes index. 311 $a3-642-36579-5 327 $aPart I Getting Started -- Building Your First Game Application -- Programming -- Game Programming Basics -- Creating a Game World -- Part II Creating Colorful Games -- Knowing what the Player is Doing -- Reacting to Player Input -- Basic Game Objects -- Adding Interaction -- A Limited Number of Lives -- Organizing Game Objects -- Finishing the Game -- Part III Structures and Patterns -- Collections of Game Objects -- Fullscreen Games -- Game Objects in a Structure -- Redesigning the Game World -- Gameplay Programming -- Game States -- Finishing the Game -- Part IV Making Your Games Appealing -- Sprite Sheets -- Menus and Settings -- Game State Management -- Loading Levels from Files -- Pairing the Penguins -- Finishing the Game -- Part V Animation and Complexity -- Creating the Main Game Structure -- Animation -- Game Physics -- Intelligent Enemies -- Adding Player Interaction -- Finishing the Game. 330 $aC# is the language of choice for learning how to program. It is a very well structured object-oriented language and avoids some of the problems of Java. An excellent free programming environment is available for C#, as well as a game programming framework. And (if necessary) moving from C# to C++ is easy. Developing computer games is a perfect way to learn how to program in modern programming languages. This book teaches how to program in C# through the creation of computer games ? and without requiring any previous programming experience. Contrary to most programming books, Egges, Fokker and Overmars do not organize the presentation according to programming language constructs, but instead use the structure and elements of computer games as a framework. For instance, there are chapters on dealing with player input, game objects, game worlds, game states, levels, animation, physics, and intelligence. The reader will be guided through the development of four games showing the various aspects of game development. Starting with a simple shooting game, the authors move on to puzzle games consisting of multiple levels, and conclude the book by developing a full-fledged platform game with animation, game physics, and intelligent enemies. They show a number of commonly used techniques in games, such as drawing layers of sprites, rotating, scaling and animating sprites, showing a heads-up display, dealing with physics, handling interaction between game objects, and creating pleasing visual effects such as snow or glitter. At the same time, they provide a thorough introduction to C# and object-oriented programming, introducing step by step important aspects of programming in general, including many programming constructs and idioms, syntax diagrams, collections, and exception handling. The book is also designed to be used as a basis for a game-oriented programming course. For each part, there are concluding exercises and challenges, which are generally more complex programming endeavors. Lots of supplementary materials for organizing such a course are available on the accompanying web site http://www.csharpprogramminggames.com, including installation instructions, solutions to the exercises, software installation instructions, game sprites and sounds. 606 $aComputer programming 606 $aProgramming languages (Electronic computers) 606 $aMicrocomputers 606 $aMultimedia systems 606 $aProgramming Techniques$3https://scigraph.springernature.com/ontologies/product-market-codes/I14010 606 $aProgramming Languages, Compilers, Interpreters$3https://scigraph.springernature.com/ontologies/product-market-codes/I14037 606 $aPersonal Computing$3https://scigraph.springernature.com/ontologies/product-market-codes/I24083 606 $aMultimedia Information Systems$3https://scigraph.springernature.com/ontologies/product-market-codes/I18059 615 0$aComputer programming. 615 0$aProgramming languages (Electronic computers) 615 0$aMicrocomputers. 615 0$aMultimedia systems. 615 14$aProgramming Techniques. 615 24$aProgramming Languages, Compilers, Interpreters. 615 24$aPersonal Computing. 615 24$aMultimedia Information Systems. 676 $a005.133 700 $aEgges$b Arjan$4aut$4http://id.loc.gov/vocabulary/relators/aut$0892448 702 $aFokker$b Jeroen D$4aut$4http://id.loc.gov/vocabulary/relators/aut 702 $aOvermars$b Mark H$4aut$4http://id.loc.gov/vocabulary/relators/aut 801 0$bMiAaPQ 801 1$bMiAaPQ 801 2$bMiAaPQ 906 $aBOOK 912 $a9910437589303321 996 $aLearning C# by Programming Games$92536900 997 $aUNINA