Welcome — Whether you survived Part 1 and/or Part 2, or jumped directly here to Part 3!
A brief summary of what we covered so far:
In Part 1, I shared a bit of history of the use of Artificial Intelligence (AI) and the central role games have played in the advancement in certain areas in AI in general.
Part 2 covered terminology and concepts that will help to understand machine learning and how it relates to AI and deep learning in conjunction with neural networks and the use of deep learning neural network brains in Unity.
In my previous blog, Part 1 in this series, I introduced a bit of history of the use of Artificial Intelligence (AI) and games, and the crucial role games have played in the advancement in certain areas in AI in general.
In Part 2, I would like to introduce some terminology and concepts that will help to understand machine learning and how it relates to AI and deep learning in conjunction with neural networks and the use of deep learning neural network brains to set the foundation for our ultimate goal — to apply machine learning to Unity development.
Normally, I would start with a dev blog followed by a presentation on the same topic. Due to time constraints (yesterday was our final day of the ACI/GameDev HQ Game Development Internship 2020), I have reversed the order and am following up with a dev blog of my presentation to the projects team at GameDev HQ. There was a lot of material I wanted to share, and the live feedback was helpful to expose some gaps in explanations and change the order of certain topics as I translate that experience to this three part series.
Today, in Part 1, I…
After completing two to six weeks of course work, a team of six ACI/GDHQ game developer interns completed their first team project in 14 days and delivered their MVP on time!
Here is a recap of the how we conducted the team team for Nova Star 1.0, plus a few golden nuggets along the way. The goal was form a team of top performing interns and provide a professional grade experience of working together to publish a video game utilizing the industry…
GameDev HQ’s Game Developer Internship 2020 sponsored by Aloha Connects Innovation (ACI)/Economic Development Alliance Hawai`i, funded by The State of Hawai`i and The City and County of Honolulu presents their first ever team project, Nova Star 1.0, just published on itch.io (a video game distribution site).
Everyone — Please kokua (help us out) and leave comments, compliments, tell us how long you took to win, and leave brutally honest feedback on the site to help improve this game!
Six courageous Hawai`i…
There are two common problem that surface while following the 2D Game Development course work:
- GitHub rejects pushes > 100mb (which is quite common with projects that have game assets)
- Conflicts with master vs main branches
The following instructions proposes avoiding those two issues, entirely. (*)
There are so many ways git instructions could not fit your circumstances, so the caveat here is that this is intended for those participating the GameDev HQ Game Developer Internship 2020 who have already completed most of their 2D Game Development course. …
A few days ago, while learning how to build our Unity project for Windows/Mac OS X/Linux and WebGL, the course (and Unity) instructs us to use Linear for a desktop build and Gamma to build for a web app.
Unity — Project Settings -> Player
WebGL tab — Other Settings -> Rendering -> Color Space
Aside from a little warning box that pops up when switching to build a WebGL app, I realized this is a setting I change when told to, without really understanding, so I can never remember which setting to use for which build. …
“Give me six hours to chop down a tree and I will spend the first four sharpening the axe.” — Abraham Lincoln
According to Abraham Lincoln‘s quote, the sharpening ratio is more like 60:40, but we get the basic idea. The modern developer culture can be riddled with learn only what you need in the moment that you need it, then move on. Will our application continue to work if we add one more feature, or is held together by a band-aide as we threw spaghetti at the wall to get it done e.g., lacking foundational support?
Unity projects are space hogs and GitHub is designed for source code management (not asset storage). Have you been rejected for exceeding the 100 MB limit? Has your git-LFS sent your local repo into a tailspin? Try git checkout lfs to return to a stable state, and proceed with the workaround that follows.
Here’s a way to remove folders and files from pushing to your remote repo, but maintaining them in your Unity project folder on your local drive.
Warning: Save a copy of your Unity project folder before proceeding.
You might first want to practice on a test folder…
If you search for how to compare a tag in Unity, you’ll find two ways to do this. Both work, but one may be more efficient in the long run.
Turns out object.CompareTag(“Tag Name”) is more resource efficient than object.tag == “Tag Name”
Doesn’t matter so much in small project, however, it will be more noticeable as a project size increases, according to reddit author ‘mp3-file’:
“Compare tag is faster and don’t allocate memory. Unity say: ‘“’Another unexpected cause of heap allocations can be found in the functions GameObject.name or GameObject.tag. Both of these are accessors that return new strings, which means that calling these functions will generate garbage. Caching the value may be useful, but in this case there is a related Unity function that we can use instead. To check a GameObject’s tag against a value without generating garbage, we can use GameObject.CompareTag().’’”