Posts

Showing posts from July, 2020

UnityLearn - AI For Beginners - GOAP - Creating a Multi-Step Plan & Plans That Require Multiple Agents

Image
July 30, 2020 AI For Beginners Goal Orientated Action Planning (GOAP) Parts 9 and 10 Beginner Programming: Unity Game Dev Courses Unity Learn Course - AI For Beginners Creating a Multi-Step Plan Creating a Multi-Step Plan This tutorial begins linking multiple actions together to create more intricate action plans. To do so, they created a second GAction, GoToWaitingRoom. GoToHospital action was given an after effect of hasArrived and GoToWaitingRoom was given a precondition of hasArrived to give them a point to link together. GoToWaitingRoom was then given the after effect isWaiting, so that the goal given would match up with this second action's outcome. This let's the system take an input goal of isWaiting and deduce the plan of action to get there through these two actions. Just to better visualize this demonstration, they created a basic spawner to consistently spawn in new patients to show that the newly created objects can follow the plans created prop

UnityLearn - AI For Beginners - GOAP - Executing a Simple Plan

July 21, 2020 AI For Beginners Goal Orientated Action Planning (GOAP) Part 8 Beginner Programming: Unity Game Dev Courses Unity Learn Course - AI For Beginners Executing a Simple Plan Executing a Simple Plan This tutorial starts by actually implementing the newly created planner setup within the agents themselves. This involves creating a rather bulky LateUpdate method within the GAgents class which tries to handle all the possible cases of different states of having a planner and having actions to perform. This LateUpdate can be broken down into four main sections: Continues running an action that is in progress Generates a plan and possibly an action queue if they are not already present in agent Removes goal and planner once entire action queue is used up Selects the next action in queue to start performing They then created a new Patient class (which inherited from GAgent) to place on the patient agents and they created a new GoToHospital class (which i

UnityLearn - AI For Beginners - GOAP - The GOAP Planner

July 21, 2020 AI For Beginners Goal Orientated Action Planning (GOAP) Part 7 Beginner Programming: Unity Game Dev Courses Unity Learn Course - AI For Beginners The GOAP Planner GOAP Planner - Part 1 Planner starts by looking through all the achievable actions and finding which can be performed given the starting states from the first node. This can create the branches for the action network which will then continue to have actions connected to them (that satisfy the state conditions) until a chain is found that has a result which matches the initial goal. GPlanner Class The first major step of this class is creating the Plan method which returns a Queue of GActions (this will basically be the full list of actions that will be chosen to actual be acted out). This starts by making a List of usable GActions (those which satisfy the IsAhchieavable condition). They then start a List of the newly create Node class objects, which acts as a more encompassing container f

Indiecade Europe 2019 Talk - The Simple Yet Powerful Math We Don't Talk About

July 7, 2020 Indiecade Europe 2019 Talk Math in Game Dev The Simple Yet Powerful Math We Don't Talk About Youtube - Link By: Indiecade Europe Presenter: Freya Holmér Introduction I am always interested to find new ways of using math within game development to produce fun and unique effects as well as for creating cool systems, so this talk sounded right up my alley. They focus on 3 major functions found in a lot of software as well as Unity: Lerp, InverseLerp, and Remap. While I have used Lerp pretty extensively already, I had never used the other two so covering all of them together was eye opening to see how many different ways they can be utilized for different systems. Notes from Talk Lerp Lerp(a, b, t) = value Lerp(a, b, t) where a is like the starting point, b is the end point, and t is a fraction, generally between 0 and 1. Lerp then outputs a blended value between a and b based on t. At t = 0, it outputs a, and at t = 1.0, it outputs b. t does not have to b

Overview of Hyperbolic and Spherical Space with Non-Euclidean Geometry

July 6, 2020 Non-Euclidean Geometry Hyperbolic and Spherical Space Non-Euclidean Geometry Explained - Hyperbolica Devlog #1 Youtube - Link By: CodeParade Introduction I just find weird and interesting ways to apply math concepts interesting so I wanted to note this video I came across here. It covers the most basic principles of some non-Euclidean geometries and tries to explain them as simply as possible (which will still take several watches for me to truly grasp). The extra mathematical concepts they cover such as how these geometries change the formulas for circumference and area of a circle or the area of a triangle are really cool and it would be a fun challenge to explore how to use these effectively in a game space. Speaking of, they actually mention a roguelike game that tries to use hyperbolic space as the environment for the player which can be found here (it can be downloaded freely at this time as well): Hyper Rogue Site

Unity Isometric Tilemap Basics

July 1, 2020 Unity 2019 Isometric Tilemap MAKING ISOMETRIC TILEMAP in Unity 2019! (Tutorial) Youtube - Link By: Sykoo Introduction My friend was interested in isometric art pieces recently so I got looking into them and became curious myself as to how to work with them in Unity. I had seen it was a feature before, so I just wanted to find a decent source to look back on the topic when I got an opening. This video looks like it covers the full basics pretty well with setting all the proper settings as well as exploring some of the different options you have to place the tiles at the correct elevations with proper visual blocking.

Architecture AI Prototype Historical Path Visualization and UI Updates

Image
July 1, 2020 Architecture AI Project Added Path Visualization and UI Updates Introduction To top off the prototype, we added a quick visualization tool to show any paths that agents have taken within the current game session. This was necessary to make it easier to compare the paths of various combinations of agents and environments even. Along with this, some elements of modifying the system that were only accessible within the Unity Inspector have been moved to the in game UI. This makes it much more manageable to alter the agents and their pathing for Unity users and non-users alike. The following quick reference image shows an example of this new path visualization tool (the red line going through the diagonal of the area). Reference for New Path Visualization Tool (the Red Line is the Path) Vimeo - My Demo of the Past Path Visualization Tool (with New UI Elements) Past Path Visualization Feature Visualization The path data was already being recorded in an