Unity Artificial Intelligence Programming, 4th EditionDeveloping Artificial Intelligence (AI) for game characters in Unity 2018 has never been easier. Unity provides game and app developers with a variety of tools to implement AI, from the basic techniques to cutting-edge machine learning-powered agents. Leveraging these tools via Unity's API or built-in features allows limitless possibilities when it comes to creating your game's worlds and characters.
This fourth edition with Unity will help you break down AI into simple concepts to give you a fundamental understanding of the topic to build upon. Using a variety of examples, the book then takes those concepts and walks you through actual implementations designed to highlight key concepts and features related to game AI in Unity.
Further on, you'll learn how to distinguish the state machine pattern and implement one of your own. This is followed by learning how to implement a basic sensory system for your AI agent and coupling it with a Finite State Machine (FSM).
Next, you'll l ...
Java Design Patterns, 2nd EditionGet hands-on experience implementing 26 of the most common design patterns using Java and Eclipse. In addition to Gang of Four (GoF) design patterns, you will also learn about alternative design patterns, and understand the criticisms of design patterns with an overview of anti-patterns. For each pattern you will see at least one real-world scenario, a computer-world example, and a complete implementation including output.
This book has three parts. The first part covers 23 Gang of Four (GoF) design patterns. The second part includes three alternative design patterns. The third part presents criticisms of design patterns with an overview of anti-patterns. You will work through easy-to-follow examples to understand the concepts in depth and you will have a collection of programs to port over to your own projects.
A Q&A session is included in each chapter and covers the pros and cons of each pattern. The last chapter presents FAQs about the design patterns. The step-by-step approac ...
Beginning Programming Using Retro ComputingLearn programming using the Commodore 16/Plus 4 system. Following this book, you and your children will not only learn BASIC programming, but also have fun emulating a retro Commodore system. There are many ways to bring the fun of learning to program in the 1980s back to life. For example, downloading the VICE emulator to a Raspberry Pi allows for the classic "turn on and program" experience and also provides some retro computing project fun. Many parents learned programming in this same way and can have fun helping their children follow the same path.
You can also use this book as an opportunity to dust off your computing skills or learn programming concepts for the first time on a system that's easy, approachable, and fun with a nostalgic twist.
Commodore computers were the most sold computing devices before the iPhone. Nowadays, the Commodore system can be run using freely available emulation on modern computers. This book uses VICE, which is available for PC, Mac, Linux, as ...
Machine Learning with PySparkBuild machine learning models, natural language processing applications, and recommender systems with PySpark to solve various business challenges. This book starts with the fundamentals of Spark and its evolution and then covers the entire spectrum of traditional machine learning algorithms along with natural language processing and recommender systems using PySpark.
Machine Learning with PySpark shows you how to build supervised machine learning models such as linear regression, logistic regression, decision trees, and random forest. You'll also see unsupervised machine learning models such as K-means and hierarchical clustering. A major portion of the book focuses on feature engineering to create useful features with PySpark to train the machine learning models. The natural language processing section covers text processing, text mining, and embedding for classification.
After reading this book, you will understand how to use PySpark's machine learning library to build and tra ...
Building Chatbots with PythonBuild your own chatbot using Python and open source tools. This book begins with an introduction to chatbots where you will gain vital information on their architecture. You will then dive straight into natural language processing with the natural language toolkit (NLTK) for building a custom language processing platform for your chatbot. With this foundation, you will take a look at different natural language processing techniques so that you can choose the right one for you.
The next stage is to learn to build a chatbot using the API.ai platform and define its intents and entities. During this example, you will learn to enable communication with your bot and also take a look at key points of its integration and deployment.
The final chapter of Building Chatbots with Python teaches you how to build, train, and deploy your very own chatbot. Using open source libraries and machine learning techniques you will learn to predict conditions for your bot and develop a conversational ag ...
Learn Web Development with PythonIf you want to develop complete Python web apps with Django, this Learning Path is for you. It will walk you through Python programming techniques and guide you in implementing them when creating 4 professional Django projects, teaching you how to solve common problems and develop RESTful web services with Django and Python. You will learn how to build a blog application, a social image bookmarking website, an online shop, and an e-learning platform.
Learn Web Development with Python will get you started with Python programming techniques, show you how to enhance your applications with AJAX, create RESTful APIs, and set up a production environment for your Django projects. Last but not least, you'll learn the best practices for creating real-world applications. ...
Blazor RevealedBuild web applications in Microsoft .NET that run in any modern browser, helping you to transfer your .NET experience and skills to a new environment and build browser-based applications using a robust and type-safe language and runtime. Developing a web site with rich client-side behavior means most developers need to learn a transpiled language like JavaScript or TypeScript. But today you can also develop rich browser applications using the .NET runtime and C# using Blazor. With Blazor you can use all that experience you have amassed over the years, and can use thousands of already existing libraries, right in the browser.
Blazor Revealed will allow you to create a rich web site experience in no time. You will learn how to build user interfaces, and present data to a user for display and modification, capturing the user's changes via data binding. The book shows you how to access a rich library of .NET functionality such as a component model for building a composable user interfac ...
Serverless Architectures with AWSServerless Architecture with AWS begins with an introduction to the serverless model and helps you get started with AWS and Lambda. You'll also get to grips with other capabilities of the AWS Serverless Platform and see how AWS supports enterprise-grade serverless applications with and without Lambda.
This book will guide you in deploying your first serverless project and exploring the capabilities of serverless Amazon Athena, an interactive query service that makes it easy to analyze data in Amazon Simple Storage Service (S3 Amazon) using standard SQL. You'll also learn about AWS Glue, a fully managed ETL service that makes categorizing data easy and cost-effective. You'll study how Amazon Kinesis makes it possible to unleash the potential of real-time data insights and analytics with capabilities such as video streams, data streams, data firehose, and data analytics. Last but not least, you'll be equipped to combine Amazon Kinesis capabilities with AWS Lambda to create lightweight ...
Hands-On System Programming with C++C++ is a general-purpose programming language with a bias toward system programming as it provides ready access to hardware-level resources, efficient compilation, and a versatile approach to higher-level abstractions.
This book will help you understand the benefits of system programming with C++17. You will gain a firm understanding of various C, C++, and POSIX standards, as well as their respective system types for both C++ and POSIX. After a brief refresher on C++, Resource Acquisition Is Initialization (RAII), and the new C++ Guideline Support Library (GSL), you will learn to program Linux and Unix systems along with process management. As you progress through the chapters, you will become acquainted with C++'s support for IO. You will then study various memory management methods, including a chapter on allocators and how they benefit system programming. You will also explore how to program file input and output and learn about POSIX sockets. This book will help you get to grips ...
Learning C++ by Building Games with Unreal Engine 4, 2nd EditionLearning to program in C++ requires some serious motivation. Unreal Engine 4 (UE4) is a powerful C++ engine with a full range of features used to create top-notch, exciting games by AAA studios, making it the fun way to dive into learning C++17.
This book starts by installing a code editor so you can begin to write C++17 code. You will then get acquainted with important C++ aspects, such as variables and memory, if, else, and switch, looping, functions and macros, objects, classes, inheritance, and dynamic memory allocation. As we dig into more advanced C++17 concepts, you will also start to explore the functionality the UE4 engine has to offer. You will use the UE4 editor to create your own world, and then program in some seriously fun gameplay. We delve further to discuss building game features, pathfinding, behavior trees, and more, and introduce you to the basics of machine learning and neural networks. We go on to talk about improving UI feedback with UMG and audio. In this edi ...