A Game-Based Learning Approach to Assist Novice Programmers in Understanding Pointers (Design, Implementation and Evaluation of an Educational Game for Learning C Programming Concepts Surrounding Pointers

A Game-Based Learning Approach to Assist Novice Programmers in Understanding Pointers (Design, Implementation and Evaluation of an Educational Game for Learning C Programming Concepts Surrounding Pointers

Author: Vaibhav Mor

Publisher:

Published: 2020

Total Pages: 0

ISBN-13:

DOWNLOAD EBOOK

In dealing with the students' diculties in introductory programming courses, several researchers claim that some of the modern programming languages used, require the understanding of advanced concepts at an early stage of the learning process. Examples of such languages are C and C++. These contain more complex fundamentals compared to another popular introductory programming language such as Python. As a consequence, the factual information required by the introductory programming courses interferes with procedural knowledge. Students who cannot cope with this early understanding are failing the course, not because they do not understand the programming concepts, but because the programming language that was chosen is inappropriate. Previous studies, supported with our initial analysis show novice programmers struggle to comprehend some of the exclusive topics covered in C programming course, that would not be covered in another equivalent course where the only dierence is that a dierent programming language is used. One such C programming concept that stands out the most in terms of high level of diculty among novice programmers is pointers. Pointers in the C language is a variable that stores or points to the address of another variable. The reason students seem to struggle with this concept is they get confused as the syntax is very similar to a normal variable, and students confuse the use of de-reference operator and reference operator. There are conceptual diculties in understanding of how pointers and memory-related concepts work To reduce the challenges faced by programming novices in understanding C pointers, a digital game based learning tool which utilises techniques such as visualisation, metaphors/analogies may help. This thesis investigates the use of a digital game-based learning solution to help improve student learning and therefore improve student performance in pointer related questions. The tool is evaluated with the help of participants from ENGGEN131; a rst-year engineering class at the University of Auckland. We present results which showed improved student performance in pointer related questions. A detailed analysis of this tool did not show any signicant improvement in student performance. Future research in this area is warranted.


Beginning C++ Game Programming

Beginning C++ Game Programming

Author: John Horton

Publisher: Packt Publishing Ltd

Published: 2016-10-07

Total Pages: 511

ISBN-13: 1786467771

DOWNLOAD EBOOK

Learn C++ from scratch and get started building your very own games About This Book This book offers a fun way to learn modern C++ programming while building exciting 2D games This beginner-friendly guide offers a fast-paced but engaging approach to game development Dive headfirst into building a wide variety of desktop games that gradually increase in complexity It is packed with many suggestions to expand your finished games that will make you think critically, technically, and creatively Who This Book Is For This book is perfect for you if any of the following describes you: You have no C++ programming knowledge whatsoever or need a beginner level refresher course, if you want to learn to build games or just use games as an engaging way to learn C++, if you have aspirations to publish a game one day, perhaps on Steam, or if you just want to have loads of fun and impress friends with your creations. What You Will Learn Get to know C++ from scratch while simultaneously learning game building Learn the basics of C++, such as variables, loops, and functions to animate game objects, respond to collisions, keep score, play sound effects, and build your first playable game. Use more advanced C++ topics such as classes, inheritance, and references to spawn and control thousands of enemies, shoot with a rapid fire machine gun, and realize random scrolling game-worlds Stretch your C++ knowledge beyond the beginner level and use concepts such as pointers, references, and the Standard Template Library to add features like split-screen coop, immersive directional sound, and custom levels loaded from level-design files Get ready to go and build your own unique games! In Detail This book is all about offering you a fun introduction to the world of game programming, C++, and the OpenGL-powered SFML using three fun, fully-playable games. These games are an addictive frantic two-button tapper, a multi-level zombie survival shooter, and a split-screen multiplayer puzzle-platformer. We will start with the very basics of programming, such as variables, loops, and conditions and you will become more skillful with each game as you move through the key C++ topics, such as OOP (Object-Orientated Programming), C++ pointers, and an introduction to the Standard Template Library. While building these games, you will also learn exciting game programming concepts like particle effects, directional sound (spatialization), OpenGL programmable Shaders, spawning thousands of objects, and more. Style and approach This book offers a fun, example-driven approach to learning game development and C++. In addition to explaining game development techniques in an engaging style, the games are built in a way that introduces the key C++ topics in a practical and not theory-based way, with multiple runnable/playable stages in each chapter.


Beginning C++ Game Programming

Beginning C++ Game Programming

Author: John Horton

Publisher: Packt Publishing Ltd

Published: 2019-10-31

Total Pages: 746

ISBN-13: 1838647651

DOWNLOAD EBOOK

Get to grips with programming techniques and game development using C++ libraries and Visual Studio 2019 Key Features Learn game development and C++ with a fun, example-driven approach Build clones of popular games such as Timberman, Zombie Survival Shooter, a co-op puzzle platformer, and Space Invaders Discover tips to expand your finished games by thinking critically, technically, and creatively Book Description The second edition of Beginning C++ Game Programming is updated and improved to include the latest features of Visual Studio 2019, SFML, and modern C++ programming techniques. With this book, you'll get a fun introduction to game programming by building five fully playable games of increasing complexity. You'll learn to build clones of popular games such as Timberman, Pong, a Zombie survival shooter, a coop puzzle platformer and Space Invaders. The book starts by covering the basics of programming. You'll study key C++ topics, such as object-oriented programming (OOP) and C++ pointers, and get acquainted with the Standard Template Library (STL). The book helps you learn about collision detection techniques and game physics by building a Pong game. As you build games, you'll also learn exciting game programming concepts such as particle effects, directional sound (spatialization), OpenGL programmable shaders, spawning objects, and much more. Finally, you'll explore game design patterns to enhance your C++ game programming skills. By the end of the book, you'll have gained the knowledge you need to build your own games with exciting features from scratch What you will learn Set up your game development project in Visual Studio 2019 and explore C++ libraries such as SFML Explore C++ OOP by building a Pong game Understand core game concepts such as game animation, game physics, collision detection, scorekeeping, and game sound Use classes, inheritance, and references to spawn and control thousands of enemies and shoot rapid-fire machine guns Add advanced features to your game using pointers, references, and the STL Scale and reuse your game code by learning modern game programming design patterns Who this book is for This book is perfect for you if you have no C++ programming knowledge, you need a beginner-level refresher course, or you want to learn how to build games or just use games as an engaging way to learn C++. Whether you aspire to publish a game (perhaps on Steam) or just want to impress friends with your creations, you'll find this book useful.


The Fundamentals of C/C++ Game Programming

The Fundamentals of C/C++ Game Programming

Author: Brian Beuken

Publisher: CRC Press

Published: 2018-02-21

Total Pages: 533

ISBN-13: 1498799124

DOWNLOAD EBOOK

This book is aimed at giving novice coders an understanding of the methods and techniques used in professional games development. Designed to help develop and strengthen problem solving and basic C/C++ skills, it also will help to develop familiarity targeting and using fixed/restricted hardware, which are key skills in console development. It allows the reader to increase their confidence as game programmers by walking them through increasingly involved game concepts, while maintaining the understanding that despite the increased complexity, the core methods remain consistent with the advancement of the technology; the technology only enhances the gaming experience. It also demonstrates underlying principles of game coding in practical step by step ways to increase exposure and confidence in game coding concepts. Key Features: Increases the confidence of new coders by demonstrating how to get things done. Introduces evolving projects to reinforce concepts, both directly and indirectly that the reader will use to produce and then enhance the project. Provides tutorials on Graphics API’s that can be easily understood by a novice. Demystifies hardware used to gain new effects without blinding the user to the technical wizardry going on under the system. Gives a sense of achievement to the reader and pushes them toward improvement.


Pointers in C

Pointers in C

Author: Hrishikesh Dewan

Publisher: Apress

Published: 2014-01-21

Total Pages: 161

ISBN-13: 1430259124

DOWNLOAD EBOOK

Pointers in C provides a resource for professionals and advanced students needing in-depth but hands-on coverage of pointer basics and advanced features. The goal is to help programmers in wielding the full potential of pointers. In spite of its vast usage, understanding and proper usage of pointers remains a significant problem. This book’s aim is to first introduce the basic building blocks such as elaborate details about memory, the compilation process (parsing/preprocessing/assembler/object code generation), the runtime memory organization of an executable and virtual memory. These basic building blocks will help both beginners and advanced readers to grasp the notion of pointers very easily and clearly. The book is enriched with several illustrations, pictorial examples, and code from different contexts (Device driver code snippets, algorithm, and data structures code where pointers are used). Pointers in C contains several quick tips which will be useful for programmers for not just learning the pointer concept but also while using other features of the C language. Chapters in the book are intuitive, and there is a strict logical flow among them and each chapter forms a basis for the next chapter. This book contains every small aspect of pointer features in the C language in their entirety.


Game Development Patterns and Best Practices

Game Development Patterns and Best Practices

Author: John P. Doran

Publisher: Packt Publishing Ltd

Published: 2017-04-27

Total Pages: 383

ISBN-13: 178712696X

DOWNLOAD EBOOK

Utilize proven solutions to solve common problems in game development About This Book Untangle your game development workflow, make cleaner code, and create structurally solid games Implement key programming patterns that will enable you to make efficient AI and remove duplication Optimize your game using memory management techniques Who This Book Is For If you are a game developer who wants to solve commonly-encountered issues or have some way to communicate to other developers in a standardized format, then this book is for you. Knowledge of basic game programming principles and C++ programming is assumed. What You Will Learn Learn what design patterns are and why you would want to use them Reduce the maintenance burden with well-tested, cleaner code Employ the singleton pattern effectively to reduce your compiler workload Use the factory pattern to help you create different objects with the same creation logic and reduce coding time Improve game performance with Object Pools Allow game play to interact with physics or graphics in an abstract way Refractor your code to remove common code smells In Detail You've learned how to program, and you've probably created some simple games at some point, but now you want to build larger projects and find out how to resolve your problems. So instead of a coder, you might now want to think like a game developer or software engineer. To organize your code well, you need certain tools to do so, and that's what this book is all about. You will learn techniques to code quickly and correctly, while ensuring your code is modular and easily understandable. To begin, we will start with the core game programming patterns, but not the usual way. We will take the use case strategy with this book. We will take an AAA standard game and show you the hurdles at multiple stages of development. Similarly, various use cases are used to showcase other patterns such as the adapter pattern, prototype pattern, flyweight pattern, and observer pattern. Lastly, we'll go over some tips and tricks on how to refactor your code to remove common code smells and make it easier for others to work with you. By the end of the book you will be proficient in using the most popular and frequently used patterns with the best practices. Style and approach This book takes a step-by-step real-life case studies approach. Every pattern is first explained using a bottleneck. We will show you a problem in your everyday workflow, and then introduce you to the pattern, and show you how the pattern will resolve the situation.


A Tutorial on Pointers and Arrays in C

A Tutorial on Pointers and Arrays in C

Author: Ted Jensen

Publisher:

Published: 2017-05-19

Total Pages: 53

ISBN-13: 9781521331040

DOWNLOAD EBOOK

This document is intended to introduce pointers to beginning programmers in the Cprogramming language. Over several years of reading and contributing to variousconferences on C including those on the FidoNet and UseNet, I have noted a largenumber of newcomers to C appear to have a difficult time in grasping the fundamentalsof pointers. I therefore undertook the task of trying to explain them in plain language withlots of examples.


C# and Game Programming

C# and Game Programming

Author: Salvatore A. Buono

Publisher: A K Peters/CRC Press

Published: 2019-05-31

Total Pages: 544

ISBN-13:

DOWNLOAD EBOOK

The second edition of C# and Game Programming offers the same practical, hands-on approach as the first edition to learning the C# language through classic arcade game applications. Complete source code for games like Battle Bit, Asteroid Miner, and Battle Tennis, included on the CD-ROM, demonstrates programming strategies and complements the comprehensive treatment of C# in the text. From the basics of adding graphics and sound to games, to advanced concepts such as the .Net framework and object-oriented programming, this book provides the foundations for a beginner to become a full-fledged programmer. New in this edition: - Supports DirectX 9.0 - Revised programs and examples - Improved frame rate for game examples


Coding Games

Coding Games

Author: Robert C Matthews

Publisher:

Published: 2020-12-03

Total Pages: 498

ISBN-13:

DOWNLOAD EBOOK

The Complete 3 Books Series on Coding GamesBook 1Do you want a comprehensive guide to everything you need to know to start making your first game?If your answer to any of these questions is "yes" then this is the book for you. We'll be going over every facet of game programming, ranging from how to set your expectations of what you're getting into right up to creating the games themselves.In this book you'll discover...-How to program a vast variety of different game genres.-The most important game design elements crucial to your success.-How to use the Gosu library to make games in Ruby.-The best way to ensure your RPG Maker game is better than the rest.-A crash-course in Unity to kick start your professional careerThis book won't just teach you how to code. Rather, it'll teach you the ins and outs of game design so that you can make a game that's actually fun and entertaining, rather than just a classroom project. Book 2Learning how to code properly sometimes can be very perplexing and needlessly complicated. Or even worse, boring. Instead of actively learning new programs or exciting new applications of your code, you are forced to go through hundreds of boring texts, all filled with confusing texts and hopelessly mysterious symbols. This wasn't what you expected! Surely there must be a better way to learn how to program and make coding more fun! And there is. There exists one simple solution that, in one fell swoop can transform learning how to code from an insanely boring experience to an entertaining pleasant journey. How you wonder? By making the whole experience a game!In this book Coding Games, we will show you what coding is, its fundamental concepts, and how you can master the basic principles of coding through games. For anyone tired of learning to code boringly, or just someone looking for a more fun way to attract their young ones into computer programming, this book will be quite an illuminating read for you! Book3This book's ideology is simple and straight-forward: equip the user with the most important concepts to catapult your game development skills. When looking for a good book that explains game programming, readers are usually bombarded with information from the author without any context. Often, code doesn't make sense, hasn't been explained properly, and the concepts the author tries to explain are unclear. The main reason for this is that authors, when writing technical books such as this, assume that the reader will have the context for every small detail they leave out and every major detail they choose to convey. This book was written with particular care to keep the reader's perspective in mind instead of the author's knowledge, because at the end of the day, the books' purpose is to teach you, rather than leave you disappointed. This book stays true to its purpose and builds upon the content discussed in the previous series. Even though readers coming to the advanced level of game programming should be confident in their intermediate and basic level understanding of the topic, the chapters' content is careful not to leave anything ambiguous to the reader. Here are some of the key features that you will find in this book: -Important and fundamental topics that are key to advanced game programming.-Well-versed explanations after every block of code to facilitate better delivery of the concepts.-A proper topic architecture such that every chapter builds upon the previous one.-Friendly and explanatory vocabulary with minimum jargon to ensure a better reading experience.In this book you will learn-Start up and shut down sequences-Application layers-How to create game objects and characters-How to create game loops-How to program devices and user interfaces-Sounds, animations, and much more!