<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>frustration &amp;mdash; Lucas Haley</title>
    <link>https://www.lucashaley.com/tag:frustration</link>
    <description>Just a personal website.</description>
    <pubDate>Wed, 06 May 2026 13:13:29 +0000</pubDate>
    <image>
      <url>https://i.snap.as/ZE2GBGXr.ico</url>
      <title>frustration &amp;mdash; Lucas Haley</title>
      <link>https://www.lucashaley.com/tag:frustration</link>
    </image>
    <item>
      <title>Goodbye Forestry.io</title>
      <link>https://www.lucashaley.com/goodbye-forestry-io?pk_campaign=rss-feed</link>
      <description>&lt;![CDATA[Time to change again. Goodbye old posts.&#xA;###### #Frustration&#xA;&#xA;So once again I need to migrate this site, as Forestry.io is closing down.&#xA;&#xA;I&#39;m trying SiteLeaf right now.]]&gt;</description>
      <content:encoded><![CDATA[<h5 id="time-to-change-again-goodbye-old-posts" id="time-to-change-again-goodbye-old-posts">Time to change again. Goodbye old posts.</h5>

<h6 id="frustration" id="frustration"><a href="https://www.lucashaley.com/tag:Frustration" class="hashtag"><span>#</span><span class="p-category">Frustration</span></a></h6>

<p>So once again I need to migrate this site, as Forestry.io is closing down.</p>

<p>I&#39;m trying <a href="https://www.siteleaf.com/">SiteLeaf</a> right now.</p>
]]></content:encoded>
      <guid>https://www.lucashaley.com/goodbye-forestry-io</guid>
      <pubDate>Fri, 21 Apr 2023 03:00:00 +0000</pubDate>
    </item>
    <item>
      <title>Unity new input system</title>
      <link>https://www.lucashaley.com/unity-new-input-system?pk_campaign=rss-feed</link>
      <description>&lt;![CDATA[&#xA;&#xA;A personal note to remind myself&#xA;###### #Unity #Frustration #Programming&#xA;&#xA;I&#39;m a big fan of Unity. I&#39;ve been using it since version 2. I&#39;ve seen it go from small upstart, Mac-only, working with other small Mac apps like Cheetah3d, to a behemoth owning a huge chunk of the game dev base, and more. I still use it every day, and teach it in my courses.&#xA;&#xA;Over the last couple of years, however, I can&#39;t help but find the name of the company to be just, well… ironic. They&#39;re shooting in all sorts of directions, trying to be everything to everyone. More power to them, I guess -- except that the different tentacles of the company don&#39;t seem to be talking to each other very well. The new packages don&#39;t work well with each other. There&#39;s no unity of interface, or programmatic approach. It&#39;s really sad to me. And makes teaching it so much more difficult.&#xA;&#xA;Anyways, I&#39;ve been trying to pull apart the new Unity Input System. It&#39;s a catch-all system for collecting user input, from console controllers to touchscreen devices. As such, it&#39;s really abstracted out. Dredging through the demo samples, the code is inconsistent and leverages some pretty obtuse C# techniques, which of course makes it that much more difficult to grok and teach. Anyways. THE FUTURE&#xA;&#xA;Some notes for my own purposes&#xA;PointerManager collects raw input.&#xA;GestureController determines swipes and taps. It assigns its own OnPressed to PointerManager&#39;s Pressed method.&#xA;SwipingController parses gestures for functionality. It assigns its own OnSwiped to GestureController&#39;s Swiped method.]]&gt;</description>
      <content:encoded><![CDATA[<p><img src="https://i.snap.as/vQwNwjSQ.png" alt=""/></p>

<h5 id="a-personal-note-to-remind-myself" id="a-personal-note-to-remind-myself">A personal note to remind myself</h5>

<h6 id="unity-frustration-programming" id="unity-frustration-programming"><a href="https://www.lucashaley.com/tag:Unity" class="hashtag"><span>#</span><span class="p-category">Unity</span></a> <a href="https://www.lucashaley.com/tag:Frustration" class="hashtag"><span>#</span><span class="p-category">Frustration</span></a> <a href="https://www.lucashaley.com/tag:Programming" class="hashtag"><span>#</span><span class="p-category">Programming</span></a></h6>

<p>I&#39;m a big fan of Unity. I&#39;ve been using it since version 2. I&#39;ve seen it go from small upstart, Mac-only, working with other small Mac apps like <a href="http://cheetah3d.de/">Cheetah3d</a>, to a behemoth owning a huge chunk of the game dev base, and more. I still use it every day, and teach it in my courses.</p>

<p>Over the last couple of years, however, I can&#39;t help but find the name of the company to be just, well… <em>ironic</em>. They&#39;re shooting in all sorts of directions, trying to be everything to everyone. More power to them, I guess — except that the different tentacles of the company don&#39;t seem to be talking to each other very well. The new packages don&#39;t work well with each other. There&#39;s no unity of interface, or programmatic approach. It&#39;s really sad to me. And makes teaching it so much more difficult.</p>

<p>Anyways, I&#39;ve been trying to pull apart the new Unity <a href="https://blogs.unity3d.com/2019/10/14/introducing-the-new-input-system/">Input System</a>. It&#39;s a catch-all system for collecting user input, from console controllers to touchscreen devices. As such, it&#39;s really abstracted out. Dredging through the demo samples, the code is inconsistent and leverages some pretty obtuse C# techniques, which of course makes it that much more difficult to grok and teach. Anyways. THE FUTURE</p>

<h3 id="some-notes-for-my-own-purposes" id="some-notes-for-my-own-purposes">Some notes for my own purposes</h3>

<p><code>PointerManager</code> collects raw input.
<code>GestureController</code> determines swipes and taps. It assigns its own <code>OnPressed</code> to <code>PointerManager</code>&#39;s <code>Pressed</code> method.
<code>SwipingController</code> parses gestures for functionality. It assigns its own <code>OnSwiped</code> to <code>GestureController</code>&#39;s <code>Swiped</code> method.</p>
]]></content:encoded>
      <guid>https://www.lucashaley.com/unity-new-input-system</guid>
      <pubDate>Sat, 06 Jun 2020 03:00:00 +0000</pubDate>
    </item>
    <item>
      <title>By Other Means</title>
      <link>https://www.lucashaley.com/by-other-means?pk_campaign=rss-feed</link>
      <description>&lt;![CDATA[&#xA;&#xA;Code with your brain, not your fingers&#xA;###### #Frustration #Programming&#xA;&#xA;Sometimes I find myself beating my head against a particular programming problem, trying to force the code, and inevitably it means I&#39;m not thinking in the right way about it. It&#39;s like the Blaise Pascal quote:&#xA;&#xA;  I have made this longer than usual because I have not had time to make it shorter.&#xA;&#xA;In this most recent incident, I&#39;ve been trying to code seasonal cycles into a game, in which the various variables could be manipulated per-object, per-season, with custom seasons per-object. Don&#39;t ask. Anyways -- here I was, beating my head against modulos and switch cases for a day and a half. Then, on a rare run, I got far enough away from the computer to remember that Unity has AnimationCurves, which basically tick all the boxes could want. It took about 14 lines of code to get to work.&#xA;&#xA;It&#39;s just a nice reminder that sometimes the best coding is done with your brain, not your fingers, away from the computer.]]&gt;</description>
      <content:encoded><![CDATA[<p><img src="https://i.snap.as/lWejSgsP.png" alt=""/></p>

<h5 id="code-with-your-brain-not-your-fingers" id="code-with-your-brain-not-your-fingers">Code with your brain, not your fingers</h5>

<h6 id="frustration-programming" id="frustration-programming"><a href="https://www.lucashaley.com/tag:Frustration" class="hashtag"><span>#</span><span class="p-category">Frustration</span></a> <a href="https://www.lucashaley.com/tag:Programming" class="hashtag"><span>#</span><span class="p-category">Programming</span></a></h6>

<p>Sometimes I find myself beating my head against a particular programming problem, trying to force the code, and inevitably it means I&#39;m not thinking in the right way about it. It&#39;s like the Blaise Pascal quote:</p>

<blockquote><p>I have made this longer than usual because I have not had time to make it shorter.</p></blockquote>

<p>In this most recent incident, I&#39;ve been trying to code seasonal cycles into a game, in which the various variables could be manipulated per-object, per-season, with custom seasons per-object. Don&#39;t ask. Anyways — here I was, beating my head against modulos and switch cases for a day and a half. Then, on a rare run, I got far enough away from the computer to remember that Unity has <a href="https://docs.unity3d.com/ScriptReference/AnimationCurve.html">AnimationCurves</a>, which basically tick all the boxes could want. It took about 14 lines of code to get to work.</p>

<p><img src="https://i.snap.as/BZfIf2xm.png" alt=""/></p>

<p>It&#39;s just a nice reminder that sometimes the best coding is done with your brain, not your fingers, away from the computer.</p>
]]></content:encoded>
      <guid>https://www.lucashaley.com/by-other-means</guid>
      <pubDate>Sun, 26 Apr 2020 03:00:00 +0000</pubDate>
    </item>
  </channel>
</rss>