skip to content
Hands-On Game Development with WebAssembly : Learn WebAssembly C++ Programming by Building a Retro Space Game. Preview this item
ClosePreview this item
Checking...

Hands-On Game Development with WebAssembly : Learn WebAssembly C++ Programming by Building a Retro Space Game.

Author: Rick Battagline
Publisher: Birmingham : Packt Publishing, Limited, 2019.
Edition/Format:   eBook : Document : EnglishView all editions and formats
Summary:
Within the next few years, WebAssembly will change the web as we know it. It promises a world where you can write an application for the web in any language you like, and compile it for native platforms as well as the web. This book gives the reader hands-on experience developing web applications and web games that target WebAssembly.
Rating:

(not yet rated) 0 with reviews - Be the first.

Subjects
More like this

Find a copy online

Links to this item

Find a copy in the library

&AllPage.SpinnerRetrieving; Finding libraries that hold this item...

Details

Genre/Form: Electronic books
Additional Physical Format: Print version:
Battagline, Rick.
Hands-On Game Development with WebAssembly : Learn WebAssembly C++ Programming by Building a Retro Space Game.
Birmingham : Packt Publishing, Limited, ©2019
Material Type: Document, Internet resource
Document Type: Internet Resource, Computer File
All Authors / Contributors: Rick Battagline
ISBN: 9781838646837 1838646833
OCLC Number: 1104089808
Description: 1 online resource (588 pages)
Contents: Cover; Title Page; Copyright and Credits; Dedication; About Packt; Contributors; Table of Contents; Preface; Chapter 1: Introduction to WebAssembly and Emscripten; What is WebAssembly?; Why do we need WebAssembly?; Why is WebAssembly faster than JavaScript?; Will WebAssembly replace JavaScript?; What is asm.js?; A brief introduction to LLVM; A brief introduction to WebAssembly text; Emscripten; Installing Emscripten on Windows; Installing Emscripten on Ubuntu; Using Emscripten; Additional installation resources; Summary; Chapter 2: HTML5 and WebAssembly; The Emscripten minimal shell file Creating a new HTML shell and C fileDefining the CSS; HTML5 and game development; Immediate mode versus retained mode; Adding a canvas to the Emscripten template; Summary; Chapter 3: Introduction to WebGL; WebGL and canvas contexts; An introduction to WebGL shaders; WebGL and JavaScript; WebGL coordinate system versus 2D canvas; Vertex and UV data; 2D canvas to WebGL; Minor tweaks to the head tag; Major JavaScript changes; WebGL global variables; The return of vertex and texture data; Buffer constants; Defining the shaders; The ModuleLoaded function; The ShipPosition function The MoveShip functionSummary; Chapter 4: Sprite Animations in WebAssembly with SDL; Using SDL in WebAssembly; Initializing SDL; Clearing the SDL renderer; Using the WebAssembly virtual filesystem; Rendering a texture to the HTML5 canvas; Cleaning up SDL; Compiling hello_sdl.html; Render a sprite to the canvas; Animating a sprite; Moving the sprite; Compiling sprite.html; Summary; Chapter 5: Keyboard Input; JavaScript keyboard input; Adding SDL keyboard input to WebAssembly; Using keyboard input to move a sprite; Summary; Chapter 6: Game Objects and the Game Loop; Understanding the game loop Writing a basic game loopCompiling gameloop.html; Game objects; The player's spaceship game object; Object pooling; Pooling the player's projectiles; Creating an enemy; Compiling game_objects.html; Summary; Chapter 7: Collision Detection; Types of 2D collision detection; Circle collision detection; Rectangle collision detection; A short refresher on trigonometry; Line collision detection; Compound colliders; Implementing circle collision detection; Destroying a spaceship on collision; Pointers in memory; Implementing compound circle colliders; Compiling collider.html; Summary Chapter 8: Basic Particle SystemAdding to the virtual file system; A brief introduction to SVG; Vector versus raster graphics; Trigonometry again?; Adding the JavaScript; The simple particle emitter tool; The Point class; The Particle class; The Emitter class; WebAssembly interface functions; C++ name mangling; Dead code elimination; Updating the emitter; The looping function; Initialization; Compiling and testing the particle emitter; Summary; Chapter 9: Improved Particle Systems; Modifying our HTML shell file; Scaling values; Color-blending values; Particle burst; Looping the emitter; Aligning particle rotation.

Abstract:

Within the next few years, WebAssembly will change the web as we know it. It promises a world where you can write an application for the web in any language you like, and compile it for native  Read more...

Reviews

User-contributed reviews
Retrieving GoodReads reviews...
Retrieving DOGObooks reviews...

Tags

Be the first.

Similar Items

Confirm this request

You may have already requested this item. Please select Ok if you would like to proceed with this request anyway.

Linked Data


Primary Entity

