<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Blog on Hunter Dyar</title><link>https://hdyar.com/blog/</link><description>Recent content in Blog on Hunter Dyar</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Sun, 21 Dec 2025 00:00:00 +0000</lastBuildDate><atom:link href="https://hdyar.com/blog/index.xml" rel="self" type="application/rss+xml"/><item><title>Lang Jam Game Jam 2025</title><link>https://hdyar.com/blog/posts/langjamgamejam25/</link><pubDate>Sun, 21 Dec 2025 00:00:00 +0000</pubDate><guid>https://hdyar.com/blog/posts/langjamgamejam25/</guid><description>A 7-day hackathon where you build a programming language and then make a game using it.
langjamgamejam.com/
Did I succeed? Nope! I didn&amp;rsquo;t finish!
I traveled for the holidays, finished making some rugs as gifts, and watched football with my family instead of going full hackathon. Sorry not sorry!
Despite not finishing, here&amp;rsquo;s what I learned during the process.
I gleefully embraced &amp;lsquo;programmer art&amp;rsquo;
What Did I Make? In C#, using RayLib, I wrote a game engine that loads a folder.</description></item><item><title>I published a Dice Rolling app ...9 Years Ago</title><link>https://hdyar.com/blog/posts/dice-roller-app-for-pebble/</link><pubDate>Thu, 09 Oct 2025 00:00:00 +0000</pubDate><guid>https://hdyar.com/blog/posts/dice-roller-app-for-pebble/</guid><description>9 years ago, I published a dice rolling app for pebbles on the pebble app store. Today, that app&amp;hellip; still exists!
Today, the revival of Pebble continues, and Eric Migicovsky announced that the new appstore is the same as the old appstore. Old pebble apps will continue to be supported on the new devices.
As a massive fan of Pebble, it&amp;rsquo;s great to see my old app still around.
It wasn&amp;rsquo;t the only Dice rolling app, and it probably wasn&amp;rsquo;t the best - but it wasn&amp;rsquo;t the worst either.</description></item><item><title>A New Set of Beginner Unity Learning Videos</title><link>https://hdyar.com/blog/posts/unity-intro-videos25/</link><pubDate>Tue, 23 Sep 2025 00:00:00 +0000</pubDate><guid>https://hdyar.com/blog/posts/unity-intro-videos25/</guid><description>This summer, I finally got around to re-recording my no-prior-knowledge, start-here, introduction to Unity videos.
Instead of one long lecture recording, I split things up as much as I could into videos as short as possible. The goal is for them to be review materials for my class lectures, and students can easily jump to the content they need.
Retrospective In terms of wins, I like the aesthetic of sitting at a desk with the content behind me.</description></item><item><title>Lightning Talk at Innovation in Tech &amp; Learning Conference</title><link>https://hdyar.com/blog/posts/lightningtalkst2025/</link><pubDate>Wed, 19 Mar 2025 00:00:00 +0000</pubDate><guid>https://hdyar.com/blog/posts/lightningtalkst2025/</guid><description>Last week I flew to St. Louis to give a lightning talk at the Innovation in Teaching and Learning Conference 2025.
The talk is about the work I did putting together a fairly novel course structure that tackles challenges of project-based pedagogy. I&amp;rsquo;m very proud of this course.
The entire talk is available online on this very website.</description></item><item><title>My Favorite Programming Challenges for the Classroom</title><link>https://hdyar.com/blog/posts/fav-programming-challenges/</link><pubDate>Thu, 20 Feb 2025 00:00:00 +0000</pubDate><guid>https://hdyar.com/blog/posts/fav-programming-challenges/</guid><description>When teaching programming, I use a hybrid-flipped approach. I use video and &amp;ldquo;remote lecture&amp;rdquo; activities (flipped-classroom) purely as a way to prioritize the time I spent watching students program in the classroom.
Nothing is more effective than watching a student write code at understanding their mental model. From there, providing direct feedback in a 1-on-1 over-the-shoulder way.
However, just working on projects isn&amp;rsquo;t always the best use of classroom time. One isn&amp;rsquo;t always doing &amp;ldquo;The conceptually interesting thing&amp;rdquo; when working.</description></item><item><title>A Display of Live Chess Games for the Wall</title><link>https://hdyar.com/blog/posts/chess-viewer/</link><pubDate>Sun, 05 Jan 2025 00:00:00 +0000</pubDate><guid>https://hdyar.com/blog/posts/chess-viewer/</guid><description>My dad is a big chess fan. For Christmas this year, I created a gift. A display that constantly streamed live chess games.
For the display, I simply used a 2018 Galaxy Tablet I was given for free. Recycling!
For the stand, I designed and 3D printed it myself. I am a week or so into learning Fusion 360, and I am still quite a novice at the software. After more pain than it should have caused, I had a tablet stand printed.</description></item><item><title>Starship Home - Filming Trailers for a Mixed Reality Game</title><link>https://hdyar.com/blog/posts/starship-home-trailer/</link><pubDate>Wed, 02 Oct 2024 00:00:00 +0000</pubDate><guid>https://hdyar.com/blog/posts/starship-home-trailer/</guid><description>A few days ago, Starship Home by Creature released. The game is great! Go buy it!
I was grateful enough to get to help film some of the trailers for the game for Creature. First, we filmed the teaser trailer.
Shotlist in hand, we just worked through it all laboriously. My primary skill I brought to the table was patience and pickiness. It took forever, we wanted to stop and say &amp;ldquo;good enough&amp;rdquo; the entire time.</description></item><item><title>A Million Pixels of Falling Sand</title><link>https://hdyar.com/blog/posts/falling-sand/</link><pubDate>Sat, 31 Aug 2024 00:00:00 +0000</pubDate><guid>https://hdyar.com/blog/posts/falling-sand/</guid><description>For the Game Makers Toolkit Jam this year, the theme was &amp;lsquo;Built to Scale&amp;rsquo;. I decided to make a falling sand in Unity. I managed to leverage the Burst compiler and the Jobs system to make a simulation that can handle over ;a million particles.
My only goal was to try and push my limits of how big I could make the simulation, here is what I learned.
Entities, Objects, or Automaton Objects There are three main ways to handle a large simulation like falling sand.</description></item><item><title>Redesigning The Guidebook</title><link>https://hdyar.com/blog/posts/guidebook-redesign/</link><pubDate>Mon, 12 Aug 2024 00:00:00 +0000</pubDate><guid>https://hdyar.com/blog/posts/guidebook-redesign/</guid><description>I&amp;rsquo;ve been working on guidebook.hdyar.com for years, now. It&amp;rsquo;s my longest running academic project, and something of a repository for various class lessons, notes, and resources.
This ended up being a very large effort.
While primarily about Unity development, the purpose of the guidebook is not content related (&amp;ldquo;be a Unity resource&amp;rdquo;) The objective is user-defined: It&amp;rsquo;s a resource for my students. (&amp;ldquo;Here&amp;rsquo;s how to do that thing I see student&amp;rsquo;s needing&amp;rdquo;).</description></item><item><title>Parsing and Visualizing Dice Results in C#</title><link>https://hdyar.com/blog/posts/dice-results-viz/</link><pubDate>Wed, 19 Jun 2024 00:00:00 +0000</pubDate><guid>https://hdyar.com/blog/posts/dice-results-viz/</guid><description>I created a simple webapp that allows you to enter standard dice notation, and get the probability of different results in pretty graphs.
Check out the project at diceresults.hdyar.com, and the source code on github.
Why? A while ago, I was working on a 3D Dice Roller package for Unity. This is a more useful tool, and I do plan to finish it. In writing it, I had to put together a simple dice parser.</description></item><item><title>Control Your Computer Mouse like a Car</title><link>https://hdyar.com/blog/posts/mouse-car/</link><pubDate>Wed, 15 May 2024 00:00:00 +0000</pubDate><guid>https://hdyar.com/blog/posts/mouse-car/</guid><description>Mouse Car? Mouse Car! Have you ever wanted to drive your mouse around the screen like a car? No? Well. Now you can anyway.
This project was made in Unity. It uses Unity-DirectInput to get data from the steering wheel, and calls to windows dll&amp;rsquo;s to send mouse clicks and make the fullscreen, always-on-top game have a transparent window.
The source code is available on Github.
One of my student workers (@disuko) was paid to model the mouse car for me.</description></item><item><title>VR in Education &amp; Training - Panel talk at MagFest 2024</title><link>https://hdyar.com/blog/posts/vr-in-education-talk/</link><pubDate>Fri, 05 Apr 2024 00:00:00 +0000</pubDate><guid>https://hdyar.com/blog/posts/vr-in-education-talk/</guid><description>https://www.youtube.com/watch?v=sMO-Dl2APEI
In January at MAGFest 2024, I spoke on a panel about VR in Education and Training.</description></item><item><title>Zoomy Cat!</title><link>https://hdyar.com/blog/posts/zoomy-cat/</link><pubDate>Tue, 16 Jan 2024 00:00:00 +0000</pubDate><guid>https://hdyar.com/blog/posts/zoomy-cat/</guid><description>I made a video game this weekend!
Zoomy Cat! by Hunter Dyar I have been feeling pretty creatively burned out. I have a small number of very large projects that I have not been able to make significant (visible) progress on (because academia). It&amp;rsquo;s been a while since I&amp;rsquo;ve actually finished anything. So, with MLK day giving me 3 days of work, and no plans other than to watch the steelers lose to the bills, I got to work!</description></item><item><title>Batch Rename Images with their EXIF Data</title><link>https://hdyar.com/blog/posts/python-exif-file-renamer/</link><pubDate>Sun, 07 Jan 2024 00:00:00 +0000</pubDate><guid>https://hdyar.com/blog/posts/python-exif-file-renamer/</guid><description>While I work on an educational photography tool, I encountered a specific problem where the solution is worth sharing.
My problem was loading images by their exposure setting metadata. Instead of creating a database of images and settings, it seems much easier to just rename the files with some encoding scheme.
So that&amp;rsquo;s what I did. This python script will take a folder and a &amp;lsquo;pattern&amp;rsquo;, and rename all image files in that folder with the pattern.</description></item><item><title>How To Backup Unity Projects</title><link>https://hdyar.com/blog/posts/backup-unity-projects/</link><pubDate>Wed, 29 Nov 2023 00:00:00 +0000</pubDate><guid>https://hdyar.com/blog/posts/backup-unity-projects/</guid><description>Backing up Unity Projects is a pain. They are large and full of small files that are a pain to copy. Regardless, backing up your work is important! Here&amp;rsquo;s how I do it.
A Consistent Folder Setup I keep a &amp;ldquo;Unity&amp;rdquo; folder that contains all of my Unity projects. I use this structure for all of my projects that I organize by workflow. I also have /projects/godot, /projects/unreal, and /projects/arduino folders, for example.</description></item><item><title>Notes on Sketching</title><link>https://hdyar.com/blog/posts/notes-on-sketching/</link><pubDate>Fri, 28 Jul 2023 00:00:00 +0000</pubDate><guid>https://hdyar.com/blog/posts/notes-on-sketching/</guid><description>What is a Sketch? Ideas are not real and communicable until we attempt to externalize them. A sketch is the lowest fidelity attempt to realize an idea.
Externalization of an Idea Sketches turn ideas into things that must be sensed or experienced, which we then interpret back into ideas.
What do we Gain from Externalizing? Looking at the difference between the idea that we perceive, and our original idea, we find the value of a sketch.</description></item><item><title>An Interactive Explainer for Positional Notation</title><link>https://hdyar.com/blog/posts/interactive-modular-positional-notation/</link><pubDate>Mon, 17 Jul 2023 00:00:00 +0000</pubDate><guid>https://hdyar.com/blog/posts/interactive-modular-positional-notation/</guid><description>I created an interactive explainer for Positional Notation, aiming to teach the underlying principles of Binary and Hexadecimal notation.
https://explainers.hdyar.com/binary/index.html.
This is a text/image lecture with interactive JavaScript toys, and a video that also walks users through some of the core concepts. In addition, I have taken the JavaScript toys and broken them off to their own webpages, like this color picker. The rest are linked on the main page.</description></item><item><title>Words Rules - GMTK Jam 2023</title><link>https://hdyar.com/blog/posts/words-rules/</link><pubDate>Tue, 11 Jul 2023 00:00:00 +0000</pubDate><guid>https://hdyar.com/blog/posts/words-rules/</guid><description>For this years Game Makers&amp;rsquo; Toolkit Game Jam, I created a word puzzle game.
Words Rules by Hunter Dyar Concept The game plays as a sort of &amp;lsquo;reverse wordle&amp;rsquo;. Instead of being given some list of hints/rules/conditions, and finding the words that fit the criteria, you are given the words. You must find the rules that most specifically fit these words.
I honestly did not begin thinking I would finish, and I was pleasantly surprised that, after I got the first prototype working, that it was actually kind of fun.</description></item><item><title>Methods for Modular Development in Unity</title><link>https://hdyar.com/blog/posts/methods-for-custom-packages/</link><pubDate>Tue, 16 May 2023 00:00:00 +0000</pubDate><guid>https://hdyar.com/blog/posts/methods-for-custom-packages/</guid><description>One important skillset to have in game &amp;amp; systems development is a modular approach. Basically, you build out your game systems in a robust and isolated way, such that you could re-use them throughout separate projects. This approach becomes more important the more you scale, and makes working with teams much easier.
Check out the Unity 2022 talk How to adopt a modular code workflow for your team for a broader overview and discussion.</description></item><item><title>How To Start Big Projects - Lecture Recording</title><link>https://hdyar.com/blog/posts/how-to-start-big-projects-lecture-recording/</link><pubDate>Sat, 29 Apr 2023 00:00:00 +0000</pubDate><guid>https://hdyar.com/blog/posts/how-to-start-big-projects-lecture-recording/</guid><description>Here&amp;rsquo;s a quick and easy lecture recording for future reference; one I&amp;rsquo;ve been meaning to put into video form for a while: &amp;lsquo;how to start large projects&amp;rsquo;. AKA the &amp;ldquo;I told you so&amp;rdquo; lecture.
The &amp;lsquo;How To Start Big Projects&amp;rsquo; Lecture</description></item><item><title>An Anthology of AI-Generated Poems (They're Bad!)</title><link>https://hdyar.com/blog/posts/aipoems/</link><pubDate>Mon, 03 Apr 2023 00:00:00 +0000</pubDate><guid>https://hdyar.com/blog/posts/aipoems/</guid><description>This past weekend, I participated in the first NO JOKE: We are talking about LLMs hackathon. It was a 2 day event where a bunch of grad students, PhD&amp;rsquo;s, industry professionals, academics, and researchers got together to discuss, present, and hack on LLM&amp;rsquo;s, hosted at Carnegie Mellon University.
All weekend, I collected AI generated poetry. I created a web page to display a random one on every page load.
aipoetry.hdyar.com The poems are bad, but I think it&amp;rsquo;s an interesting exercise to think about why.</description></item><item><title>Squarewavebird Swadge Dev Stories - My Talk at MagFest 2023</title><link>https://hdyar.com/blog/posts/swadge-developer-panel/</link><pubDate>Fri, 17 Mar 2023 00:00:00 +0000</pubDate><guid>https://hdyar.com/blog/posts/swadge-developer-panel/</guid><description>I spoke at the swadge developer panel at MafFest 2023, back in Januarry, about my pi-cross game.
My section begins at about 25 minutes in, this link will jump you there.</description></item><item><title>Downhill Jam - Using Inheiritance in Unity Follow-along Video Series</title><link>https://hdyar.com/blog/posts/downhill-jam-videos/</link><pubDate>Wed, 08 Mar 2023 00:00:00 +0000</pubDate><guid>https://hdyar.com/blog/posts/downhill-jam-videos/</guid><description>I recorded the following video series as an assignment for my programming class, accompanying other projects where they getting introduced to polymorphism in C#. This project is a follow-along demonstration of, in a &amp;ldquo;real&amp;rdquo; game, some of these code architecture techniques in action.
The first part just sets up the Car Controller. This is the type of thing I would consider skipping, and providing the starter project and sample assets to the students.</description></item><item><title>I Created a Numpad that is also a Calculator</title><link>https://hdyar.com/blog/posts/numpadcalc-1/</link><pubDate>Fri, 03 Mar 2023 00:00:00 +0000</pubDate><guid>https://hdyar.com/blog/posts/numpadcalc-1/</guid><description>I&amp;rsquo;ve always wanted a numberpad that&amp;rsquo;s also a calculator. It&amp;rsquo;s a pretty simple concept! How many different grids-of-numbers do I need sitting on my desk? Why do I need to open the calculator app on my computer? It should just&amp;hellip; be a calculator. And a number pad. It should be both!
Well, this device doesn&amp;rsquo;t exist, so I went ahead and made it.
Designing the PCB The first step to building a completely custom keyboard from scratch is designing and ordering the PCB.</description></item><item><title>Introducing my Transition Effects Unity Package</title><link>https://hdyar.com/blog/posts/unity-transition-effect/</link><pubDate>Wed, 08 Feb 2023 00:00:00 +0000</pubDate><guid>https://hdyar.com/blog/posts/unity-transition-effect/</guid><description>During Global Game Jam 2023, we raised the possibility of having the camera fade out before a cutscene. I added it to the list, but never had time to implement it. I did think &amp;ldquo;Why should I have to implement that? Fading the camera should just be a thing&amp;rdquo;. Well, with that spirit in mind, I created Unity Transition Effects, a package that allows one to easily do camera transitions.</description></item><item><title>Make Breakout In Unity - Follow-along video series</title><link>https://hdyar.com/blog/posts/breakout-followalong/</link><pubDate>Tue, 20 Dec 2022 00:00:00 +0000</pubDate><guid>https://hdyar.com/blog/posts/breakout-followalong/</guid><description>Put together a follow-along video series for making breakout in Unity.
My goal is to have a beginner series that I can give my students who want more concrete next steps after taking my workshop. The next steps, then, would be some kind of game manager setup, and thinking through references and dependencies. This makes a good first project for doing that.
In that spirit, Part 2 is the real heart of this project.</description></item><item><title>A Few Lessons Learned While Programming for Students</title><link>https://hdyar.com/blog/posts/programming-for-students/</link><pubDate>Thu, 08 Dec 2022 00:00:00 +0000</pubDate><guid>https://hdyar.com/blog/posts/programming-for-students/</guid><description>More than many other programmers, much of the code I write will be examined by students in great detail. I would like to share some of the lessons I have learned from that, and how they have affected how I write code.
Write Self Documenting Code Writing comments is good. Writing code that doesn&amp;rsquo;t need comments is better. There are many good articles and videos explaining various perspectives of self documenting code, so I don&amp;rsquo;t feel the need to explain it in detail.</description></item><item><title>Welcome to Programming</title><link>https://hdyar.com/blog/posts/welcometoprogramming/</link><pubDate>Thu, 01 Dec 2022 00:00:00 +0000</pubDate><guid>https://hdyar.com/blog/posts/welcometoprogramming/</guid><description>Preamble Welcome to programming! I’m glad you’re here.
Programming is the mysterious art of telling computers what to do.
Programming is not easy. It’s a step that makes up a large and complex process. Its semantics are mired in jargon and history, its historical development sudden and ambiguous. Learning programming is hard because there is so much to learn.
Learning programming is challenging because it is hard to find the answers to the actual problems you are experiencing.</description></item></channel></rss>