Lua game development cookbook : over 70 recipes that will help you master the elements and best practices required to build a modern game engine using Lua /

This book is for all programmers and game enthusiasts who want to stop dreaming about creating a game, and actually create one from scratch. The reader should know the basics of programming and using the Lua language. Knowledge of the C/C++ programming language is not necessary, but it's strong...

Full description

Saved in:
Bibliographic Details
Online Access: Full text (MCPHS users only)
Main Author: Kas̆uba, Mário (Author)
Format: Electronic eBook
Language:English
Published: Birmingham, UK : Packt Publishing, 2015
Series:Quick answers to common problems.
Subjects:
Local Note:ProQuest Ebook Central
Table of Contents:
  • ""Cover""; ""Copyright""; ""Credits""; ""About the Author""; ""About the Reviewer""; ""www.PacktPub.com""; ""Table of Contents""; ""Preface""; ""Chapter 1: Basics of Game Engine""; ""Introduction""; ""Preparing a basic file structure for the game engine""; ""Making a stack""; ""Making a queue""; ""Making a prioritized queue""; ""Extending ipairs for use in sparse arrays""; ""Creating Lua modules""; ""Handling errors with pcall, xpcall, and assert""; ""Using Lua with existing projects written in C/C++""; ""Getting LuaSDL for libSDL 1.2""; ""Designing the main application loop with LuaSDL""
  • ""Chapter 2: Events""""Introduction""; ""Processing input events with LuaSDL""; ""Using the keyboard input""; ""Using the relative mouse position""; ""Using the absolute mouse position""; ""Using timers""; ""Chapter 3: Graphics â€? Common Methods""; ""Introduction""; ""Creating a window in libSDL""; ""Creating surfaces""; ""Surfaces manipulation""; ""Using colors""; ""Cursor manipulation""; ""Initializing the graphics mode with OpenGL""; ""Getting OpenGL information""; ""Using OpenGL extensions with GLEW and Lua""; ""Loading images with SDL_image""; ""Creating textures""
  • ""Loading and using bitmap fonts""""Loading and using TrueType fonts""; ""Displaying the text""; ""Creating texture atlas with the rover-design pattern""; ""Using tiles and tilesets in the game""; ""Chapter 4: Graphics â€? Legacy Method with OpenGL 1.xâ€?2.1""; ""Introduction""; ""Drawing primitives in immediate mode""; ""Setting up blending""; ""Moving, rotating, and scaling objects""; ""Setting up the orthogonal and perspective cameras""; ""Setting up materials""; ""Setting up lighting""; ""Using display lists""; ""Setting up vertex buffer""
  • ""Chapter 5: Graphics â€? Modern Method with OpenGL 3.0+""""Introduction""; ""Loading and using GLSL shaders""; ""Using uniform variables with shaders""; ""Writing a vertex shader""; ""Writing a fragment (pixel) shader""; ""Drawing primitives by using vertex buffers""; ""Rendering to texture""; ""Applying highlights and shadows in the scene""; ""Bumpmapping""; ""Chapter 6: The User Interface""; ""Introduction""; ""Drawing a simple window""; ""Moving the window""; ""Using the window hierarchy""; ""Showing the part of the window with the stencil test and window content scrolling""
  • ""Window controls and interaction""""Chapter 7: Physics and Game Mechanics""; ""Introduction""; ""Using Box2D with Lua""; ""Using vector math""; ""Choosing the correct vector scaling for the physics engine""; ""Creating static and dynamic objects""; ""Setting up object properties""; ""Moving objects""; ""Setting up bullets""; ""Running the physics simulation""; ""Detecting object collision""; ""Setting up object collision filtering""; ""Setting up object joints""; ""Chapter 8: Artificial Intelligence""; ""Introduction""; ""A simple pathfinding algorithm for a maze""