Procedural content generation for C++ game development : get to know techniques and approaches to procedurally generate game content in C++ using Simple and Fast Multimedia Library /
Annotation
Clasificación: | Libro Electrónico |
---|---|
Autor principal: | |
Formato: | Electrónico eBook |
Idioma: | Inglés |
Publicado: |
Birmingham, UK :
Packt Publishing,
[2016].
|
Colección: | Community experience distilled.
|
Temas: | |
Acceso en línea: | Texto completo Texto completo |
MARC
LEADER | 00000cam a2200000Ii 4500 | ||
---|---|---|---|
001 | EBSCO_ocn944986470 | ||
003 | OCoLC | ||
005 | 20231017213018.0 | ||
006 | m o d | ||
007 | cr unu|||||||| | ||
008 | 160317t20162016enka o 001 0 eng d | ||
040 | |a UMI |b eng |e rda |e pn |c UMI |d OCLCF |d TEFOD |d N$T |d KSU |d DEBBG |d C6I |d YDXCP |d IDEBK |d DEBSZ |d OCLCQ |d CEF |d NLE |d UKMGB |d AGLDB |d IGB |d UKAHL |d RDF |d QGK |d OCLCO |d OCLCQ |d OCL | ||
015 | |a GBB6G3502 |2 bnb | ||
016 | 7 | |a 018010627 |2 Uk | |
019 | |a 936624527 |a 936961861 |a 1259219430 | ||
020 | |a 9781785886355 |q (electronic bk.) | ||
020 | |a 1785886355 |q (electronic bk.) | ||
020 | |z 9781785886713 | ||
020 | |z 1785886711 | ||
029 | 1 | |a DEBBG |b BV043969009 | |
029 | 1 | |a DEBSZ |b 473875462 | |
029 | 1 | |a DEBSZ |b 485795221 | |
029 | 1 | |a GBVCP |b 882848887 | |
029 | 1 | |a UKMGB |b 018010627 | |
029 | 1 | |a AU@ |b 000057104820 | |
035 | |a (OCoLC)944986470 |z (OCoLC)936624527 |z (OCoLC)936961861 |z (OCoLC)1259219430 | ||
037 | |a CL0500000721 |b Safari Books Online | ||
037 | |a 92CFB488-A704-4BD8-971B-7711D18394CC |b OverDrive, Inc. |n http://www.overdrive.com | ||
050 | 4 | |a QA76.73.C153 | |
072 | 7 | |a COM |x 051070 |2 bisacsh | |
082 | 0 | 4 | |a 005.13/3 |2 23 |
049 | |a UAMI | ||
100 | 1 | |a Green, Dale, |e author. | |
245 | 1 | 0 | |a Procedural content generation for C++ game development : |b get to know techniques and approaches to procedurally generate game content in C++ using Simple and Fast Multimedia Library / |c Dale Green. |
246 | 3 | |a Procedural content generation for C plus plus game development | |
264 | 1 | |a Birmingham, UK : |b Packt Publishing, |c [2016]. | |
264 | 4 | |c Ã2016 | |
300 | |a 1 online resource (1 volume) : |b illustrations. | ||
336 | |a text |b txt |2 rdacontent | ||
337 | |a computer |b c |2 rdamedia | ||
338 | |a online resource |b cr |2 rdacarrier | ||
490 | 1 | |a Community experience distilled | |
588 | |a Description based on online resource; title from cover page (Safari, viewed March 11, 2016). | ||
500 | |a Includes index. | ||
520 | 8 | |a Annotation |b Get to know techniques and approaches to procedurally generate game content in C++ using Simple and Fast Multimedia LibraryAbout This Book This book contains a bespoke Simple and Fast Multimedia Library (SFML) game engine with complete online documentation Through this book, you'll create games that are non-predictable and dynamic and have a high replayability factor Get a breakdown of the key techniques and approaches applied to a real game.Who This Book Is ForIf you are a game developer who is familiar with C++ and is looking to create bigger and more dynamic games, then this book is for you. The book assumes some prior experience with C++, but any intermediate concepts are clarified in detail. No prior experience with SFML is required.What You Will Learn Discover the systems and ideology that lie at the heart of procedural systems Use Random number generation (RNG) with C++ data types to create random but controlled results Build levels procedurally with randomly located items and events Create dynamic game objects at runtime Construct games using a component-based approach Assemble non-predictable game events and scenarios Operate procedural generation to create dynamic content fast and easily Generate game environments for endless replayabilityIn DetailProcedural generation is a growing trend in game development. It allows developers to create games that are bigger and more dynamic, giving the games a higher level of replayability. Procedural generation isn't just one technique, it's a collection of techniques and approaches that are used together to create dynamic systems and objects. C++ is the industry-standard programming language to write computer games. It's at the heart of most engines, and is incredibly powerful. SFML is an easy-to-use, cross-platform, and open-source multimedia library. Access to computer hardware is broken into succinct modules, making it a great choice if you want to develop cross-platform games with ease.Using C++ and SFML technologies, this book will guide you through the techniques and approaches used to generate content procedurally within game development.Throughout the course of this book, we'll look at examples of these technologies, starting with setting up a roguelike project using the C++ template. We'll then move on to using RNG with C++ data types and randomly scattering objects within a game map. We will create simple console examples to implement in a real game by creating unique and randomised game items, dynamic sprites, and effects, and procedurally generating game events. Then we will walk you through generating random game maps. At the end, we will have a retrospective look at the project.By the end of the book, not only will you have a solid understanding of procedural generation, but you'll also have a working roguelike game that you will have extended using the examples provided.Style and approachThis is an easy-to-follow guide where each topic is explained clearly and thoroughly through the use of a bespoke example, then implemented in a real game project. | |
505 | 0 | |a Cover ; Copyright; Credits; About the Author; Acknowledgment; About the Reviewer; www.PacktPub.com; Table of Contents; Preface; Chapter 1: An Introduction to Procedural Generation ; Procedural generation versus random generation; Procedural generation; Random generation; Introducing randomness; Pseudorandom number generation; Why computers can't generate truly random numbers; Generating random numbers in C++; Generating random numbers within a range; Seeds; Defining seeds; Using seeds; Generating random seeds during the runtime; Controlled randomness is the key to generating random numbers | |
505 | 8 | |a The use of procedural generation in gamesSaving space; Map generation; Texture creation; Animation; Sound; Benefits of procedural generation; Larger games can be created; Procedural generation can be used to lower budgets; An increase in gameplay variety; An increase in replayability; The drawbacks of procedural generation; More taxing on the hardware; Worlds can feel repetitive; You sacrifice quality control; You may generate an unplayable world; It is hard to script set game events; A brief history of rogue-like games; How we'll implement procedural generation; Populating environments | |
505 | 8 | |a Creating unique game objectsCreating unique art; Audio manipulation; Behavior and mechanics; Dungeon generation; Component-based design; The complete game; Exercises; Summary; Chapter 2: Project Setup and Breakdown ; Choosing an IDE; Microsoft Visual Studio; Code::Blocks; Other IDEs; Build systems; Breaking down the game template; Download templates; The class diagram; The object hierarchy; Level data; Collision; Input; Simple and Fast Multimedia Library (SFML); Defining SFML; Why we'll be using SFML; Learning SFML; Alternatives; Polymorphism; Inheritance; Virtual functions | |
505 | 8 | |a Pure virtual functionsPointers and object slicing; The roguelike template setup; Downloading SFML; Linking SFML; Running the project; Adding an item; Updating and drawing; Exercises; Summary; Chapter 3: Using RNG with C++ Data Types ; Setting the game seed; Setting Boolean values randomly; Generating a number between 0 and 1; Choosing if an item spawns; Random number distribution; Giving the player random stats; Accessing random elements of a collection; Spawning a random item; Generating random characters; Repeating loops; Spawning a random number of items; Exercises; Summary | |
505 | 8 | |a Chapter 4: Procedurally Populating Game Environments Potential obstacles; Keeping within the bounds of a level; Avoiding overlapping objects; Creating meaningful levels; Level tiles; Defining the spawn area; Calculating the level bounds; Checking the underlying game grid; Selecting a suitable game tile; Randomly selecting a tile; Checking whether a tile is suitable; Converting to absolute position; Spawning items at a random location; Expanding the spawning system; Using enumerators to denote an object type; Optional parameters; The complete spawn functions; Updating the spawn code | |
590 | |a eBooks on EBSCOhost |b EBSCO eBook Subscription Academic Collection - Worldwide | ||
590 | |a O'Reilly |b O'Reilly Online Learning: Academic/Public Library Edition | ||
650 | 0 | |a C++ (Computer program language) | |
650 | 0 | |a Computer games |x Programming. | |
650 | 6 | |a C++ (Langage de programmation) | |
650 | 6 | |a Jeux d'ordinateur |x Programmation. | |
650 | 7 | |a COMPUTERS / Programming Languages / C++ |2 bisacsh | |
650 | 7 | |a C++ (Computer program language) |2 fast |0 (OCoLC)fst00843286 | |
650 | 7 | |a Video games |x Programming. |2 fast |0 (OCoLC)fst00872114 | |
776 | 0 | |z 1785886711 | |
776 | 0 | |z 9781785886713 | |
830 | 0 | |a Community experience distilled. | |
856 | 4 | 0 | |u https://ebsco.uam.elogim.com/login.aspx?direct=true&scope=site&db=nlebk&AN=1163829 |z Texto completo |
856 | 4 | 0 | |u https://learning.oreilly.com/library/view/~/9781785886713/?ar |z Texto completo |
938 | |a Askews and Holts Library Services |b ASKH |n AH30053567 | ||
938 | |a EBSCOhost |b EBSC |n 1163829 | ||
938 | |a ProQuest MyiLibrary Digital eBook Collection |b IDEB |n cis33796827 | ||
938 | |a YBP Library Services |b YANK |n 12831315 | ||
994 | |a 92 |b IZTAP |