<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>jono shields</title>
    <link>https://jonoshields.com/</link>
    <description>Recent content on jono shields</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Tue, 12 Aug 2025 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://jonoshields.com/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Tiny News</title>
      <link>https://jonoshields.com/post/tiny-news/</link>
      <pubDate>Tue, 12 Aug 2025 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/tiny-news/</guid>
      <description>&lt;h3 id=&#34;inspiration&#34;&gt;Inspiration&lt;/h3&gt;&#xA;&lt;p&gt;About 6 months ago I stumbled across the &lt;a href=&#34;https://amanvir.com/guten&#34;&gt;Guten&lt;/a&gt;, a tiny newspaper printer. This discovery blew my mind and introduced me to the world of thermal printing - some of which I will explore here.&lt;/p&gt;&#xA;&lt;p&gt;Immediately I jumped on a local auction site and started watching thermal printers. I think a lot of people&amp;rsquo;s intuition here might be to buy new (and there is nothing wrong with that), but there is a world of commercial thermal printers that are miles better than the hobbyist ones you will find on electronics websites. These commercial ones are built reliable, they print quickly and many have additional features like an auto-cutter, USB connectivity, etc.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Thinking about json differently</title>
      <link>https://jonoshields.com/post/json-viewer/</link>
      <pubDate>Sat, 31 May 2025 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/json-viewer/</guid>
      <description>&lt;p&gt;Recently I had a somewhat philosophical conversation with a co-worker regarding the role of &lt;code&gt;json&lt;/code&gt; outside of the web - and in fact outside of software development entirely.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;JSON - Javascript Object Notation - a structured data format that makes up a good portion of communication on the internet&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;e.g.&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;{&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#f92672&#34;&gt;&amp;#34;latitude&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#ae81ff&#34;&gt;52.52&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#f92672&#34;&gt;&amp;#34;longitude&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#ae81ff&#34;&gt;13.419998&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#f92672&#34;&gt;&amp;#34;timezone&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;GMT&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#f92672&#34;&gt;&amp;#34;precipitation_sum&amp;#34;&lt;/span&gt;: [&lt;span style=&#34;color:#ae81ff&#34;&gt;0.00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;11.70&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0.90&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0.00&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;1.70&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;2.80&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0.30&lt;/span&gt;]&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Tabular data once began its life in accounting (probably) and has become a ubiquitous part of many parts of life, whether it is in the form of spreadsheets at work, some stats in a video game or your fitness tracker&amp;rsquo;s dashboard.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Maybe I can&#39;t do everything</title>
      <link>https://jonoshields.com/post/writing-a-book/</link>
      <pubDate>Tue, 23 Apr 2024 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/writing-a-book/</guid>
      <description>&lt;p&gt;After reading a few particularly good books I felt inspired to start writing a book of my own. I love to learn and of the firm belief that anyone can do anything if they truly put their mind to it. So I went down one heck of a rabbit-hole.&lt;/p&gt;&#xA;&lt;p&gt;From reading every post on &lt;a href=&#34;https://reddit.com/r/writing&#34;&gt;r/writing&lt;/a&gt; daily to buying distraction-free writing devices to doing daily exercises out of Ursula K. Le Guin&amp;rsquo;s &amp;ldquo;Steering The Craft&amp;rdquo; - I was in deep.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Learning usereducer live on stream</title>
      <link>https://jonoshields.com/post/learning-use-reducer/</link>
      <pubDate>Sat, 02 Sep 2023 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/learning-use-reducer/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;p&gt;Note: If you want to watch it for your self you can find the link &lt;a href=&#34;https://www.twitch.tv/videos/1913689246?t=2h6m45s&#34;&gt;here&lt;/a&gt;.&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://jonoshields.com/img/jono-stream.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Recently I had fun streaming myself making a simple habit tracking app. The intention was to go in with some basic wireframes and see what happens.&lt;/p&gt;&#xA;&lt;p&gt;And wow, did I learn a lot!&lt;/p&gt;&#xA;&lt;h2 id=&#34;the-app&#34;&gt;The App&lt;/h2&gt;&#xA;&lt;p&gt;I made a quick mock-up of the habit tracker app in Miro (highly recommend for whiteboarding and wireframing - not sponsored).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Procedural Dungeon Generation in Godot</title>
      <link>https://jonoshields.com/post/bsp-dungeon/</link>
      <pubDate>Sun, 13 Aug 2023 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/bsp-dungeon/</guid>
      <description>&lt;p&gt;Welcome back!&lt;/p&gt;&#xA;&lt;p&gt;Today we are going to be using an algorithm called Binary Space Partitioning (BSP) to create a dungeon in Godot. We won&amp;rsquo;t be going into as many of the basics in Godot as we did last time.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;If you haven&amp;rsquo;t already, have a look at my tutorial for cellular automata in Godot &lt;a href=&#34;https://jonoshields.com/post/cellular-automata-tutorial&#34;&gt;here&lt;/a&gt;.&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;Before we hop into coding. Let&amp;rsquo;s have a look at what BSP is and how we can use it to generate maps for a video game.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Making Conway&#39;s Game of Life in Godot</title>
      <link>https://jonoshields.com/post/cellular-automata-tutorial/</link>
      <pubDate>Fri, 11 Aug 2023 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/cellular-automata-tutorial/</guid>
      <description>&lt;p&gt;I saw a great question on Reddit recently about how someone can get started with procedural generation in Godot. And as a fan of both, I thought it would be fun to give it a go and maybe make a bit of a tutorial.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Note: This will be done in Godot 4.1. If using an earlier version, the code might be a little different.&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;We will be making Conway&amp;rsquo;s Game of Life.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Sips</title>
      <link>https://jonoshields.com/post/sips/</link>
      <pubDate>Wed, 01 Mar 2023 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/sips/</guid>
      <description>&lt;p&gt;Time for another GBA Gamejam! This time it is the winter jam, its the smaller of the annual GBA Gamejams. We had 1 month to make something little, this time the Title Screen.&lt;/p&gt;&#xA;&lt;p&gt;Wow. I almost feel called out. The Title Screen is usually the last thing I think of and sometimes skip entirely.&lt;/p&gt;&#xA;&lt;p&gt;A whole month. I could make a pretty popping title screen in that time.&lt;/p&gt;&#xA;&lt;p&gt;So I set to work brainstorming and settled on the idea to make a really vibrant cafe scene. It wouldn&amp;rsquo;t be interactive, but you could sit and people watch.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Nuclear Love</title>
      <link>https://jonoshields.com/post/nuclear-love/</link>
      <pubDate>Fri, 11 Nov 2022 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/nuclear-love/</guid>
      <description>&lt;p&gt;You can look at my last couple of posts for my grand desires to compete in GBA Jam 2022. But the best laid plans and all that.&lt;/p&gt;&#xA;&lt;p&gt;I ended up not actually starting any sort of entry until the 28th of October. 3 days till the jam ends.&lt;/p&gt;&#xA;&lt;p&gt;So I sit down with my brother for coffee and we get chatting. It would be cool to do a Halloween themed game since the game ends on October 31st. We spitball some ideas and end up talking about doing a post apocalyptic dating game.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Making a Shoot &#39;em up for the masses</title>
      <link>https://jonoshields.com/post/making-a-shmup-for-the-masses/</link>
      <pubDate>Sun, 04 Sep 2022 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/making-a-shmup-for-the-masses/</guid>
      <description>&lt;h3 id=&#34;kirbys-dreamland&#34;&gt;Kirby&amp;rsquo;s Dreamland&lt;/h3&gt;&#xA;&lt;p&gt;Recently I watched an &lt;a href=&#34;https://www.youtube.com/watch?v=PBRt2D2YN44&#34;&gt;interview&lt;/a&gt; with Masahiro Sakurai, the designer of the original Kirby game among other amazing titles. He talks a bit about the history of platformers and how at that point in time games in general were made to be difficult. Not just for the sake of it mind you, catridges had limited sizes and developers could only fit so much content in there, so to be able to make a longer format game you had to make it hard.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Starting another GBA Jam</title>
      <link>https://jonoshields.com/post/starting-another-gbajam/</link>
      <pubDate>Sun, 31 Jul 2022 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/starting-another-gbajam/</guid>
      <description>&lt;h3 id=&#34;the-past-7-months-since-lro&#34;&gt;The past ~7 months since LRO&lt;/h3&gt;&#xA;&lt;p&gt;My plan after LRO was to keep working on it and eventually release a paid edition with a lot more content and airport themed games. That didn&amp;rsquo;t happen. Instead I got distracted. Life got in they way.&lt;/p&gt;&#xA;&lt;p&gt;However over all this time inspiration did strike a number of times.&lt;/p&gt;&#xA;&lt;h3 id=&#34;lro-but-now-a-full-blown-rpg&#34;&gt;LRO, but now a full BLOWN RPG!&lt;/h3&gt;&#xA;&lt;p&gt;I downloaded a ton of stock assets from itch.io and started messing around with the idea of creating a game based in an airport to follow on as a sequel from Luggage Retrieval Officer. The idea is that you have been hired by the airports HR team to create training documentation for all the different roles.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Polishing LRO</title>
      <link>https://jonoshields.com/post/lro-polish/</link>
      <pubDate>Sun, 26 Dec 2021 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/lro-polish/</guid>
      <description>&lt;p&gt;Carrying on from the previous post I wanted to talk about further design decisions I made in the last couple of weeks.&lt;/p&gt;&#xA;&lt;h2 id=&#34;using-dialog-to-create-a-narrative-element&#34;&gt;Using Dialog to create a narrative element&lt;/h2&gt;&#xA;&lt;p&gt;At this point the game works. You can complete levels and progress through the rank system from Trainee -&amp;gt; Expert -&amp;gt; Officer. And while the puzzles get harder to help show the progression, there is little else.&lt;/p&gt;&#xA;&lt;p&gt;Can I get away with this? Absolutely. Most classic puzzles games don&amp;rsquo;t offer more than this at all, just take a look at the likes of Dr. Mario and Bust-A-Move.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Enhancing Luggage Retrieval Officer</title>
      <link>https://jonoshields.com/post/lro-update/</link>
      <pubDate>Fri, 10 Dec 2021 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/lro-update/</guid>
      <description>&lt;h2 id=&#34;the-todo-list&#34;&gt;The Todo List&lt;/h2&gt;&#xA;&lt;p&gt;At the end of the last post I left a todo list with a bunch of features for me to add to the game.&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;✔️ Level Select Screens - 40 puzzles and to select between (4 difficulty levels).&lt;/li&gt;&#xA;&lt;li&gt;✔️ New Suitcase select - having a cursor to select the item you want to move instead of tabbing through the suitcases will be a lot easier for most players.&lt;/li&gt;&#xA;&lt;li&gt;✔️ Success Animation - making it more obvious when you have completed a puzzle, rather than just loading the next one.&lt;/li&gt;&#xA;&lt;li&gt;✔️ Tutorial - how to play&lt;/li&gt;&#xA;&lt;li&gt;✔️ Save Progress - puzzle unlocking&lt;/li&gt;&#xA;&lt;li&gt;✔️ More Puzzles&lt;/li&gt;&#xA;&lt;li&gt;✔️ Sliding animations of luggage&lt;/li&gt;&#xA;&lt;li&gt;❌ Dialog screens&lt;/li&gt;&#xA;&lt;li&gt;✔️ Lock harder ranks until easier ranks are completed&lt;/li&gt;&#xA;&lt;li&gt;❌ Levels 41-50&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;Pretty good. Pretty, pretty, pretty goooood.&lt;/p&gt;</description>
    </item>
    <item>
      <title>GBA Winter Jam</title>
      <link>https://jonoshields.com/post/gba-winter-jam/</link>
      <pubDate>Wed, 08 Dec 2021 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/gba-winter-jam/</guid>
      <description>&lt;h2 id=&#34;another-gamejam&#34;&gt;Another GameJam&lt;/h2&gt;&#xA;&lt;p&gt;Following on from the success of the GBAJam21, the GBAdev community has decided to wrap up the year with a relaxed winter game jam. The optional theme is Frozen.&lt;/p&gt;&#xA;&lt;p&gt;Check it out on Itch.io &lt;a href=&#34;https://itch.io/jam/gba-winter-jam-2021&#34;&gt;here&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;h2 id=&#34;scope&#34;&gt;Scope&lt;/h2&gt;&#xA;&lt;p&gt;Based on the last GBAJam that I did, I knew I had to reel in the scope. There were two games that I kind of had in mind.&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;A space shoot &amp;rsquo;em up, similar to &lt;a href=&#34;https://en.wikipedia.org/wiki/Uridium&#34;&gt;Uridium&lt;/a&gt; for C64. I could render 3d models to sprites and make some cool rolling animations.&lt;/li&gt;&#xA;&lt;li&gt;A &lt;a href=&#34;https://en.wikipedia.org/wiki/Rush_Hour_(puzzle)&#34;&gt;rush hour&lt;/a&gt; clone, an awesome sliding block puzzle game.&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;h2 id=&#34;no-internet-even-less-power&#34;&gt;No Internet, Even less power&lt;/h2&gt;&#xA;&lt;p&gt;This summer (NZ) we are on the road travelling around New Zealand in our little car SoyBean. This means that while I have been able to recharge my phone and look at the jam page, I haven&amp;rsquo;t been able to do any programming.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Why I stopped making NFTs</title>
      <link>https://jonoshields.com/post/nft-experience/</link>
      <pubDate>Fri, 03 Dec 2021 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/nft-experience/</guid>
      <description>&lt;h2 id=&#34;what-is-an-nft&#34;&gt;What is an NFT?&lt;/h2&gt;&#xA;&lt;p&gt;&lt;a href=&#34;#skip&#34;&gt;Skip to &lt;strong&gt;Why&lt;/strong&gt; if you already know&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Non Fungible Token. A token (small piece of data) that can&amp;rsquo;t be changed. This achieved using blockchain technology. Most NFT&amp;rsquo;s are made using smart contracts on the Ethereum (a cryptocurrency) network.&lt;/p&gt;&#xA;&lt;p&gt;This datum is replicated along with a public key across thousands of computers around the world. They all agree that the person who owns the public key also owns the data. This replication proves irrefutably the ownership of this tiny pieces of information.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kiwijam21 - 48HRS - Adapt</title>
      <link>https://jonoshields.com/post/kiwijam21/</link>
      <pubDate>Tue, 27 Jul 2021 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/kiwijam21/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;kiwijam21&#34;&gt;Kiwijam21&lt;/h2&gt;&#xA;&lt;p&gt;Kiwijam started on Friday night, at 7pm the theme was announced and our space at The University of Auckland became a hive of activity.&lt;/p&gt;&#xA;&lt;p&gt;The theme - Adapt.&lt;/p&gt;&#xA;&lt;p&gt;My first thoughts were that I wanted to make a game where the player needed to use a Bop-It (TM) to control several different &amp;ldquo;levels&amp;rdquo; where the game changes significantly in between. For example the first level a platformer, the second a racing game, third something else.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Revisiting Tacotown</title>
      <link>https://jonoshields.com/post/tacotown-v3/</link>
      <pubDate>Sat, 17 Jul 2021 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/tacotown-v3/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;tacotown&#34;&gt;Tacotown&lt;/h2&gt;&#xA;&lt;p&gt;A number of years ago I got playing with &lt;a href=&#34;https://github.com/inkle/ink&#34;&gt;Ink&lt;/a&gt; making narrative driven games.&lt;/p&gt;&#xA;&lt;p&gt;One of the ideas I had was to make a game where you buy a food truck, leave your old life behind to start anew. Beginning your life as a mobile restaurant vendor on the road.&lt;/p&gt;&#xA;&lt;p&gt;You can play the opening to the game (2 mins) that I made 5 years ago here&amp;hellip;&lt;/p&gt;&#xA;&lt;iframe style=&#34;height:400px; background-color:white;&#34; src=&#34;https://foopod.github.io/tacotown/&#34;&gt;&lt;/iframe&gt;&#xA;&lt;p&gt;I called this demo Tacotown, I figured that the story could revolve around moving to a city known for being dominated largely by taco trucks. You would have to work your way up the ladder to become top dog of the food truck community in the town.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Feline - Finishing Touches</title>
      <link>https://jonoshields.com/post/finishing-touches/</link>
      <pubDate>Wed, 07 Jul 2021 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/finishing-touches/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;gbagamejam2021--making-a-game-for-the-gameboy-advance&#34;&gt;GBAGameJam2021 | Making a game for the Gameboy Advance&lt;/h2&gt;&#xA;&lt;h3 id=&#34;day-88&#34;&gt;Day 88&lt;/h3&gt;&#xA;&lt;p&gt;It is the last week of the jam and I am cramming like a high school student before exams.&lt;/p&gt;&#xA;&lt;h2 id=&#34;a-new-level&#34;&gt;A New Level&lt;/h2&gt;&#xA;&lt;p&gt;I really had to get my a** into g.&lt;/p&gt;&#xA;&lt;p&gt;So I took my dungeon tile sheet, added a filter or three and threw some rocks in there.&lt;/p&gt;&#xA;&lt;img src=&#34;https://jonoshields.com/img/tilemap_other.bmp&#34; class=&#34;pixelated&#34;/&gt;&#xA;&lt;p&gt;Throw in a background and&amp;hellip;&lt;/p&gt;&#xA;&lt;img src=&#34;https://jonoshields.com/img/feline-2.png&#34; class=&#34;pixelated&#34;/&gt;&#xA;&lt;h2 id=&#34;and-a-new-enemy&#34;&gt;And a New Enemy&lt;/h2&gt;&#xA;&lt;p&gt;I don&amp;rsquo;t want to share too much about the story behind this enemy. But I wanted to make something that was a step up in difficulty from the slimes and bats.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Using HBlank to add Parallax</title>
      <link>https://jonoshields.com/post/title-screen/</link>
      <pubDate>Wed, 30 Jun 2021 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/title-screen/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;gbagamejam2021--making-a-game-for-the-gameboy-advance&#34;&gt;GBAGameJam2021 | Making a game for the Gameboy Advance&lt;/h2&gt;&#xA;&lt;h3 id=&#34;day-81&#34;&gt;Day 81&lt;/h3&gt;&#xA;&lt;p&gt;At first I thought that adding a title screen would be boring, but not when you discover how to use HBlank effects.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;What is an HBlank Effect? Well, when the gba draws to the screen it draws in rows, starting at the top and going down. We can make code run in between these rows. Find more detailed info &lt;a href=&#34;https://www.coranac.com/tonc/text/video.htm#sec-blanks&#34;&gt;here&lt;/a&gt; (this is genuinely very much worth the read if you plan to develop for GBA).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Adding more lore to Feline</title>
      <link>https://jonoshields.com/post/day-74/</link>
      <pubDate>Wed, 23 Jun 2021 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/day-74/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;gbagamejam2021--making-a-game-for-the-gameboy-advance&#34;&gt;GBAGameJam2021 | Making a game for the Gameboy Advance&lt;/h2&gt;&#xA;&lt;h3 id=&#34;day-74&#34;&gt;Day 74&lt;/h3&gt;&#xA;&lt;p&gt;Unfortunately I haven&amp;rsquo;t had much time over the last few weeks to work my GBAJam2021 entry. And I realized today that the deadline is approaching very quickly.&lt;/p&gt;&#xA;&lt;p&gt;In the last post I talked about how important narrative was to me in this game.&lt;/p&gt;&#xA;&lt;p&gt;I decided to add stone tablets dotted around the level that the player could stop and read if they wanted.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Mapping out an MVP for Feline</title>
      <link>https://jonoshields.com/post/mapping-out-mvp/</link>
      <pubDate>Tue, 01 Jun 2021 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/mapping-out-mvp/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;gbagamejam2021--making-a-game-for-the-gameboy-advance&#34;&gt;GBAGameJam2021 | Making a game for the Gameboy Advance&lt;/h2&gt;&#xA;&lt;h3 id=&#34;day-52&#34;&gt;Day 52&lt;/h3&gt;&#xA;&lt;p&gt;In a previous post I talked a little about how important it is to make a plan. You may be thinking &amp;ldquo;well if I don&amp;rsquo;t have a plan, it is impossible for things to not go as planned&amp;rdquo;.&lt;/p&gt;&#xA;&lt;p&gt;Well yes. Technically this statement is correct. But it also means that when things don&amp;rsquo;t work, it is hard to pinpoint why. Plans do much more than that though, they create focus and help you to make decisions.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Making a boids simulation on the GBA</title>
      <link>https://jonoshields.com/post/boids-on-gba/</link>
      <pubDate>Mon, 24 May 2021 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/boids-on-gba/</guid>
      <description>&lt;p&gt;I have had an idea for a game that needs to use a boids algorithm for a while now.&lt;/p&gt;&#xA;&lt;h3 id=&#34;boids-algorithm&#34;&gt;Boids Algorithm&lt;/h3&gt;&#xA;&lt;p&gt;To put it simply Boids as a algorithm works fairly similarly to cellular automata and conways game of life. There are a few simple rules that all parties action each frame. Then positions are updated.&lt;/p&gt;&#xA;&lt;p&gt;Have a look at the &lt;a href=&#34;http://www.red3d.com/cwr/boids/&#34;&gt;original creator of Boids explanation of it&lt;/a&gt; if you are curious.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Jono has a Plan</title>
      <link>https://jonoshields.com/post/jono-has-a-plan/</link>
      <pubDate>Fri, 21 May 2021 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/jono-has-a-plan/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;gbagamejam2021--making-a-game-for-the-gameboy-advance&#34;&gt;GBAGameJam2021 | Making a game for the Gameboy Advance&lt;/h2&gt;&#xA;&lt;h3 id=&#34;day-44&#34;&gt;Day 44&lt;/h3&gt;&#xA;&lt;p&gt;I read a really good post-mortem the other day. One of my key takeaways was simply to have a plan. Not so that you can stick to it, you update it as you go. But so that when things go wrong you can look back and try to figure out why. Like &amp;ldquo;oh, I shouldn&amp;rsquo;t have left the music till the last week&amp;rdquo; ~ probably Jono in a month.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Attacking Animations and Enemies</title>
      <link>https://jonoshields.com/post/player-attacking/</link>
      <pubDate>Mon, 17 May 2021 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/player-attacking/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;gbagamejam2021--making-a-game-for-the-gameboy-advance&#34;&gt;GBAGameJam2021 | Making a game for the Gameboy Advance&lt;/h2&gt;&#xA;&lt;h3 id=&#34;day-40&#34;&gt;Day 40&lt;/h3&gt;&#xA;&lt;p&gt;Okay, so in a lot of projects there comes a part where a lot of work is needed for little reward. I always struggle to find motivation  in these parts. Queue a week of procrastinating.&lt;/p&gt;&#xA;&lt;p&gt;But this week I&amp;hellip;&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Refactored the player class so that an instance of Player lasts for the whole game.&lt;/li&gt;&#xA;&lt;li&gt;Added enemy class and an enemy list in the Player class.&lt;/li&gt;&#xA;&lt;li&gt;Adding attacking hitboxes.&lt;/li&gt;&#xA;&lt;li&gt;Struggled with the below problem for a whole day!&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;ARHGH!! Okay. So I got stuck on this for ages and it really did my head in. I am trying to use pointers for the first time, so no wonder this kind of thing went wrong.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Animation, Camera and Movement Improvements</title>
      <link>https://jonoshields.com/post/player-improvements/</link>
      <pubDate>Mon, 10 May 2021 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/player-improvements/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;gbagamejam---days-28-32&#34;&gt;GBAGameJam - Days 28-32&lt;/h2&gt;&#xA;&lt;h3 id=&#34;camera-movement&#34;&gt;Camera Movement&lt;/h3&gt;&#xA;&lt;p&gt;Last time I posted an update on the GBA Dev Discord I was recommended &lt;a href=&#34;https://www.gamasutra.com/blogs/ItayKeren/20150511/243083/Scroll_Back_The_Theory_and_Practice_of_Cameras_in_SideScrollers.php?print=1&#34;&gt;an article about camera movement&lt;/a&gt;. And I can highly recommend this to anyone making any sort of 2d game. It made me think for a lot about how the camera should move in my game.&lt;/p&gt;&#xA;&lt;p&gt;When I started the easiest thing was just to set the camera&amp;rsquo;s position to the player. This way the player was always in the centre of the screen. This is called position-locking, and while better than nothing, sometimes it isn&amp;rsquo;t the best experience for the player.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Another Level, Dialogue and NPC&#39;s</title>
      <link>https://jonoshields.com/post/day-27/</link>
      <pubDate>Thu, 06 May 2021 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/day-27/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;gbagamejam---days-24-27&#34;&gt;GBAGameJam - Days 24-27&lt;/h2&gt;&#xA;&lt;h3 id=&#34;off-the-grid&#34;&gt;Off the Grid&lt;/h3&gt;&#xA;&lt;p&gt;The last 3 nights I have been staying in a campsite with no cell reception. But thanks to the awesome docs bundled with Butano, I haven&amp;rsquo;t really hit any major snags.&lt;/p&gt;&#xA;&lt;p&gt;And without the distractions of the internet I have made a lot of progress in the last few days.&lt;/p&gt;&#xA;&lt;h3 id=&#34;new-level&#34;&gt;New Level&lt;/h3&gt;&#xA;&lt;p&gt;Our story has to start somewhere, and the idea being that the bad guy broke in and kidnapped our hero&amp;rsquo;s family. We should start there. At home.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Will this be a game?</title>
      <link>https://jonoshields.com/post/day-23/</link>
      <pubDate>Sun, 02 May 2021 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/day-23/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;gbagamejam---days-20-23&#34;&gt;GBAGameJam - Days 20-23&lt;/h2&gt;&#xA;&lt;h3 id=&#34;lets-talk-game-design&#34;&gt;Lets talk game design&lt;/h3&gt;&#xA;&lt;p&gt;Okay. We are at the point where I need to try to figure out if this is going to be a real game or not. So I came up with a game design pitch, another level, a world map, abilities, collectables and more.&lt;/p&gt;&#xA;&lt;h3 id=&#34;pitch&#34;&gt;Pitch&lt;/h3&gt;&#xA;&lt;p&gt;You arrive home to find your place in ruins, your wife and children are missing. Find out what happened and save them by unlocking the secrets of the past hidden under the island you have lived your whole life.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Animation States and Dash Ability</title>
      <link>https://jonoshields.com/post/day-20/</link>
      <pubDate>Thu, 29 Apr 2021 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/day-20/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;gbagamejam---days-18-20&#34;&gt;GBAGameJam - Days 18-20&lt;/h2&gt;&#xA;&lt;h3 id=&#34;more-refactoring&#34;&gt;More refactoring&lt;/h3&gt;&#xA;&lt;p&gt;Okay, so last time we pulled some stuff out into classes. Now after learning some more I have created .h and .cpp files for my new hitbox and player classes.&lt;/p&gt;&#xA;&lt;p&gt;At this point comparing c++ to other languages I have used before an header file is kind of like an interface or an abstract class. But also at the same time it is absolutely not that. I think.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Refactor and Acceleration</title>
      <link>https://jonoshields.com/post/day-17/</link>
      <pubDate>Mon, 26 Apr 2021 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/day-17/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;gbagamejam---days-14-17&#34;&gt;GBAGameJam - Days 14-17&lt;/h2&gt;&#xA;&lt;h3 id=&#34;major-refactor---classes&#34;&gt;Major Refactor - Classes&lt;/h3&gt;&#xA;&lt;p&gt;So. How do classes in C++ work? Yeah, that took some googling on its own. Actually just trying to figure out the weirdness of their constructors was time consuming.&lt;/p&gt;&#xA;&lt;p&gt;I ended up making a hitbox class that I could use for my character. This is what it looks like&amp;hellip;&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-cpp&#34; data-lang=&#34;cpp&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;class&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;Hitbox&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;{&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#66d9ef&#34;&gt;private&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#66d9ef&#34;&gt;int&lt;/span&gt; _x;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#66d9ef&#34;&gt;int&lt;/span&gt; _y;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#66d9ef&#34;&gt;int&lt;/span&gt; _width;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#66d9ef&#34;&gt;int&lt;/span&gt; _height;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#66d9ef&#34;&gt;public&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        Hitbox(&lt;span style=&#34;color:#66d9ef&#34;&gt;int&lt;/span&gt; x, &lt;span style=&#34;color:#66d9ef&#34;&gt;int&lt;/span&gt; y, &lt;span style=&#34;color:#66d9ef&#34;&gt;int&lt;/span&gt; width, &lt;span style=&#34;color:#66d9ef&#34;&gt;int&lt;/span&gt; height)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt; _x(x), _y(y), _width(width), _height(height)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        {}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#66d9ef&#34;&gt;int&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;x&lt;/span&gt;()&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#66d9ef&#34;&gt;return&lt;/span&gt; _x;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        }&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#66d9ef&#34;&gt;int&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;y&lt;/span&gt;()&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#66d9ef&#34;&gt;return&lt;/span&gt; _y;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        }&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#66d9ef&#34;&gt;int&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;width&lt;/span&gt;()&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#66d9ef&#34;&gt;return&lt;/span&gt; _width;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        }&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#66d9ef&#34;&gt;int&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;height&lt;/span&gt;()&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#66d9ef&#34;&gt;return&lt;/span&gt; _height;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        }&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;};&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;This is clearly not something that you should be learning from me though. So I will leave a few links here..&lt;/p&gt;</description>
    </item>
    <item>
      <title>Collisions, Music and More</title>
      <link>https://jonoshields.com/post/day-13/</link>
      <pubDate>Thu, 22 Apr 2021 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/day-13/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;gbagamejam---day-13&#34;&gt;GBAGameJam - Day 13&lt;/h2&gt;&#xA;&lt;h3 id=&#34;collisions&#34;&gt;Collisions&lt;/h3&gt;&#xA;&lt;p&gt;This should be fun.&lt;/p&gt;&#xA;&lt;p&gt;FYI I first learned collision logic making a similar platformer in pico8. I found &lt;a href=&#34;https://www.youtube.com/watch?v=-hejwsu9A9g&#34;&gt;these tutorials&lt;/a&gt; invaluable for that. And I think its a great resource that can be applied in any programming language even though the examples are lua &amp;amp; pico8 specific.&lt;/p&gt;&#xA;&lt;p&gt;This should be easy now that we can get map data.&lt;/p&gt;&#xA;&lt;p&gt;So first off I am making a simple method to apply gravity so that we can move better.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Detecting Map Tiles</title>
      <link>https://jonoshields.com/post/day-12/</link>
      <pubDate>Wed, 21 Apr 2021 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/day-12/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;gbagamejam---day-12&#34;&gt;GBAGameJam - Day 12&lt;/h2&gt;&#xA;&lt;p&gt;Okay. I did it!&lt;/p&gt;&#xA;&lt;p&gt;I figured out how to get map data so I can start using tile data to figure out collisions.&lt;/p&gt;&#xA;&lt;p&gt;So as before. We have our bg that we made..&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;bn::affine_bg_ptr map_bg = bn::affine_bg_items::map.create_bg(256, 256);&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;And I finally found out that you can call &lt;code&gt;map_bg.map().cells_ref()&lt;/code&gt; to get the pointer to the cells of the map. You can then call &lt;code&gt;.value()&lt;/code&gt; on it to get the actual data in a &lt;a href=&#34;https://gvaliente.github.io/butano/classbn_1_1span.html&#34;&gt;span&lt;/a&gt; (kind of like an array?).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Yeah, its going okay</title>
      <link>https://jonoshields.com/post/day-4-11/</link>
      <pubDate>Tue, 20 Apr 2021 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/day-4-11/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;gbagamejam---days-4-to-11&#34;&gt;GBAGameJam - Days 4 to 11&lt;/h2&gt;&#xA;&lt;p&gt;Okay. So I may have been scared off a little by C++ again and a little frustrated at my self for not trying harding or digging deeper.&lt;/p&gt;&#xA;&lt;p&gt;This week hasn&amp;rsquo;t been very good.&lt;/p&gt;&#xA;&lt;p&gt;But that isn&amp;rsquo;t to say I haven&amp;rsquo;t done anything. The &lt;a href=&#34;https://discord.io/gbadev&#34;&gt;gbaDev discord&lt;/a&gt; is buzzing with activity and I am enjoying learning little bits and pieces about the GBA, dev tools and other random projects people are working on.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Animation, Movement and Backgrounds</title>
      <link>https://jonoshields.com/post/day-3/</link>
      <pubDate>Tue, 13 Apr 2021 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/day-3/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;gbagamejam---day-3&#34;&gt;GBAGameJam - Day 3&lt;/h2&gt;&#xA;&lt;h3 id=&#34;animation&#34;&gt;Animation&lt;/h3&gt;&#xA;&lt;p&gt;Today I am tackling animation, not for any specific purpose, but just because I have the assets for them already.&lt;/p&gt;&#xA;&lt;p&gt;We can use Butano&amp;rsquo;s &lt;code&gt;create_sprite_animate_action_forever&lt;/code&gt; to kick off the animation.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Also just note that throughout using Butano you will see the use of Actions, they allow you to do transformations to a sprite over time. Read more &lt;a href=&#34;https://gvaliente.github.io/butano/group__action.html&#34;&gt;here&lt;/a&gt;.&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;So getting the animation working is pretty simple&amp;hellip;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Let&#39;s draw a sprite!</title>
      <link>https://jonoshields.com/post/day-2/</link>
      <pubDate>Mon, 12 Apr 2021 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/day-2/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;gbagamejam---day-2&#34;&gt;GBAGameJam - Day 2&lt;/h2&gt;&#xA;&lt;p&gt;Okay lets do this. Lets try to get as far as I can doing this with assets from an old game.&lt;/p&gt;&#xA;&lt;p&gt;This is the Butano Sprite Example..&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-cpp&#34; data-lang=&#34;cpp&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;/*&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt; * Copyright (c) 2020-2021 Gustavo Valiente gustavo.valiente@protonmail.com&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt; * zlib License, see LICENSE file.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt; */&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;sprites_visibility_scene&lt;/span&gt;(bn&lt;span style=&#34;color:#f92672&#34;&gt;::&lt;/span&gt;sprite_text_generator&lt;span style=&#34;color:#f92672&#34;&gt;&amp;amp;&lt;/span&gt; text_generator)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#66d9ef&#34;&gt;constexpr&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;const&lt;/span&gt; bn&lt;span style=&#34;color:#f92672&#34;&gt;::&lt;/span&gt;string_view info_text_lines[] &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;A: hide/show sprite&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;START: go to next scene&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        };&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        info info(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Sprites visibility&amp;#34;&lt;/span&gt;, info_text_lines, text_generator);&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        bn&lt;span style=&#34;color:#f92672&#34;&gt;::&lt;/span&gt;sprite_ptr red_sprite &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; bn&lt;span style=&#34;color:#f92672&#34;&gt;::&lt;/span&gt;sprite_items&lt;span style=&#34;color:#f92672&#34;&gt;::&lt;/span&gt;red_sprite.create_sprite(&lt;span style=&#34;color:#ae81ff&#34;&gt;0&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0&lt;/span&gt;);&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#66d9ef&#34;&gt;while&lt;/span&gt;(&lt;span style=&#34;color:#f92672&#34;&gt;!&lt;/span&gt; bn&lt;span style=&#34;color:#f92672&#34;&gt;::&lt;/span&gt;keypad&lt;span style=&#34;color:#f92672&#34;&gt;::&lt;/span&gt;start_pressed())&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#66d9ef&#34;&gt;if&lt;/span&gt;(bn&lt;span style=&#34;color:#f92672&#34;&gt;::&lt;/span&gt;keypad&lt;span style=&#34;color:#f92672&#34;&gt;::&lt;/span&gt;a_pressed())&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                red_sprite.set_visible(&lt;span style=&#34;color:#f92672&#34;&gt;!&lt;/span&gt; red_sprite.visible());&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            }&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            info.update();&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            bn&lt;span style=&#34;color:#f92672&#34;&gt;::&lt;/span&gt;core&lt;span style=&#34;color:#f92672&#34;&gt;::&lt;/span&gt;update();&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        }&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    }&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;But really the only thing we need is &lt;code&gt;bn::sprite_ptr red_sprite = bn::sprite_items::red_sprite.create_sprite(0, 0);&lt;/code&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Joining GBAJam</title>
      <link>https://jonoshields.com/post/gamejam-day-1/</link>
      <pubDate>Sun, 11 Apr 2021 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/gamejam-day-1/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;day-1-of-the-gbagamejam21&#34;&gt;Day 1 of the GBAGameJam21&lt;/h2&gt;&#xA;&lt;p&gt;I normally use much higher level languages, python, javascript, c#. But looking at the example code for Butano and seeing all of these :: confuses me a lot.&lt;/p&gt;&#xA;&lt;p&gt;Maybe I could map all of this to a language that I know. Googles &amp;ldquo;Lua bridge&amp;rdquo; furiously.&lt;/p&gt;&#xA;&lt;p&gt;Eventually gives up.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Experimenting with Double-X</title>
      <link>https://jonoshields.com/post/double-x/</link>
      <pubDate>Fri, 19 Feb 2021 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/double-x/</guid>
      <description>&lt;p&gt;For my birthday my amazing fiance got me the gift of a bulk roller and a 100ft roll of Kodak Double-X 5222.&lt;/p&gt;&#xA;&lt;p&gt;I have wanted to get into bulk rolling for a couple of reasons..&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Film of any length with minimal waste. Short rolls to experiment with new gear or developing.&lt;/li&gt;&#xA;&lt;li&gt;Getting intimate with a single emulsion, learning the ins and outs and how to make the most of it.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;This is my experience and my first 6 rolls.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Imposter Syndrome</title>
      <link>https://jonoshields.com/post/imposter-syndrome/</link>
      <pubDate>Tue, 26 Jan 2021 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/imposter-syndrome/</guid>
      <description>&lt;p&gt;You know that feeling, when you really want to do something, but something holds you back?&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://jonoshields.com/photos/2020-01-26-1.jpg&#34; alt=&#34;My fiance and best friend, Athena&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Well, I really want to get into doing more portraiture. I think about it quite often now.&lt;/p&gt;&#xA;&lt;p&gt;I also get this feeling though, I don&amp;rsquo;t know whether it is &lt;strong&gt;anxiety&lt;/strong&gt; or &lt;strong&gt;imposter syndrome&lt;/strong&gt;. But something makes me feel &lt;small&gt;small&lt;/small&gt;, &lt;small&gt;&lt;small&gt;inadequate&lt;/small&gt;&lt;/small&gt; and &lt;big&gt;&lt;strong&gt;scared&lt;/strong&gt;&lt;/big&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Its not just strangers, asking family and friends is the same.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Summer Roadtrip</title>
      <link>https://jonoshields.com/post/tripping-around-nz/</link>
      <pubDate>Fri, 15 Jan 2021 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/tripping-around-nz/</guid>
      <description>&lt;p&gt;This year we are moving into a smaller place and I just know that at some point I will have to say goodbye to my Pentax 6x7.&lt;/p&gt;&#xA;&lt;p&gt;So this summer I decided to take it with us on our roadtrip around the north island.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://jonoshields.com/photos/2020-01-14-5.png&#34; alt=&#34;Our plan for the next ~2 weeks&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;On the way down we stopped at the Three Sisters.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://jonoshields.com/photos/2020-01-14-4.jpg&#34; alt=&#34;The Three Sisters rock formation&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://jonoshields.com/photos/2020-01-14-2.jpg&#34; alt=&#34;One of the Three Sisters&#34;&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Exhibit</title>
      <link>https://jonoshields.com/post/exhibit/</link>
      <pubDate>Fri, 11 Dec 2020 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/exhibit/</guid>
      <description>&lt;p&gt;These last couple of weeks have been the most exciting. I entered one of my photos in a competition to be exhibited in a gallery in Auckland. And lo and behold it got chosen to be one of 25 exhibited.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://jonoshields.com/photos/exhibit-1.jpg&#34; alt=&#34;My photo on display in the exhibit&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;It isn&amp;rsquo;t often I print my photos and never big. So walking into this gallery and seeing this thing on the wall was just awesome. A massive thank you to &lt;a href=&#34;https://theblackandwhitebox.co.nz&#34;&gt;The Black &amp;amp; White Box&lt;/a&gt; who organised the whole exhibition, it has been so cool getting to see so many talented kiwis showing off their film photos.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Catching up</title>
      <link>https://jonoshields.com/post/catching-up/</link>
      <pubDate>Sun, 15 Nov 2020 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/catching-up/</guid>
      <description>&lt;p&gt;I haven&amp;rsquo;t written a post in a long time. Like at least a year.&lt;/p&gt;&#xA;&lt;p&gt;So here are some photos that have been memorable&amp;hellip;&lt;/p&gt;&#xA;&lt;p&gt;Towards the end of 2019 we attended the Animal Rights March. It was incredible to see people from all walks of life protesting together to end animal cruelty. This ten year old boy and his sister marched for what they believe, he holds an Animal Liberation sign, while hers reads &amp;ldquo;their lives not ours&amp;rdquo;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Island Generation</title>
      <link>https://jonoshields.com/post/island/</link>
      <pubDate>Wed, 04 Dec 2019 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/island/</guid>
      <description>&lt;p&gt;So I saw another cool post by someone that was generating islands and I wanted to give it a go.&lt;/p&gt;&#xA;&lt;p&gt;Since I haven&amp;rsquo;t really used three.js for anything before I thought it would be a good way to learn that too.&lt;/p&gt;&#xA;&lt;p&gt;Finished product first&amp;hellip;&lt;/p&gt;&#xA;&lt;iframe style=&#34;width: 100%;height: 400px;&#34; src=&#34;https://foopod.github.io/island&#34;&gt;&lt;/iframe&gt;&#xA;&lt;p&gt;Starting out by using Perlin noise to generate some terrain, there were tons of examples of this and three.js had one on their &lt;a href=&#34;https://threejs.org/examples/?q=terr#webgl_geometry_terrain&#34;&gt;site&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://jonoshields.com/img/island2.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Fake News</title>
      <link>https://jonoshields.com/post/fake-news/</link>
      <pubDate>Wed, 27 Nov 2019 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/fake-news/</guid>
      <description>&lt;p&gt;&lt;img src=&#34;https://jonoshields.com/img/trump-tweet.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Test it for yourself &lt;a href=&#34;https://foopod.github.io/trump/&#34;&gt;here&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;h3 id=&#34;what-are-markov-chains&#34;&gt;What are Markov Chains?&lt;/h3&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Markov Chains are a way of modelling states of something and using probability to determine a likely next state. For example if you are sitting, your next state might be as follows&amp;hellip; 50% continue sitting, 30% standing, 10% lying down, 10% running.&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;As per usual someone else already has an amazing explanation with animations. So if you want to learn more check that out &lt;a href=&#34;http://setosa.io/ev/markov-chains/&#34;&gt;here&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>New Camera Day</title>
      <link>https://jonoshields.com/post/leica-m2/</link>
      <pubDate>Mon, 29 Jul 2019 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/leica-m2/</guid>
      <description>&lt;p&gt;I recently acquired my grail film camera. The Leica M2. Leica is a heritage brand and has a long history with press and documentary photography. The build quality is beyond excellent and their cameras have always been built solid. This bad boy is roughly 60 years old.&lt;/p&gt;&#xA;&lt;p&gt;Why not the M3? It doesn&amp;rsquo;t support 35mm framelines, so shooting with a 35mm lens means that I wouldn&amp;rsquo;t be able to see the whole frame.&#xA;Why not the M4? No good reason. I am just a little less fond of the plastic trimming and the fastload take up spool is a bit harder to know if you have the film secured properly.&#xA;Why not the M5 or newer? These started getting out of my price range very quickly. And from the M6 you get a bunch of features I don&amp;rsquo;t really need. Especially because I am quite keen to learn to shoot without a lightmeter.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Gospel of Luke</title>
      <link>https://jonoshields.com/post/gospel-of-luke/</link>
      <pubDate>Wed, 03 Jul 2019 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/gospel-of-luke/</guid>
      <description>&lt;p&gt;Recently a friend reached out to me to help him with a project he was working on.&lt;/p&gt;&#xA;&lt;p&gt;He is studying Theology at St Johns and wanted to highlight the role of women in the Gospel of Luke.&lt;/p&gt;&#xA;&lt;p&gt;I am not religious in the slightest, but I liked the idea as most texts of this age downplay the impact of female characters.&lt;/p&gt;&#xA;&lt;p&gt;We met at St Matthews to talk about it and plan each of the shots on location. And wow, what a beautiful and interesting place to take these photos.&lt;/p&gt;</description>
    </item>
    <item>
      <title>How to do street photography?</title>
      <link>https://jonoshields.com/post/street-photography/</link>
      <pubDate>Tue, 11 Jun 2019 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/street-photography/</guid>
      <description>&lt;p&gt;Street Photography. It&amp;rsquo;s not that scary.&lt;/p&gt;&#xA;&lt;p&gt;And just like every other aspect of photography you can make it your own.&lt;/p&gt;&#xA;&lt;p&gt;You can focus on the environment.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://jonoshields.com/photos/12072019-4.jpg&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Or on people.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://jonoshields.com/photos/12072019-3.jpg&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;You can set up your composition and wait.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://jonoshields.com/photos/12072019-7.jpg&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Or you can walk and shoot.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://jonoshields.com/photos/12072019-2.jpg&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;You can get up close and personal.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://jonoshields.com/photos/12072019-6.jpg&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Or you can shoot from afar.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://jonoshields.com/photos/12072019-5.jpg&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;You can talk to your subjects and ask for them to pose for you.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Jono&#39;s first attempt to develop film</title>
      <link>https://jonoshields.com/post/let-s-develop-film-and-hope-it-doesn-t-go-terribly-wrong/</link>
      <pubDate>Wed, 06 Feb 2019 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/let-s-develop-film-and-hope-it-doesn-t-go-terribly-wrong/</guid>
      <description>&lt;p&gt;Lately photography (especially analog stuff) has taken a bit of a back seat.&lt;/p&gt;&#xA;&lt;p&gt;This week I decided to take the next step in the process and  have a crack at developing my own film.&lt;/p&gt;&#xA;&lt;p&gt;What follows is possibly the worst first attempt in the history of photography.&lt;/p&gt;&#xA;&lt;p&gt;I decided the best idea was to develop a roll that I had accidentally exposed by opening the back of the camera without knowing how much film had been exposed. I considered it basically ruined. So why not experiment with it.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Getting into Portraits with the Pentax 6x7</title>
      <link>https://jonoshields.com/post/more-pentax/</link>
      <pubDate>Tue, 23 Oct 2018 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/more-pentax/</guid>
      <description>&lt;p&gt;&lt;img src=&#34;https://jonoshields.com/photos/2018-10-23-1.jpg&#34; alt=&#34;A beige coloured cat hissing at me&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;We went to Stanley Bay in the evening to catch the sun setting behind the harbour bridge and as I was setting up this cat appeared.&lt;/p&gt;&#xA;&lt;p&gt;It would not stop hissing at me. It was seriously pissed off for some reason. And then when I got closer to take a photo it hissed loudly and started coming towards me.&lt;/p&gt;&#xA;&lt;p&gt;I wussed out and ran away, but managed to get this shot.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Early Morning Photography</title>
      <link>https://jonoshields.com/post/christchurch/</link>
      <pubDate>Mon, 01 Oct 2018 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/christchurch/</guid>
      <description>&lt;p&gt;I&amp;rsquo;m a morning a person. Every day while I have been in Christchurch for the last two weeks I have been up at dawn, exploring the city in the hours that I can before I have to go to work.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://jonoshields.com/photos/2018-10-01-1.jpg&#34; alt=&#34;1950&amp;rsquo;s Old Pickup truck&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;This old school 1950&amp;rsquo;s Studbaker sat on the side of the road.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://jonoshields.com/photos/2018-10-01-2.jpg&#34; alt=&#34;The Chrischurch Cathedral now in pieces after the earthquakes(black and white)&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://jonoshields.com/photos/2018-10-01-3.jpg&#34; alt=&#34;A long black with water on the side(black and white)&#34;&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Panoramas with the Pentax 6x7</title>
      <link>https://jonoshields.com/post/pentax/</link>
      <pubDate>Sat, 28 Jul 2018 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/pentax/</guid>
      <description>&lt;p&gt;Another new camera?&lt;/p&gt;&#xA;&lt;p&gt;Yep.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://jonoshields.com/photos/2018-07-28-1.jpg&#34; alt=&#34;Our messy apartment&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;This beast of a camera came with a 45mm f/4 lens and a panorama kit. Now I can do super wide shots like the above.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://jonoshields.com/photos/2018-07-28-2.jpg&#34; alt=&#34;Panorama of a woman running up the beach with a cloudy mountain in the background&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;The pano kit lets a roll of 35mm film cross the entirety of the 120 frame. I can get about 21 shots off the roll.&lt;/p&gt;</description>
    </item>
    <item>
      <title>The Yashica 35 M</title>
      <link>https://jonoshields.com/post/yashica/</link>
      <pubDate>Fri, 22 Jun 2018 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/yashica/</guid>
      <description>&lt;p&gt;Look at this beauty!&lt;/p&gt;&#xA;&lt;p&gt;The Yashica 35 M is now the oldest camera I own, from 1973 it&amp;rsquo;s more than twice as old as I am.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://jonoshields.com/photos/2018-06-22-1.jpg&#34; alt=&#34;Yashica 35 M, a bit dusty&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;It shows its age in how you use it. It has a lightmeter on the front that I thought was a flash hahaha. It uses Selenium, a chemical, to measure the light rather than the more modern silicon semiconductors.&lt;/p&gt;</description>
    </item>
    <item>
      <title>A Photographer&#39;s Perspective</title>
      <link>https://jonoshields.com/post/perspective/</link>
      <pubDate>Tue, 29 May 2018 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/perspective/</guid>
      <description>&lt;p&gt;My camera is always by my side these days. And I&amp;rsquo;m always on the lookout for interesting ways to look at things. The same things I look at everyday.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://jonoshields.com/photos/2018-05-29-1.jpg&#34; alt=&#34;A barista makes espresso shot from directly above&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;The photo above is from a cafe called Rabbit. The main seating area is lofted above the kitchen, but I never once had a reason to lean over the edge and have a look down.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Leading Lines</title>
      <link>https://jonoshields.com/post/leading-lines/</link>
      <pubDate>Wed, 23 May 2018 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/leading-lines/</guid>
      <description>&lt;p&gt;I have been watching more Youtube videos because thats how I learn.&lt;/p&gt;&#xA;&lt;p&gt;What&amp;rsquo;s this? Leading lines? Make your landscape shots interesting!&lt;/p&gt;&#xA;&lt;p&gt;Yes please.&lt;/p&gt;&#xA;&lt;p&gt;The idea is that you create your composition so that elements flow on from each other and draw the observers eyes into the scene.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://jonoshields.com/photos/2018-05-23-1.jpg&#34; alt=&#34;A path weaving through a forest, trees either side and a clearing in the distance&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;In the example above you can see how the path curves into the distance. It brings attention to the clearing.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Shooting Black &amp; White</title>
      <link>https://jonoshields.com/post/black-and-white/</link>
      <pubDate>Wed, 16 May 2018 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/black-and-white/</guid>
      <description>&lt;p&gt;\&lt;/p&gt;&#xA;&lt;p&gt;I decided to have a jam with black &amp;amp; white (b&amp;amp;w) film once I fixed up the light leak.&lt;/p&gt;&#xA;&lt;p&gt;Lots of research later and I discovered that most people recommend overexposing the film by a stop. This adds contrast to the image (we will learn why they need the extra contrast later).&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://jonoshields.com/photos/2018-05-16-1.jpg&#34; alt=&#34;A woman in a cafe&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;This first shot came out awesome. I love the expression on my mum&amp;rsquo;s face as she stares into the distance waiting for that first cup of coffee to arrive.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Reversing Negatives</title>
      <link>https://jonoshields.com/post/negatives/</link>
      <pubDate>Mon, 14 May 2018 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/negatives/</guid>
      <description>&lt;p&gt;I have been going through my photos and found one that missed the scanner. Why not try to scan it myself?&lt;/p&gt;&#xA;&lt;p&gt;![Photographic Negative of a car in an alleyway](/photos/2018-05-14-1.jpg&amp;quot;, &amp;ldquo;, &amp;ldquo;90vw&amp;rdquo; &amp;ldquo;%}&lt;/p&gt;&#xA;&lt;p&gt;I borrowed a DSLR and took the best shitty photo I could.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://jonoshields.com/photos/2018-05-14-2.jpg&#34; alt=&#34;Photographic Negative of a car in an alleyway, now with less brown because the colour has been corrected&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Then using photoshop I used the Eyedropper tool inside Image &amp;gt; Adjustments &amp;gt; Levels to set the white point and the black point of the image.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Light Leak</title>
      <link>https://jonoshields.com/post/light-leak/</link>
      <pubDate>Tue, 08 May 2018 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/light-leak/</guid>
      <description>&lt;p&gt;&lt;img src=&#34;https://jonoshields.com/photos/2018-05-08-1.jpg&#34; alt=&#34;Woman with orange streak across her face&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;It turns out the camera I purchased has a light leak😔. Which means that all the photos I took in Japan look like this. I mean it&amp;rsquo;s pretty cool, but got a bit frustrating looking through 72 of them.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://jonoshields.com/photos/2018-05-08-2.jpg&#34; alt=&#34;Woman in black and white&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;m not pro enough at photoshop to fix this (yet).&lt;/p&gt;&#xA;&lt;p&gt;But I figured out how to salvage some of the photos. First by desaturating and then playing with the brightness &amp;amp; contrast&lt;/p&gt;</description>
    </item>
    <item>
      <title>Day 1</title>
      <link>https://jonoshields.com/post/day-1/</link>
      <pubDate>Sun, 22 Apr 2018 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/day-1/</guid>
      <description>&lt;p&gt;&lt;img src=&#34;https://jonoshields.com/photos/2018-04-22.jpg&#34; alt=&#34;Canon AE-1 with 35mm f/3.5&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;I just bought my first serious camera today in Tokyo, Japan. It&amp;rsquo;s a Canon AE-1 film camera. Gorgeous. I have been eyeing up film cameras for the last couple of months.&lt;/p&gt;&#xA;&lt;p&gt;I often see something cool on reddit and think to myself. Wow. I want to do that. Then I go through a phase of learning. Handwriting, 3D printers, drones, sewing and more&amp;hellip;&lt;/p&gt;&#xA;&lt;p&gt;This time film cameras. I think the physicalness of it attracted me, the way you create a physical output rather than merely flipping some bits on an SD Card.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Procedurally Generated Scenes</title>
      <link>https://jonoshields.com/post/creating-procedurally-generated-scenes/</link>
      <pubDate>Wed, 29 Mar 2017 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/creating-procedurally-generated-scenes/</guid>
      <description>&lt;p&gt;This week I saw a totally rad twitter bot that posts procedurally generates mountain skylines.&lt;/p&gt;&#xA;&lt;blockquote class=&#34;twitter-tweet&#34;&gt;&lt;p lang=&#34;und&#34; dir=&#34;ltr&#34;&gt;2.47345°N, 99.24996°E &lt;a href=&#34;https://twitter.com/hashtag/generative?src=hash&amp;amp;ref_src=twsrc%5Etfw&#34;&gt;#generative&lt;/a&gt; &lt;a href=&#34;https://twitter.com/hashtag/procedural?src=hash&amp;amp;ref_src=twsrc%5Etfw&#34;&gt;#procedural&lt;/a&gt; &lt;img src=&#34;https://jonoshields.com/img/example.jpg&#34;/&gt;&lt;a href=&#34;https://twitter.com/hashtag/paperjs?src=hash&amp;amp;ref_src=twsrc%5Etfw&#34;&gt;#paperjs&lt;/a&gt; &lt;a href=&#34;https://t.co/wuFp32ye1h&#34;&gt;pic.twitter.com/wuFp32ye1h&lt;/a&gt;&lt;/p&gt;&amp;mdash; muted mountains (@muted_mountains) &lt;a href=&#34;https://twitter.com/muted_mountains/status/845908222389043201?ref_src=twsrc%5Etfw&#34;&gt;March 26, 2017&lt;/a&gt;&lt;/blockquote&gt; &lt;script async src=&#34;https://platform.twitter.com/widgets.js&#34; charset=&#34;utf-8&#34;&gt;&lt;/script&gt; &#xA;&lt;p&gt;I saw this and was jealous, mainly because last year I tried to make something similar that ended up looking like this&amp;hellip;&lt;/p&gt;&#xA;&lt;figure data-orig-width=&#34;500&#34; data-orig-height=&#34;281&#34; class=&#34;tmblr-full&#34;&gt;&lt;img src=&#34;https://jonoshields.com/img/tumblr_inline_o8y3ibSfL61qil7jn_500.gif&#34; alt=&#34;image&#34; data-orig-width=&#34;500&#34; data-orig-height=&#34;281&#34;/&gt;&lt;/figure&gt;&#xA;&lt;p&gt;Mine is nice and animated but is not as nice as &lt;a href=&#34;http://twitter.com/muted_mountains&#34;&gt;@muted_mountains&lt;/a&gt; creations.&lt;/p&gt;&#xA;&lt;p&gt;So I figured that I would go ahead and revamp mine to look a bit nicer.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Generating Mountains</title>
      <link>https://jonoshields.com/post/generating-mountains-with-cellular-automata/</link>
      <pubDate>Tue, 29 Nov 2016 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/generating-mountains-with-cellular-automata/</guid>
      <description>&lt;p&gt;Welcome to another “Is Jono obsessed with procedural generation?”.&lt;/p&gt;&lt;figure data-orig-width=&#34;1276&#34; data-orig-height=&#34;680&#34; class=&#34;tmblr-full&#34;&gt;&lt;img src=&#34;https://jonoshields.com/img/tumblr_inline_ohi26slNl31qil7jn_540.png&#34; alt=&#34;image&#34; data-orig-width=&#34;1276&#34; data-orig-height=&#34;680&#34;/&gt;&lt;/figure&gt;&lt;p&gt;This week I read a &lt;a href=&#34;https://blog.jrheard.com/procedural-dungeon-generation-cellular-automata&#34; target=&#34;_blank&#34;&gt;great article&lt;/a&gt; on HackerNews. This prompted me to create a procedural mountain generator based on Cellular Automata (CA), an algorithm in which a collection of cells change state over time based on their neighbouring cells.&lt;/p&gt;&#xA;&lt;p&gt;In CA a group of cells is iterated on over again and again, each time the cell’s state is determined by its neighbouring cells. &lt;/p&gt;</description>
    </item>
    <item>
      <title>Procedural Patterns</title>
      <link>https://jonoshields.com/post/procedural-patterns/</link>
      <pubDate>Fri, 25 Nov 2016 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/post/procedural-patterns/</guid>
      <description>&lt;p&gt; So a few weeks ago I saw a really great pattern on a van driving around.&lt;/p&gt;&lt;figure data-orig-width=&#34;540&#34; data-orig-height=&#34;298&#34; class=&#34;tmblr-full&#34; data-orig-src=&#34;https://68.media.tumblr.com/8d0a01d290b7c5a4b3f36526d36fb05d/tumblr_inline_oh6o06YVBk1qil7jn_540.png&#34;&gt;&lt;img src=&#34;https://jonoshields.com/img/tumblr_inline_oh6o3gj9l71qil7jn_540.png&#34; alt=&#34;image&#34; data-orig-width=&#34;540&#34; data-orig-height=&#34;298&#34; data-orig-src=&#34;https://68.media.tumblr.com/8d0a01d290b7c5a4b3f36526d36fb05d/tumblr_inline_oh6o06YVBk1qil7jn_540.png&#34;/&gt;&lt;/figure&gt;&lt;p&gt;I thought it was really cool, so today I sat down and made an algorithm to generate something similar.&lt;/p&gt;&lt;p&gt;Lets begin with the finished product.&lt;/p&gt;&lt;figure data-orig-width=&#34;540&#34; data-orig-height=&#34;282&#34; class=&#34;tmblr-full&#34; data-orig-src=&#34;https://68.media.tumblr.com/a1b31c3a381b4aa07f7c2597e2eca2d9/tumblr_inline_oh6o06yiUb1qil7jn_540.png&#34;&gt;&lt;img src=&#34;https://jonoshields.com/img/tumblr_inline_oh6o3gBYNB1qil7jn_540.png&#34; alt=&#34;image&#34; data-orig-width=&#34;540&#34; data-orig-height=&#34;282&#34; data-orig-src=&#34;https://68.media.tumblr.com/a1b31c3a381b4aa07f7c2597e2eca2d9/tumblr_inline_oh6o06yiUb1qil7jn_540.png&#34;/&gt;&lt;/figure&gt;&lt;p&gt;I started with perlin noise, this is for the smooth transitions and is actually the core of the pattern.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Contact</title>
      <link>https://jonoshields.com/contact/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/contact/</guid>
      <description>&lt;h1 id=&#34;need-something&#34;&gt;Need something?&lt;/h1&gt;&#xA;&lt;form class=&#39;contact-form&#39; name=&#34;contact&#34; method=&#34;POST&#34; action=&#34;https://jonoshields.com/thanks&#34; netlify&gt;&#xA;    &lt;div&gt;&#xA;        &lt;label for=&#39;email&#39;&gt;Email &lt;/label&gt;&#xA;        &lt;input id=&#39;email&#39; type=&#34;email&#34; name=&#34;email&#34; /&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;div&gt;&#xA;        &lt;label for=&#39;message&#39;&gt;Message &lt;/label&gt;&#xA;        &lt;textarea id=&#39;message&#39; name=&#34;message&#34;&gt;&lt;/textarea&gt;&#xA;    &lt;/div&gt;&#xA;    &lt;button type=&#34;submit&#34;&gt;send →&lt;/button&gt;&#xA;&lt;/form&gt;</description>
    </item>
    <item>
      <title>Contact</title>
      <link>https://jonoshields.com/thanks/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://jonoshields.com/thanks/</guid>
      <description>&lt;h1 id=&#34;need-something&#34;&gt;Need something?&lt;/h1&gt;&#xA;&lt;p&gt;Thanks for reaching out.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