<http://www.worldcat.org/oclc/1104089808> # Hands-On Game Development with WebAssembly : Learn WebAssembly C++ Programming by Building a Retro Space Game.
    a schema:CreativeWork, schema:Book, schema:MediaObject ;
    library:oclcnum "1104089808" ;
    library:placeOfPublication <http://id.loc.gov/vocabulary/countries/enk> ;
    library:placeOfPublication <http://experiment.worldcat.org/entity/work/data/9311144464#Place/birmingham> ; # Birmingham
    rdfs:comment "Warning: This malformed URI has been treated as a string - 'https://img1.od-cdn.com/ImageType-100/6135-1/{D146F625-9B57-4BE9-A3C1-3817FC3EFE60}Img100.jpg'" ;
    schema:about <http://experiment.worldcat.org/entity/work/data/9311144464#Topic/web_applications> ; # Web applications
    schema:about <http://experiment.worldcat.org/entity/work/data/9311144464#Topic/c++_computer_program_language> ; # C++ (Computer program language)
    schema:about <http://experiment.worldcat.org/entity/work/data/9311144464#Topic/web_game> ; # Web (Game)
    schema:about <http://dewey.info/class/006.76/e23/> ;
    schema:bookFormat schema:EBook ;
    schema:creator <http://experiment.worldcat.org/entity/work/data/9311144464#Person/battagline_rick> ; # Rick Battagline
    schema:datePublished "2019" ;
    schema:description "Within the next few years, WebAssembly will change the web as we know it. It promises a world where you can write an application for the web in any language you like, and compile it for native platforms as well as the web. This book gives the reader hands-on experience developing web applications and web games that target WebAssembly."@en ;
    schema:description "Cover; Title Page; Copyright and Credits; Dedication; About Packt; Contributors; Table of Contents; Preface; Chapter 1: Introduction to WebAssembly and Emscripten; What is WebAssembly?; Why do we need WebAssembly?; Why is WebAssembly faster than JavaScript?; Will WebAssembly replace JavaScript?; What is asm.js?; A brief introduction to LLVM; A brief introduction to WebAssembly text; Emscripten; Installing Emscripten on Windows; Installing Emscripten on Ubuntu; Using Emscripten; Additional installation resources; Summary; Chapter 2: HTML5 and WebAssembly; The Emscripten minimal shell file"@en ;
    schema:exampleOfWork <http://worldcat.org/entity/work/id/9311144464> ;
    schema:genre "Electronic books"@en ;
    schema:inLanguage "en" ;
    schema:isSimilarTo <http://worldcat.org/entity/work/data/9311144464#CreativeWork/hands_on_game_development_with_webassembly_learn_webassembly_c++_programming_by_building_a_retro_space_game> ;
    schema:name "Hands-On Game Development with WebAssembly : Learn WebAssembly C++ Programming by Building a Retro Space Game."@en ;
    schema:productID "1104089808" ;
    schema:publication <http://www.worldcat.org/title/-/oclc/1104089808#PublicationEvent/birmingham_packt_publishing_limited_2019> ;
    schema:publisher <http://experiment.worldcat.org/entity/work/data/9311144464#Agent/packt_publishing_limited> ; # Packt Publishing, Limited
    schema:url <https://public.ebookcentral.proquest.com/choice/publicfullrecord.aspx?p=5783103> ;
    schema:url "https://img1.od-cdn.com/ImageType-100/6135-1/{D146F625-9B57-4BE9-A3C1-3817FC3EFE60}Img100.jpg" ;
    schema:url <https://www.overdrive.com/search?q=D146F625-9B57-4BE9-A3C1-3817FC3EFE60> ;
    schema:url <https://samples.overdrive.com/?crid=d146f625-9b57-4be9-a3c1-3817fc3efe60&.epub-sample.overdrive.com> ;
    schema:workExample <http://worldcat.org/isbn/9781838646837> ;
    wdrs:describedby <http://www.worldcat.org/title/-/oclc/1104089808> ;
    .


Related Entities

<http://experiment.worldcat.org/entity/work/data/9311144464#Agent/packt_publishing_limited> # Packt Publishing, Limited
    a bgn:Agent ;
    schema:name "Packt Publishing, Limited" ;
    .

<http://experiment.worldcat.org/entity/work/data/9311144464#Person/battagline_rick> # Rick Battagline
    a schema:Person ;
    schema:familyName "Battagline" ;
    schema:givenName "Rick" ;
    schema:name "Rick Battagline" ;
    .

<http://experiment.worldcat.org/entity/work/data/9311144464#Topic/c++_computer_program_language> # C++ (Computer program language)
    a schema:Intangible ;
    schema:name "C++ (Computer program language)"@en ;
    .

<http://worldcat.org/entity/work/data/9311144464#CreativeWork/hands_on_game_development_with_webassembly_learn_webassembly_c++_programming_by_building_a_retro_space_game>
    a schema:CreativeWork ;
    rdfs:label "Hands-On Game Development with WebAssembly : Learn WebAssembly C++ Programming by Building a Retro Space Game." ;
    schema:description "Print version:" ;
    schema:isSimilarTo <http://www.worldcat.org/oclc/1104089808> ; # Hands-On Game Development with WebAssembly : Learn WebAssembly C++ Programming by Building a Retro Space Game.
    .

<http://worldcat.org/isbn/9781838646837>
    a schema:ProductModel ;
    schema:isbn "1838646833" ;
    schema:isbn "9781838646837" ;
    .

<http://www.worldcat.org/title/-/oclc/1104089808>
    a genont:InformationResource, genont:ContentTypeGenericResource ;
    schema:about <http://www.worldcat.org/oclc/1104089808> ; # Hands-On Game Development with WebAssembly : Learn WebAssembly C++ Programming by Building a Retro Space Game.
    schema:dateModified "2019-08-13" ;
    void:inDataset <http://purl.oclc.org/dataset/WorldCat> ;
    .


Content-negotiable representations

Close Window

Please sign in to WorldCat 

Don't have an account? You can easily create a free account.