Detailed explanation of Android 3D game development technology and typical cases 500-minute video presentation Introduce the Android platform based on real cases Use of basic OpenGL ES technology and complete 3D Game Development Process Basic Information Author:Wu YafengSuaguang[Introduction to translators] Press: Electronic Industry Press ISBN:9787121132636 Mounting time: Published on: February 1, June 2011 Http://product.china-pub.com/198189 Introduction Android 3D Game Development Technology details and typical cases mainly focus on the development of 3D games on the Android platform, based on real cases, this article introduces the basic knowledge of OpenGL ES and the entire process of 3D game program development. Android 3D Game Development Technology details and typical cases are divided into 22 chapters. The first article is based on simple and easy-to-understand instances, and details the basic knowledge of OpenGL ES, in the second article, we will introduce the development steps of seven real cases in detail, and gradually explain the real development process of Android 3D games to readers. At the same time, the source code also contains detailed annotations, in order to help readers grasp every detail in the Code as much as possible, and grasp Android 3D game development as soon as possible. The description of Android 3D game development technology and typical cases is from a simple perspective, from the basic knowledge of 3D game development applications on the Android platform to the development of large-scale game programs, with clear structure and concise language, it is very suitable for beginners and advanced developers to read reference.DirectoryArticle 1 Basic Knowledge Chapter 4 heroes now -- about Android 20 Android 3D Game Development Technology details and typical cases 1.1 mobile phone market 1.1.1 two new stars in the mobile phone market 20 1.1.2 old 5 yuan in mobile OS 21 1.2 Android's future and features 22 1.2.1 win 22 in the Chinese market 1.2.2 brand new concepts bring new experiences 22 1.3 Android Development Environment setup 22 1.3.1 SDK installation and environment configuration 22 1.3.2 Establishment of eclipse integrated development environment 23 1.3.3 create and run a simulator 24 1.4 Development of the first Android Application 25 1.4.1 first Android program 26 1.4.2 debugging of Android apps 27 1.5 internal mechanism for running Android applications 29 1.5.1 Android Application project structure 30 1.5.2 system architecture of Android applications 31 1.5.3 Android Application Framework 32. 1.5.4 Android runtime 32 1.5.5 System database 33 1.5.6 Linux kernel 34 1.6 chapter 34 Chapter 5 popular game types 35 2.1 AVG adventure game 35 2.1.1 gameplay 35 2.1.2 visual effect 35 2.1.3 game design 36 2.2 PZL smart games 36 2.2.1 gameplay 36 2.2.2 visual effect 37 2.2.3 game design 37 2.3 Act action game 38 2.3.1 previous game Introduction 38 2.3.2 future development of action games 39 2.4 RPG role-playing games 40 2.4.1 introduction to games of history 40 2.4.2 Android platform game porting 42 2.5 STG shooting games 43 2.5.1 categories of games 43 2.5.2 gameplay 44 2.5.3 game design 44 2.6 FPS first-person perspective shooting game 44 2.6.1 gameplay 44 2.6.2 visual effects 45 2.6.3 game design 45 2.7 SLG strategy game 46 2.7.1 game play 46 2.7.2 visual effects 46 2.7.3 game design 47 2.8 SPT Sports Games 47 2.8.1 gameplay 47 2.8.2 visual effects 47 2.8.3 game design 47 2.9 summary of this chapter 48 Chapter 4 no matter how long it takes, no more than a thousand miles-Game Development basics 49 3.1 game voice 49 3.1.1 instant sound effects 49 3.1.2 an example of real-time sound effects 50 3.1.3 background music playback technology 53 3.1.4 simple music player implementation 55 3.2 database in mobile phone -- SQLite 59 3.2.1 SQLite database Overview 59 3.2.2 basic SQLite Database Operations 60 3.2.3 simple database operations for SQLite 60 3.3 file I/O 64 3.3.1 easy access to SD card 64 3.3.2 access the storage folder 67 on the mobile phone 3.3.3 read files in assets 68 3.4 powerful tool for storing simple data-preferences 70 3.4.1 Introduction to preferences 70 3.4.2 preferences: display the Last Logon Time of 70 3.5 use of surfaceview in game 72 3.5.1 simple surfaceview operation 72 3.5.2 simple animation scene rendering 73 3.6 summary of this Chapter 78 Chapter 2 journey of a thousand miles begins with a step-basic knowledge of 3D Development 79 4.1 Introduction to OpenGL ES 79 4.1.1 OpenGL ES 79 4.1.2 world 80 composed of triangles 4.1.3 first OpenGL ES triangle 82 4.2 different drawing methods 87 4.2.1 draw points and lines 87 4.2.2 triangle indexing 93 4.2.3 draw a triangle by vertex method 101 4.3 different projection, different world 103 4.3.1 Cartesian projection 103 4.3.2 Perspective Projection 104 4.3.3 comparison of two projections 105 4.3.4 principle of proximity, distance, and small size 112 4.4 summary of this Chapter 114 Chapter 2: May the masses collect more data, the most loose thing-Development of illumination effect 5th 5.1 colorful source-light source 115 5.1.1 enable and disable a light source 115 5.1.2 set the number of light sources to 116 5.1.3 targeted light 117 5.1.4 positioning light 118 5.2 light source color 119 5.2.1 ambient light 119 5.2.2 scattering light 120 5.2.3 reflected light: 121 5.3 judge of reflective properties of materials-method vector and material 121 5.3.1 functions of normal vectors 121 5.3.2 how to enable and disable illumination 122 5.3.3 material 128 5.3.4 example of setting the number of light sources 128 5.4 example of two objects emitting 132 5.4.1 Implementation of the optical positioning example 132 5.4.2 implementation of self-emitting object plus motion light source 135 5.4.3 explanation of mysurfaceview. Java 137 5.5 surface method vector and point average method vector 143 5.5.1 Application of Surface Method vectors 143 5.5.2 application of the Point Average Method vector 145 5.6 summary of this Chapter 146 Chapter 2: texture ing 6th 6.1 3D world floral clothing-texture 147 6.1.1 specify texture 147 6.1.2 texture coordinate allocation 148 6.1.3 Implementation of texture triangle 149 6.1.4 texture map sphere construction 153 6.2 use texture ing to build the monthly model 161 6.2.1 The geographic and monthly system in the vast starry sky is 161 6.2.2 case study of the local and monthly system 162 6.3 texture stretch 170 6.3.1 principle and purpose of texture stretch 170 6.3.2 texture stretch case study 172 6.4 texture filter 175 6.4.1 last point sampling 175 6.4.2 linear texture filtering 176 6.4.3 mipmap: Multi-Detail layer 176 6.5 reasonable angle setting 177 6.5.1 3D world 177 from different perspectives 6.5.2 case studies from a reasonable perspective 178 6.6 Summary of this Chapter 180 Chapter 2 sea wide Jump, sky high flying-3D basic shape construction 7th 7.1 cylinder 181 7.1.1 geometric equation 181 of A Cylinder 7.1.2 Implementation of OpenGL ES for a cylinder 182 7.2 cone 190 7.2.1 geometric equation 190 of the Cone 7.2.2 OpenGL ES Implementation of cone 190 7.3 ring 193 7.3.1 geometric equation of the ring 193 7.3.2 Implementation of OpenGL ES of ring 193 7.4 parabolic 196 7.4.1 ry equation 196 7.4.2 OpenGL ES Implementation of the parabolic field 197 7.5 bilinear 199 7.5.1 geometric equation 199 of bilinesurface 7.5.2 OpenGL ES Implementation of bilinear 200 7.6 spiral surface 202 7.6.1 geometric equation of spiral surface 202 7.6.2 spiral surface OpenGL ES implementation 203 7.7 Summary of this chapter 205 Chapter 2 holding the hand and the old child -- coordinate transformation 8th 8.1 understand Coordinate Transformation 206 8.1.1 essence of coordinate transformation 206 8.1.2 important stack operations 207 8.2 scaling and transformation 208 8.2.1 Scaling Principle Analysis 208 8.2.2 implement 208 scaling in OpenGL ES 8.3 translation transformation 211 8.3.1 overview of translation theory 211 8.3.2 Implementation of translation transformation in OpenGL ES 212 8.4 rotation and transformation 213 8.4.1 rotating principle 213 8.4.2 Implementation of Rotation Transformation in OpenGL ES 214 8.5 simple case of compound transformation-geographic month model 215 8.6 use composite transform to simulate the real world 216 8.7 summary of this chapter 218 Chapter 2 lone Sail far shadows and sky shadows-camera and fog effects 9th 9.1 camera 219 9.1.1 about camera 219 9.1.2 camera settings 220 9.2 fog effects 221 9.2.1 knowledge about fog effects 221 9.2.2 core code of fog effect 222 9.3 camera and fog effect implement pyramid 222 in the desert 9.3.1 scenario components -- 223 rise and fall in the east of the triangle and the sun 9.3.2 scenario components-star category 226 9.3.3 scenario 229 9.3.4 camera up direction change effect 232 9.4 summary of this Chapter 233 Chapter 2 truth, truth, and truth-mixed 10th 10.1 what is hybrid 234 10.2 source and target factors 235 10.2.1 default Implementation Method of source and target factors: 235 10.2.2 pre-defined constant analysis 235 10.2.3 common combinations: 236 10.2.4 enable hybrid 237 10.3 mixed case 237 10.3.1 a simple hybrid case 237 10.3.2 land and moon model with Halo and cloud layer effect 241 10.3.3 world 245 in the filter 10.4 summary of this Chapter 250 Chapter 5 looking back, the man is in the dark-3D advanced technology 11th 11.1 logo board 251 11.1.1 logo board technology overview 251 11.1.2 case 252 11.2 flying flag 254 11.2.1 principle of Banner floating performance 254 11.2.2 Case Study of flying banners 255 11.3 mountain Generation Technology 257 11.3.1 overview of grayscale terrain Technology 257 11.3.2 grayscale map generation 3D terrain 258 11.3.3 improvement of terrain effect by 261 11.4 Image Technology 263 11.4.1 introduction to image technology 264 11.4.2 Implementation of Image Technology 265 11.4.3 267 improvement in Image Technology 11.5 summary of this chapter 268 Chapter 2 heart-to-heart communication-sensor 12th 12.1 sensor introduction 269 12.1.1 magnetic field sensors 269 12.1.2 optical sensors 269 12.1.3 distance sensor introduction 270 12.1.4 acceleration sensor introduction 270 12.1.5 profile sensor 271 12.1.6 sensorsimulator simulator configuration 273 12.2 sensor data transmission 276 12.2.1 acceleration sensor data transmission 276 12.2.2 data transmission of attitude sensors: 278 12.3 sensor instance-balance ball 279 12.4 summary of this chapter 287 Chapter 5 Hammer Sinking deep mountains-mathematics and physics in the game 13th 13.1 required knowledge of geometric knowledge 288 13.1.1 three-dimensional flute coordinate system 288 13.1.2, vector 288 13.1.3 addition and subtraction 290 13.1.4 Point product of the vector 291 13.1.5 the cross product of the vector is 291 13.1.6 Determination of spatial plane 292 13.2 indispensable physical world 293 13.2.1 gravity System 293 13.2.2 collision 298 13.2.3 full elastic collision 299 13.2.4 elastic collision with Energy Loss 302 13.2.5 Particle System 303 13.3 Summary of this Chapter 311 Chapter 2 mountain dancing silver snake, raw Chi wax elephant-basic AI concept 14th 14.1 introduction to AI 312 14.1.1 what is smart 312 14.1.2 what is game AI 312 14.2 basic composition and design of the AI engine 313 14.2.1 agent 313 14.2.2 processor and perception 314 14.2.3 navigation 314 14.3 search for 315 million game AI Images 14.3.1 deep Priority Search 315 14.3.2 extended search 321 14.3.3 Dijkstra search 325 14.3.4 breadth first a * Algorithm Implementation 329 14.3.5 Dijkstra A * algorithm 332 14.3.6 comparison between a * and non-A * algorithms: 334 14.4 Fuzzy Logic 336 14.4.1 common set 336 14.4.2 Fuzzy Set 337 14.4.3 fuzzy language variable 339 14.4.4 Fuzzy Rules 339 14.5 summary of this Chapter 340 Chapter 4: Tall Buildings on its own, hope to go all the way to heaven -- develop secret accounts 15th 15.1 map designer 341 15.1.1 indispensable map designer 341 15.1.2 simple map designer 341 15.2 multi-key technology 347 15.2.1 multi-key technology that increases game playability by 347 15.2.2 multi-Key Technology example 348 15.3 virtual keyboard 350 15.4 table search technology 351 15.5 state machine 352 15.6 AABB border frame 354 15.6.1 AABB expression method 355 15.6.2 computing AABB 355 15.6.3 comparison between AABB and boundary ball 356 15.6.4 collision between ball and ball 357 15.6.5 collision between two AABB 358 15.6.6 collision between ball and AABB 361 15.7 penetration effect 363 15.8 picking technology 367 15.8.1 principles of the picking technology 367 15.8.2 implementation of the picking technology 369 15.9 sky box and sky 377 15.9.1 introduction to skybox 377 15.9.2 introduction to skysky 380 15.10 summary of this chapter 382 Article 2 Case Study Chapter 4 sports games-crazy shooting 16th 16.1 game background and function overview 384 16.1.1 background 384 16.1.2 features 384 16.2 game planning and preparation 388 16.2.1 game planning 388 16.2.2 preparations for games on the Android platform 388 16.3 game architecture 389 16.3.1 main technologies used in the game 389 16.3.2 overview 389 16.3.3 introduction to the game framework 391 16.4 design and implementation of public games 393 16.4.1 implementation of the main class basketballactivity 393 16.4.2 introduction to constant categories of games 396 16.5 Design and Implementation of game menu interfaces 398 16.5.1 Framework Design of game Start Menu 398 16.5.2 Implementation of the game start menu 399 16.5.3 Design and Implementation of game help, loading and ending interfaces 402 16.6 game interface design and implementation 402 16.6.1 Framework Design of game interface 402 16.6.2 Implementation of game interface 404 16.7 rendering of major game scenes and basketball 407 16.7.1 draw 407 of walls, floors, balls and rebounds in the game 409 overall rebounds 16.7.3 basketball 410 16.8 Collision Detection and object pickup on the game interface 413 16.8.1 Collision Detection of basketball and basketball frames 413 16.8.2 Collision Detection of Basketball against walls, floors and roofs 416 16.8.3 mobile phone screen picking technology 418 16.9 game optimization and improvement 419 Chapter 2 smart games-rotating blocks 17th 17.1 game background and function overview 421 17.1.1 background 421 17.1.2 function introduction 421 17.2 game planning and preparation 424 17.2.1 game planning 424 17.2.2 preparations for games on the Android platform 424 17.3 game architecture 425 17.3.1 major technologies used in the game 425 17.3.2 overview 425 17.3.3 introduction to the game framework 427 17.4 development of the map designer 428 17.5 design and implementation of public games 431 17.5.1 main class mainactivity implementation 431 17.5.2 introduction to constant categories of games 434 17.6 Design and Implementation of game menu interfaces 437 17.6.1 Framework Design of the game start menu 438 17.6.2 Implementation of the game start menu 439 17.6.3 Design and Implementation of game help, settings, and victory interfaces 441 17.7 game interface design and implementation 442 17.7.1 game interface framework design 442 17.7.2 Implementation of the game touch method 443 17.7.3 game interface implementation 445 Method 448 for generating texture IDS 17.8 draw main scenarios on the game interface 449 17.8.1 the background, table movement board, and Icon rendering in the game are 449 17.8.2 map creation 450 451 of building blocks 17.9 animation effects on game interfaces: 453 17.9.1 animated Effect of Building Block Rotation 453 17.9.2 game failure, winning animation effect 457 17.10 game interface collision detection 458 17.11 game optimization and improvement 460 Chapter 2 casual games-skyscraper 18th 18.1 game background and function overview 461 18.1.1 background 461 18.1.2 function introduction 461 18.2 game planning and preparation 465 18.2.1 game planning 465 18.2.2 preparations for games on the Android platform 465 18.3 game architecture 466 18.3.1 main technologies used in the game 466 18.3.2 brief introduction to various types 467 18.3.3 introduction to the game framework 468 18.4 design and implementation of public games 469 18.4.1 implementation of the main class gl_demo 469 18.4.2 introduction to constant categories of games 474 18.5 Design and Implementation of game menu interfaces 475 18.5.1 Framework Design of the game start menu 475 18.5.2 Implementation of the game start menu 476 18.5.3 Design and Implementation of game help, settings, loading and victory interfaces 481 18.6 game interface design and implementation 481 18.6.1 game interface framework design 481 18.6.2 game interface implementation 483 18.7 draw main scenarios on the game interface 487 18.7.1 drawing of background, floor, and building blocks in the game 487 Plot the 18.7.2 tree 487 18.8 game interface collision detection 488 18.9 game optimization and improvement 492 Chapter 2 NLP games-3D Air Combat 19th 19.1 game background and function overview 493 19.1.1 background 493 19.1.2 function introduction 494 19.2 game planning and preparation 496 19.2.1 game planning 496 19.2.2 preparations for games on the Android platform 497 19.3 game architecture 498 19.3.1 main technologies used in the game 498 19.3.2 brief introduction to various types 498 19.3.3 introduction to the game framework 500 19.4 design and implementation of public games 502 19.4.1 implementation of the main class gl_demo 502 19.4.2 introduction to constant categories of games 503 19.5 Design and Implementation of game menu interfaces 504 19.5.1 Framework Design of game menus 504 19.5.2 Implementation of game menus 506 19.5.3 Design and Implementation of game help, settings, loading and victory interfaces 509 19.6 game interface design and implementation 509 19.6.1 game interface framework design 509 511 game interface implementation 19.7 plane rendering on the game interface 513 19.8 detection of motion threads and collisions in games 515 19.9 game optimization and improvement 525 Chapter 2 desktop games-passion billiards 20th 20.1 game background and function overview 527 4.1.1.1 background overview 527 V1.1.2 features 527 20.2 game planning and preparation 531 Copyright 2.1 game planning 531 Player 2.2 preparations for games on the Android platform 532 20.3 game architecture 533 Major technologies used in the game 533 Overview 533 535 introduction to the game framework 20.4 network end development 536 Ipv4.1 server overview 536 Ipv4.2 server code 537 Code introduction of client threads 542 20.5 design and implementation of public games 545 545 implementation of the main class myactivity Introduction to the constant categories of games 549 20.6 Design and Implementation of game menu interfaces 551 Ike6.1 Framework Design of game Start Menu 552 555 animation of game menus 556 Design and Implementation of game help, settings, and victory Interfaces 20.7 game interface design and implementation 557 557 game interface framework design 558 implementation of the onkeydown method in Game 560 game interface implementation 20.8 draw main scenarios on the game interface 563 20.8.1 dashboard and floor drawing 563 Drawing 564 of the pool table Draw a 566 ball 20.9 Collision Detection in games 567 20179.1 principle of corner collision detection between ball and table 567 569 principles of ball-to-ball Collision Detection 570 Implementation of corner collision detection between ball and ball Platform 574 Implementation of ball-to-ball Collision Detection 576 Implementation of ball motion threads 20.10 game optimization and improvement 578 Chapter 4 shooting games-logon to the beach 21st 21.1 game background and function overview 579 21.1.1 background 579 21.1.2 function introduction 579 21.2 game planning and preparation 583 21.2.1 game planning 583 21.2.2 preparations for games on the Android platform 583 21.3 game architecture 584 21.3.1 major technologies used in the game 584 585 brief introduction to various types 21.3.3 introduction to the game framework 588 21.4 design and implementation of public games 589 21.4.1 implementation of main activity 590 21.4.2 introduction to constant categories of games 594 21.5 Design and Implementation of game menu interfaces 598 21.5.1 Framework Design of the game menu interface 598 21.5.2 Implementation of game menu interface 600 21.5.3 game help, design and implementation of and end interfaces 604 21.6 game interface design and implementation 605 21.6.1 game interface framework design 605 21.6.2 game interface implementation 607 21.7 rendering of main scenarios and physical movements on the game interface 613 21.7.1 draw in game 613 21.7.2 overall deployment of beacon 614 21.7.3 motion of an object 616 21.8 Collision Detection in games 621 21.9 game optimization and improvement 625 Chapter 4 competitive games-country racing 22nd 22.1 game background and function overview 627 22.1.1 background 627 22.1.2 function introduction 627 22.2 game planning and preparation 631 22.2.1 game planning 631 22.2.2 preparations for games on Android 632 22.3 introduction to the game framework 634 22.3.1 major technologies used in the game 634 22.3.2 introduction to various types 635 22.3.3 introduction to the game framework 638 22.4 design and implementation of public games 640 22.4.1 implementation of the main class activity_gl_racing 640 22.4.2 introduction to constant categories of games 645 22.5 Design and Implementation of game menus 649 22.5.1 Design and Implementation of the game Main Menu 650 22.5.2 Design and Implementation of the game loading interface 651 22.5.3 Design and Implementation of game history interfaces 656 22.5.4 Design and Implementation of game help, setup, related and selection interfaces 658 22.6 game interface design and implementation 659 22.6.1 game interface framework design 659 22.6.2 game interface implementation 661 22.6.3 sensor applications and multi-touch technology 665 22.7 draw main scenarios on the game interface 666 22.7.1 layered rendering and rendering Optimization for scenes on the game interface: 667 22.7.2 generation and drawing of map tracks on the game interface 669 22.7.3 scene component rendering 671 22.7.4 loading 673 of cars in the game 22.7.5 in-game tree plotting technology 677 22.7.6 game accessory rendering 679 22.8 Collision Detection and travel circle count determination in the game: 681 22.8.1 Collision Detection of vehicle and highway components 683 22.8.2 determination of the number of driving circles of a car: 685 22.8.3 Collision Detection of automobile and collision-able parts and animation implementation 686 22.9 game optimization and improvement 688 |