<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Godot on David Amador</title>
    <link>https://www.david-amador.com/tags/godot/</link>
    <description>Recent content in Godot on David Amador</description>
    <image>
      <title>David Amador</title>
      <url>https://www.david-amador.com/david-amador-pixel.png</url>
      <link>https://www.david-amador.com/david-amador-pixel.png</link>
    </image>
    <generator>Hugo -- 0.139.0</generator>
    <language>en</language>
    <lastBuildDate>Wed, 31 Dec 2025 08:15:00 +0000</lastBuildDate>
    <atom:link href="https://www.david-amador.com/tags/godot/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>2025 what a year huh?</title>
      <link>https://www.david-amador.com/2025/12/what-a-year-huh/</link>
      <pubDate>Wed, 31 Dec 2025 08:15:00 +0000</pubDate>
      <guid>https://www.david-amador.com/2025/12/what-a-year-huh/</guid>
      <description>&lt;h2 id=&#34;2025&#34;&gt;2025!&lt;/h2&gt;
&lt;p&gt;This has been, for the lack of a better expression, a stressful year. I still remember around end of 2024 many people saying &amp;ldquo;things will change next year&amp;rdquo;. And change they did.&lt;/p&gt;
&lt;p&gt;For me personally, professionally and overall worldwide events turned this year into a constant state of alert that made almost every week in sync with my weekly &lt;a href=&#34;https://bsky.app/profile/djlink.bsky.social/post/3ma6yoweqm22a&#34;&gt;&amp;ldquo;Cloud it&amp;rsquo;s Wednesday&amp;rdquo;&lt;/a&gt; post.&lt;/p&gt;
&lt;h2 id=&#34;intraconnected-world-&#34;&gt;Intraconnected-world 🕸️&lt;/h2&gt;
&lt;p&gt;Even if someone&amp;rsquo;s work doesn&amp;rsquo;t depend on using the internet, we can&amp;rsquo;t escape it these days.
The problem for me really is that &amp;ldquo;The Internet&amp;rdquo; as I&amp;rsquo;ve grown to know it, is for the most part gone.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<h2 id="2025">2025!</h2>
<p>This has been, for the lack of a better expression, a stressful year. I still remember around end of 2024 many people saying &ldquo;things will change next year&rdquo;. And change they did.</p>
<p>For me personally, professionally and overall worldwide events turned this year into a constant state of alert that made almost every week in sync with my weekly <a href="https://bsky.app/profile/djlink.bsky.social/post/3ma6yoweqm22a">&ldquo;Cloud it&rsquo;s Wednesday&rdquo;</a> post.</p>
<h2 id="intraconnected-world-">Intraconnected-world 🕸️</h2>
<p>Even if someone&rsquo;s work doesn&rsquo;t depend on using the internet, we can&rsquo;t escape it these days.
The problem for me really is that &ldquo;The Internet&rdquo; as I&rsquo;ve grown to know it, is for the most part gone.</p>
<p><img alt="IT Crowd this is the internet" loading="lazy" src="/wp-content/uploads/2025/12/it_crowd_this_is_the_internet.jpg"></p>
<p>It used to be like a library with a few rooms for leisure and games, but now it looks like a night-club with music blasting where everyone is shouting, trying to be louder than the rest, and relegated to the backrooms are a few of the places you might still like/identify with, the knowledge sections, non-fake-content and positive collaboration vibes, finding them is the problem. The majority of people are in the main hall now, if we only enter and stay, we are exposed to all the noise that comes with it, it&rsquo;s exhausting.</p>
<p><img alt="Tired computer anime" loading="lazy" src="/wp-content/uploads/2025/01/tired_computer_anime.gif"></p>
<p>It&rsquo;s been over a year since I mostly stopped using Twitter (yes I still call it that) as my main social network, for over a decade that was my daily website to post, check on mutuals, cool stuff being made and overall news. That&rsquo;s why I used it, I enjoyed going there, but that is no longer what I find when I open it, everyone is angry, trying to drive traffic through negativity which algorithms push even higher (although that can be said of most social networks).</p>
<p>Weirdly I thought it would be harder to leave Twitter, but it wasn&rsquo;t, once in a while I&rsquo;ll poke around, but I leave quickly.</p>
<p>I&rsquo;ve been using <a href="https://mastodon.gamedev.place/deck/@djlink">Mastodon</a> and <a href="https://bsky.app/profile/djlink.bsky.social">Bluesky</a> via cross-posting but it&rsquo;s not the same. Which in a way has been good, it&rsquo;s not like I felt pressure to post on Twitter, for me was always natural, but maybe I was too addicted to posting regardless. I spend less time on social networks now, which also helps with not feeling the urge to &ldquo;post that I&rsquo;m making cool stuff&rdquo;, and most times I can&rsquo;t talk about anything.</p>
<p><img alt="Break NDA" loading="lazy" src="/wp-content/uploads/2025/12/cant_break_nda_not_active.jpg"></p>
<p>There is contract work I&rsquo;ve been doing only for next year and maybe even beyond. In 2024 I was working on stuff that was only launched this year, an example is <a href="https://www.kinmoku.games/videoverse">VideoVerse</a>, which for several months I was in touch daily with Kinmoku so that we could try and get the console versions as polished (and as humanly fast) as possible, and it wasn&rsquo;t something that none of us was publicly talking about; dopamine of feedback when you are working on neat stuff via social network is cool but learning to live without it is quite liberating. A funny thing actually about this one, and why I mentioned it specifically, is by coincidence I ended up working on the same game as <a href="https://luiscorreia.pt/">Luis Correia</a>, which I&rsquo;ve known IRL for years, and for the longest time he didn&rsquo;t know as well xD.</p>
<h2 id="gaming-industry-">Gaming Industry 👾</h2>
<p>This year was the continuation of a cycle that started a couple years ago now, many layoffs, even in profitable studios, which while baffling is probably fuelled by other external factors like the rise of the <a href="#agents-era">&ldquo;agent era&rdquo;</a> and keeping stocks rising. This last one was something that I had a friend point out last year, usually layoffs in public companies are accompanied by stocks rising, investors predict a leaner company with less expenses. Ever since I was made aware of this I can&rsquo;t unsee it, it&rsquo;s true, it&rsquo;s a vicious cycle.</p>
<p>The problem with the big companies doing this is that it trickles down to mid and smaller companies and indie developers. Projects get cancelled, funds get pulled out of nowhere.</p>
<p>I was feeling this last year as several teams I was in touch with were having some projects cancelled, but by end of 2024 a bunch of stuff for Q1/Q2 2025 got cancelled; many teams do contact work for bigger studios, and those contracted studios sometimes outsource additional help from smaller external teams or individuals, and I&rsquo;m one of them, so I was seeing the cascading effect happen in real-time.</p>
<p><img alt="Office Space Is this good for the company" loading="lazy" src="/wp-content/uploads/2025/12/office_space_is_this_good_for_the_company.jpg"></p>
<p>A lot of times I am enquired about work time for a potential project (additional programming or port-work) months before, which gives a good idea of my runway of work, it shrank tremendously from &ldquo;I don&rsquo;t have time for the next 6 months&rdquo; to &ldquo;Oh wait I got next month with nothing&rdquo;.</p>
<p>This year I was in touch with many other devs I know in similar situations, questions from &ldquo;hey let me know if you find something that could be a good fit for me&rdquo;, or just generally enquiring if anyone had found anything, in hopes to get some good news that things could be improving for someone.</p>
<p>Luckily and better than most I guess, I was able to find some short-term things to minimize this and did a few random work tasks to fill that time the best possible. I even used some of it to start learning <a href="#unreal-engine">Unreal Engine</a>. Eventually found other stuff that wasn&rsquo;t just a couple weeks of work, so at the moment, while not super stable, (but this is a general thing for everyone), I have a couple things for the next months and through 2026 in my hands, fingers crossed nothing caves.</p>
<p>But it is a scary situation for everyone, and it reminds me that time back in 2009, the bank-house-finantial-market-bubble <a href="/2009/12/updates-about-different-pixel-and-sapphire/">where I found myself out of job</a>, I couldn&rsquo;t quite understand why back then (ah young and oblivious), but now it makes more sense, it wasn&rsquo;t just the company, but external stuff too.</p>
<p>But ending on a positive note, and even though according to Steam sheer amount of games launched the competition for &ldquo;digital shelf space&rdquo; is increasing at a rapid pace, it seems the % of studios finding success is growing, the problem really is on the other end it&rsquo;s a trail of destruction for people who can&rsquo;t make it.</p>
<h2 id="agents-era-">Agents-era 🤖</h2>
<p>A lot of digital ink has been used in the last few years, and especially this one, about &ldquo;AI&rdquo;, agents, large models, and the for better-or-worse, the digital revolution (?) with real life impact that is causing.</p>
<p><img alt="Agent Smith with Agents in The Matrix" loading="lazy" src="/wp-content/uploads/2025/12/agent_smith_with_agents_in_the_matrix.jpg"></p>
<p>We are all feeling it&rsquo;s impact, either directly, if someone is using it for work or got layoff due to the perceived reality that &ldquo;AI will replace everyone&rdquo;; or indirectly, subscriptions getting more expensive due to addition of AI features, regardless if you use them or not, Power plants being activated (and built) for the sole purpose of keeping up with increasing GPU demands, electricity prices likely increasing due to that, chips are getting more expensive, RAM prices are through the roof, and overall companies are becoming less and less interested in selling stuff at affordable prices to consumer market and instead profit from the increasingly demanding AI-Data-GPU-centres being used and built.</p>
<p>This stuff is happening, in real-time, regardless of what we think about it, my humble opinion here is that it will eventually land in the middle, it won&rsquo;t be a bubble that pops, but neither will it &ldquo;full replace everything and everyone and is so much better&rdquo;. There are benefits (just not the way it&rsquo;s being used) but it will also leave a trail of tech debt everywhere. Those who can position themselves in cleanup-complete-tasks-ai-is-not-good, might find a <a href="https://en.wikipedia.org/wiki/Blue_Ocean_Strategy">new blue ocean</a>. If in the future everyone uses AI, then that&rsquo;s the new average, regardless if it&rsquo;s much faster than today or not, and whom ever breaks from that, stands out.</p>
<h2 id="unreal-engine">Unreal Engine</h2>
<p>While searching for new contract work this year I found myself with a couple weeks of slower, even dead time, and while in insight <a href="#taking-vacations-time-or-lack-of">I should have taken some time off</a>, I decided to use the time to start learning Unreal Engine. I&rsquo;ve been thinking about it for several years, but never had the time, and the decision was helped by seeing lot of job postings for that, seems to be growing at a steady pace of demand, many studios shifting towards Unreal, even AAA that had built-in-house engines.</p>
<p>I had never even opened it, so this was the perfect opportunity for in 2-3 years I wouldn&rsquo;t be a complete noob, maybe even applying for such positions, so starting now with no expectations would be nice.</p>
<p>After talking with <a href="https://www.stevestreeting.com/">Steve Streeting</a> a bit, who I look up to when it comes to game engines (I mean he created <a href="https://www.ogre3d.org/">OGRE 3D</a> after all), I decided to enroll into an online course to get started faster. This was the first time I did this approach, I usually just start working on a new tool with small tests or a prototype and learn as I go, like <a href="/2025/04/switching-unity-to-godot-my-experience-so-far/">I did with Godot</a> (and still am working with it). But since my time was a bit more limited, and I did not wanted to start yet another prototype, I went the course route instead.</p>
<p>It&rsquo;s been a while since I coded so much in C++ and I forgot how both elegant and obnoxious this language can be, but the Unreal way of doing things is quite interesting. In a way there&rsquo;s a lot of the same things we have in Unity, linking stuff to inspector, a more editor-oriented approach, but I think the interesting part is there it kind of expects you to do things a certain way, instead of Godot/Unity more &ldquo;sandbox type&rdquo; approach.</p>
<p>The advantage I guess is that very rapidly we have stuff working, like character movement, collisions etc, which speeds up early development/learning.</p>
<p>I learned that Blueprints vs C++ is not necessarily &ldquo;one vs the other, but more &ldquo;there&rsquo;s a good time for either&rdquo;, and I&rsquo;m glad the course is approaching both, pros and cons of either in different situations.
I like it so far, even if the dev machine sys requirements are very high, it took SOOO much to install, create and build the first project that I thought &ldquo;omg my computer sucks&rdquo;. Luckily it gets faster after that, I&rsquo;m using Rider which also helps, Visual Studio has become quite a resource hog in last few years on my machine. It will take a bunch of time for me to learn how to be at ease in Unreal, and I would need a real project for this later, but I don&rsquo;t consider it wasted at the moment even if I&rsquo;m not using it now professionally (yet).</p>
<h2 id="personal-projects-">Personal projects 💻</h2>
<p>With all that&rsquo;s been happening this year, as much as it makes me sad, I had my pet prototypes mostly in &ldquo;pause&rdquo;, contract work taking priority, which really feels like the &ldquo;excuse&rdquo; these last few years, but &ldquo;life am I right?&rdquo;. And this year FINDING work was the main priority of course.</p>
<p>That doesn&rsquo;t mean I stopped but it&rsquo;s been harder to find time to work on things, <a href="/2025/09/the-degradation-of-our-attention-spans/#accountability">streaming helped</a> and I&rsquo;ve been happy working on that silly-duckuban-rogue-game (wonder if I can turn it into a real game!), but I&rsquo;ve slowed down quite a lot since I landed a few new work gigs.</p>
<p><img alt="Duck duck prototype" loading="lazy" src="/wp-content/uploads/2025/12/duck_prototype.jpg"></p>
<p>But even if I haven&rsquo;t launched nothing by myself (in quite a while!), I&rsquo;ve been working enough on Godot that I feel more comfortable in it, to the point that I&rsquo;ve started finding a few frustrating things (a conversation for another day), which means I&rsquo;m on the right track if I started scratching the surface, as nothing is perfect. Also I&rsquo;ve worked on many projects via contract work in last few years and as I mentioned before, that is very fulfilling on it&rsquo;s own.</p>
<h2 id="games-">Games 🎮</h2>
<p>What a year indeed. After years of speculation, Nintendo finally released the sequel to it&rsquo;s best selling console, and a numeric version, breaking their pattern. The Nintendo Switch 2, very similar, bigger size, better screen, better specs and backward compatible with Switch 1. Joy-cons can be used as a mouse, on all accounts a very safe and unlike-Nintendo bet.</p>
<p>I grabbed mine on launch with Mario Kart World bundle, unfortunately the digital version as it was cheaper than the €90 the physical version was being sold at launch.
The screen is great, obviously playing on a bigger screen is nice. The Joycons are also more comfortable to hold and play, I find myself playing with them instead of the Pro Controller (1st version) now even in TV mode.</p>
<table>
  <thead>
      <tr>
          <th><img alt="Nintendo Switch 2 Mario Kart World Bundle" loading="lazy" src="/wp-content/uploads/2025/12/nintendo_switch_2_mario_kart_bundle.jpg"></th>
          <th><img alt="Nintendo Switch 2 vs Nintendo Switch 1 screen size" loading="lazy" src="/wp-content/uploads/2025/12/nintendo_switch_2_vs_switch_1_size.jpg"></th>
      </tr>
  </thead>
  <tbody>
  </tbody>
</table>
<p>But as usual with Nintendo, it&rsquo;s about the games, not necessarily just the hardware.</p>
<h3 id="mario-kart-world">Mario Kart World</h3>
<p>A launch title, I&rsquo;ve played tons of hours of every entry (with exception of GBA and Wii version), and it&rsquo;s always a cool franchise to grab. The tracks are way bigger now, 24-players, and I loved exploring the world for giant creatures.</p>
<table>
  <thead>
      <tr>
          <th><img alt="Mario Kart World screenshot" loading="lazy" src="/wp-content/uploads/2025/12/mario_kart_world_02.jpg"></th>
          <th><img alt="Mario Kart World screenshot" loading="lazy" src="/wp-content/uploads/2025/12/mario_kart_world_03.jpg"></th>
      </tr>
  </thead>
  <tbody>
  </tbody>
</table>
<p>Unfortunately while fun at start, I bounced off quickly to my surprise. Once I played all the tracks, the online was not as fun to grab me, can&rsquo;t really put my finger on why. I guess the smaller more handcrafted levels of MK8 especially, were more fun. I do enjoy the new game modes, but the excitement ended quickly. Maybe I&rsquo;m too spoiled at this moment, or had high expectations.</p>
<h3 id="donkey-kong-">Donkey Kong 🍌</h3>
<p>On the other hand, to my surprise, especially because I&rsquo;ve never played any Donkey Kong games (a sin I know, hold on, don&rsquo;t leave yet), and I grabbed this mostly because &ldquo;might as well try to justify the Switch 2 purchase&rdquo;, I love this game, and OH DID does it justify the Switch 2 and more. It&rsquo;s a system seller in my opinion.</p>
<p>I ended up almost doing 100% of it, it&rsquo;s immensely fun, the dopamine hits of that game is almost perfection, I&rsquo;m so glad this is a pay only once title, it could be a problem.</p>
<p><img alt="Donkey Kong Bananza" loading="lazy" src="/wp-content/uploads/2025/12/donkey_kong_bananza_01.jpg"></p>
<h3 id="ball-x-pitt">Ball x Pitt</h3>
<p>I initially purchased Clair Obscur: Expedition 33  because everyone was talking about it, but did not enjoy the combat, the timing thing felt off, and while I enjoyed games like Mario &amp; Luigi: Superstar Saga for example, which also has that, this one would not click for me.</p>
<p>I was thinking about returning it, but a friend took it off my hands in exchange for a few digital indie games. I picked Ball X Pitt and Crow Country based on a quick search. Ball X Pitt was random chance, but it&rsquo;s great, arkanoid on steroids, seriously go play.</p>
<p><img alt="Ball X Pitt" loading="lazy" src="/wp-content/uploads/2025/12/ball_x_pitt.jpg"></p>
<h3 id="dragon-quest-i-hd-2d-remake">Dragon Quest I HD-2D Remake</h3>
<p>Somehow I never played any Dragon Quest game until now, but when this was announced, I saw this screenshot&hellip;</p>
<p><img alt="Dragon Quest I HD-2D Remake" loading="lazy" src="/wp-content/uploads/2025/12/dragon_quest_1_hd_2d_remake.jpg"></p>
<p>&hellip; and bought the game. It comes packed with Dragon Quest II Remake as well. It reminded me a lot of the vibe of Phantasy Star IV. DQ1 is simple, short and not very feature packed compared with modern RPG standards, however that&rsquo;s exactly why I enjoyed it a ton, it was simple to pick, play a few combats and grab later. The modern Remake features helps a ton, also the fact that we only play as 1 character through the entire game, it needs a lot more grinding with 1 char only but if you are bored you can toggle invincibility on for those tougher fights. If you never picked any of the DQ games, I highly recommend picking this one.</p>
<h3 id="metroid-prime-4">Metroid Prime 4</h3>
<table>
  <thead>
      <tr>
          <th><img alt="Metroid Prime 4" loading="lazy" src="/wp-content/uploads/2025/12/MetroidPrime4Beyond.jpg"></th>
          <th><img alt="Metroid Prime 4 Switch 2 Physical Edition" loading="lazy" src="/wp-content/uploads/2025/12/metroid_prime_4_switch_2_physical.jpg"></th>
      </tr>
  </thead>
  <tbody>
  </tbody>
</table>
<p>I haven&rsquo;t finished this one (~10h in) so it&rsquo;s hard to judge it, but I decided to talk about it just because it&rsquo;s been SO DAMN LONG we&rsquo;ve been waiting for this, this game has been though dev hell for sure. Visually the game is stunning, solid 60FPS gameplay, smooth as butter movement. Sadly I don&rsquo;t have a 120Hz 4k tv so I can&rsquo;t experience the full thing but the base version is already stunning. I&rsquo;m enjoying it so far, let&rsquo;s hope I don&rsquo;t end up leaving it pending for years (I still haven&rsquo;t completed Metroid Prime 1 Remaster).</p>
<h2 id="taking-vacations-time-or-lack-of-">Taking vacations-time or lack of 🏝️</h2>
<p>Something to do better next year, I need to take proper vacation time, once in a while through the year, not just a burst session when I&rsquo;m near a wall and power through the rest of the year. 2025 was almost work non-stop, I only took a few days of proper &ldquo;completely off work&rdquo; during my birthday in March, and it was also partly related to personal-emotional issues I wanted to process.
So I ended up spending 4-5 days trekking and climbing mountains in the snow, which I have say is pretty cool and really helps, because it clears your mind, it&rsquo;s just kind of dangerous at times to do this alone. Also was a neat way to find the Apple Watch trekking app when you go off route really helps backtracking, battery isn&rsquo;t that great though when that is on, but I&rsquo;ve had this device for 4 years or so with original battery still.</p>
<table>
  <thead>
      <tr>
          <th style="text-align: center"></th>
          <th style="text-align: center"></th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td style="text-align: center"><a href="/wp-content/uploads/2025/12/david_switzerland_trip_march_2025_08.jpg"><img alt="David in the snow mountains March 2025 picture 8" loading="lazy" src="/wp-content/uploads/2025/12/david_switzerland_trip_march_2025_08.jpg"></a></td>
          <td style="text-align: center"><a href="/wp-content/uploads/2025/12/david_switzerland_trip_march_2025_02.jpg"><img alt="David in the snow mountains March 2025 picture 2" loading="lazy" src="/wp-content/uploads/2025/12/david_switzerland_trip_march_2025_02.jpg"></a></td>
      </tr>
  </tbody>
</table>
<table>
  <thead>
      <tr>
          <th style="text-align: center"></th>
          <th style="text-align: center"></th>
          <th style="text-align: center"></th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td style="text-align: center"><a href="/wp-content/uploads/2025/12/david_switzerland_trip_march_2025_04.jpg"><img alt="David in the snow mountains March 2025 picture 4" loading="lazy" src="/wp-content/uploads/2025/12/david_switzerland_trip_march_2025_04.jpg"></a></td>
          <td style="text-align: center"><a href="/wp-content/uploads/2025/12/david_switzerland_trip_march_2025_07.jpg"><img alt="David in the snow mountains March 2025 picture 7" loading="lazy" src="/wp-content/uploads/2025/12/david_switzerland_trip_march_2025_07.jpg"></a></td>
          <td style="text-align: center"><a href="/wp-content/uploads/2025/12/david_switzerland_trip_march_2025_05.jpg"><img alt="David in the snow mountains March 2025 picture 5" loading="lazy" src="/wp-content/uploads/2025/12/david_switzerland_trip_march_2025_05.jpg"></a></td>
      </tr>
      <tr>
          <td style="text-align: center"><a href="/wp-content/uploads/2025/12/david_switzerland_trip_march_2025_01.jpg"><img alt="David in the snow mountains March 2025 picture 1" loading="lazy" src="/wp-content/uploads/2025/12/david_switzerland_trip_march_2025_01.jpg"></a></td>
          <td style="text-align: center"><a href="/wp-content/uploads/2025/12/david_switzerland_trip_march_2025_03.jpg"><img alt="David in the snow mountains March 2025 picture 3" loading="lazy" src="/wp-content/uploads/2025/12/david_switzerland_trip_march_2025_03.jpg"></a></td>
          <td style="text-align: center"><a href="/wp-content/uploads/2025/12/david_switzerland_trip_march_2025_06.jpg"><img alt="David in the snow mountains March 2025 picture 6" loading="lazy" src="/wp-content/uploads/2025/12/david_switzerland_trip_march_2025_06.jpg"></a></td>
      </tr>
  </tbody>
</table>
<p>I took tons of pictures and have a few videos that would be cool to share but it would be beside the point of the post.</p>
<h2 id="journaling-">Journaling 📝</h2>
<p>Here&rsquo;s a habit I picked up in 2025 that I&rsquo;m having fun with, I&rsquo;ve always have a physical notebook in my desk but it&rsquo;s usually for random misc work-phone-calls quick notes stuff I need to take note of, consider or just brainstorm. But I grabbed a specific notebook just for writing down tasks of todos on a daily basis, and what I managed to get done. It seems silly but it really helps putting things in perspective, also I always like to do my crappy-art-doodles on the sides.</p>
<table>
  <thead>
      <tr>
          <th style="text-align: center"></th>
          <th style="text-align: center"></th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td style="text-align: center"><img alt="Journaling" loading="lazy" src="/wp-content/uploads/2025/12/journaling_01.jpg"></td>
          <td style="text-align: center"><img alt="Journaling" loading="lazy" src="/wp-content/uploads/2025/12/journaling_02.jpg"></td>
      </tr>
  </tbody>
</table>
<h2 id="movies--tv-recommendations-">Movies &amp; TV Recommendations 🍿</h2>
<p>Had the chance to watch several Movies and TV Shows this year, leaving you with some of the stuff that stood out enough for me to recommend in no particular order.</p>
<table>
  <thead>
      <tr>
          <th style="text-align: center"></th>
          <th style="text-align: center"></th>
          <th style="text-align: center"></th>
          <th style="text-align: center"></th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td style="text-align: center"><img alt="The Pitt" loading="lazy" src="/wp-content/uploads/2025/12/the_pitt_poster.webp"></td>
          <td style="text-align: center"><img alt="Andor" loading="lazy" src="/wp-content/uploads/2025/12/andor_poster.jpg"></td>
          <td style="text-align: center"><img alt="Severance" loading="lazy" src="/wp-content/uploads/2025/12/severance_poster.jpg"></td>
          <td style="text-align: center"><img alt="Alien Earth" loading="lazy" src="/wp-content/uploads/2025/12/alien_earth_poster.webp"></td>
      </tr>
      <tr>
          <td style="text-align: center"><img alt="Weapons" loading="lazy" src="/wp-content/uploads/2025/12/weapons_poster.webp"></td>
          <td style="text-align: center"><img alt="F1" loading="lazy" src="/wp-content/uploads/2025/12/f1_poster.webp"></td>
          <td style="text-align: center"><img alt="Blackberry" loading="lazy" src="/wp-content/uploads/2025/12/blackberry_poster.webp"></td>
          <td style="text-align: center"><img alt="Until Dawn" loading="lazy" src="/wp-content/uploads/2025/12/until_dawn_poster.webp"></td>
      </tr>
      <tr>
          <td style="text-align: center"><img alt="She Rides Shotgun" loading="lazy" src="/wp-content/uploads/2025/12/she_rides_shotgun_poster.webp"></td>
          <td style="text-align: center"><img alt="Plur1bus" loading="lazy" src="/wp-content/uploads/2025/12/plur1bus_poster.jpg"></td>
          <td style="text-align: center"><img alt="The Running Man" loading="lazy" src="/wp-content/uploads/2025/12/the_running_man_poster.jpg"></td>
          <td style="text-align: center"><img alt="Ballerina" loading="lazy" src="/wp-content/uploads/2025/12/ballerina_poster.jpg"></td>
      </tr>
  </tbody>
</table>
<p>If you have anything you watched and want to recommend let me know.</p>
<h2 id="heres-to-2026">Here&rsquo;s to 2026!</h2>
<p>I don&rsquo;t have a crystal ball so I have no idea what&rsquo;s going to happen, and usually I&rsquo;m more of the &ldquo;plan for the worst, hope for the best&rdquo; kind of person. Majority of stuff happening in the world we have little to no control whatsoever. We can be optimistic but also realistic.
And if I look objectively to the things that most impacted me directly this year, I took action on some, and it helped, and the rest that pending because I have yet to take action on them.</p>
<p>Someone wiser than me once said that most of stress is not taking action when we can, not when things fail.</p>
<p>In case you made it this far, thanks for reading, I do really appreciate it, it took me a couple days of writing in smaller sessions, so glad to know it&rsquo;s not only posting to the void.</p>
<p>So if you had a stressful year, remember, this too shall pass.
Wish you a great 2026!</p>
<p><img alt="2026 Nintendo Shop Calendar" loading="lazy" src="/wp-content/uploads/2025/12/2026_nintendo_calendar.jpg"></p>
<hr>
]]></content:encoded>
    </item>
    <item>
      <title>Switching from Unity to Godot My Experience So Far</title>
      <link>https://www.david-amador.com/2025/04/switching-unity-to-godot-my-experience-so-far/</link>
      <pubDate>Sat, 26 Apr 2025 08:10:00 +0000</pubDate>
      <guid>https://www.david-amador.com/2025/04/switching-unity-to-godot-my-experience-so-far/</guid>
      <description>After years with Unity, I spent time exploring Godot 4. Here&amp;#39;s some of the things I liked, the things that frustrated me, and how the switch compares overall.</description>
      <content:encoded><![CDATA[<h3 id="why">Why?</h3>
<p>After several years working with Unity, both for personal and contract projects, I decided to finally properly test and use Godot.</p>
<p>I had been keeping an eye on it for a few years, but <a href="/2023/09/the-unity-enshittification-proprietary-tech-dangers-and-mostly-not-talking-about-what-im-doing/">Unity&rsquo;s controversial policy changes</a> in late 2023 were the final push I needed to start experimenting seriously with an alternative engine, even if I could use my custom engine.</p>
<p>I guess the sort of exploding new wave of devs switching to Godot made me even more tempted, adoption is rapidly expanding.</p>
<table>
  <thead>
      <tr>
          <th style="text-align: center"><img alt="Godot game jam usage 2023" loading="lazy" src="/wp-content/uploads/2025/04/godot_jams_use_2023.jpg"></th>
          <th style="text-align: center"><img alt="Godot game jam usage 2024" loading="lazy" src="/wp-content/uploads/2025/04/godot_jams_use_2024.jpg"></th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td style="text-align: center"><em>Godot game jam usage – 2023</em></td>
          <td style="text-align: center"><em>Godot game jam usage – 2024</em></td>
      </tr>
  </tbody>
</table>
<p>While I’m still using Unity for some projects, Godot has become my engine of choice for prototyping, personal games, and game jam-sized projects.</p>
<p>I&rsquo;m not an expert but I&rsquo;ve been using it for some time so I&rsquo;ll share my first impressions, the things I loved, the things that could be better, and how the overall experience compares to Unity.</p>
<p><img alt="Godot Editor Overview" loading="lazy" src="/wp-content/uploads/2025/04/godot_editor_overview.jpg"><br>
<em>Godot editor with a 3D demo prototype project loaded.</em></p>
<hr>
<h3 id="the-good-parts">The Good Parts</h3>
<p><strong>Node System</strong><br>
Godot’s node system is incredibly flexible. Each scene is built by composing nodes, and nodes themselves can be entire scenes. Coming from Unity’s prefab and component system, I found Godot’s approach simpler, the &ldquo;prefabs&rdquo; system feels more robust in Godot, it always felt a bit more fragile in Unity, like things could fall apart quicky, especially nested prefabs.</p>
<p><img alt="Create a new Godot Node window" loading="lazy" src="/wp-content/uploads/2025/04/godot_create_node_system.jpg"></p>
<p>At first, having only one script per node felt restrictive, I remember this was my first &ldquo;oh no, but why?&rdquo; moment, but quickly I realized it makes sense and it actually enforces a cleaner project structure and easier readability.</p>
<p><img alt="Example of a Godot Node setup" loading="lazy" src="/wp-content/uploads/2025/04/godot_node_system_example.jpg"></p>
<p>Making shaders inside the editor itself by code is super easy to iterate and see the results, it highlights syntax errors and it&rsquo;s well rounded and perfect for quick tweaking.</p>
<p><img alt="Doing a shader for a duck " loading="lazy" src="/wp-content/uploads/2025/04/godot_shader_example.jpg"></p>
<p><strong>UI Themes</strong><br>
Godot&rsquo;s UI system is a pleasure to work with once you understand how <strong>themes</strong> work.<br>
Instead of tweaking every button manually, you can design a style once and apply it across your project — similar to using CSS on a website.<br>
Compared to Unity’s sometimes fragile UI system, Godot’s feels more modern and consistent.</p>
<p><img alt="Godot UI Theme Example" loading="lazy" src="/wp-content/uploads/2025/04/godot_ui_theme_example.jpg"><br>
<em>Styling the UI globally using Godot&rsquo;s Theme system, almost kind of a &ldquo;CSS&rdquo; for games.</em></p>
<p><strong>Editor Scripting and GDScript</strong><br>
Before starting I knew we could code in GDScript, C# and C++.
Honestly I&rsquo;m growing tired of C#, but going C++, which I already use for my custom engine, felt like I was leaving a learning opportunity on the table. So I decided to go full GDScript and learn it, also there are way more tutorials and examples online using GDScript.</p>
<p>It&rsquo;s a Python like indentation system, so I&rsquo;m used to it from my Python scripts, the language is quite easy to understand and has several nice functionalities. We still have classes, enums, inheritance, arrays etc, you&rsquo;ll feel at home right away.</p>
<p>The signals are surprisingly boilerplate code free, so I&rsquo;ve embraced them for several things.</p>
<p>The ability to script inside the editor with GDScript makes many workflows very fast. GDScript itself is fun, clean, and powerful enough for full games. It feels like a sandbox-friendly language without giving up robustness.</p>
<p><strong>Mobile Export</strong><br>
I decided to export a mobile build of a prototype, exporting to iOS was surprisingly straightforward. It needs Xcode and setting up the usual certificates, because Godot produced a working Xcode project that we can then use to compile and deploy easily to the phone.<br>
Aside from a small hiccup with orientation settings, everything just worked on first build. Didn&rsquo;t yet tried Android but I&rsquo;m assuming a similar process.</p>
<p><strong>Debugging Tools</strong><br>
I&rsquo;ve been using Rider for several years for C# and C++, so I decided to use it as well here, even if coding and debugging inside Godot is very solid.<br>
But using Rider externally allows me some familiarity, but we can still use the built-in editor debugger, you can set breakpoints, watch variables, and step through code easily. It works as expected so far, no complaints there.</p>
<p><img alt="Debugging a Godot project" loading="lazy" src="/wp-content/uploads/2025/04/godot_debugging_example.jpg"></p>
<p>An awesome bonus: if you hit a C++ level error, Godot shows you the exact file and line number in the engine source — and you can jump straight to GitHub to inspect it.</p>
<p><img alt="CPP code jump from Godot Editor" loading="lazy" src="/wp-content/uploads/2025/04/godot_open_cpp_source_code_in_editor.jpg"></p>
<p><strong>Open Community</strong><br>
Whenever I found documentation gaps or bugs, reporting them was easy, and fixes often came quickly.  The Godot community is active, helpful, and genuinely open to feedback. Many times the only way I could get something to work was by seeing someone with same issue because Docs were lacking something.</p>
<p><img alt="Debugging a Godot project " loading="lazy" src="/wp-content/uploads/2025/04/godot_community_1.jpg"></p>
<hr>
<h3 id="the-rougher-edges">The Rougher Edges</h3>
<p><strong>Editor UX Inconsistencies</strong><br>
While the editor is powerful, UX polish is still lacking compared to Unity or Unreal.  Some buttons don&rsquo;t look clickable, tabbing between elements can behave inconsistently across tools, and finding certain actions (like creating new animations) isn’t always intuitive.</p>
<table>
  <thead>
      <tr>
          <th style="text-align: center"><img alt="Godot Animation Editor Confusing Button" loading="lazy" src="/wp-content/uploads/2025/04/godot_animation_button_1.jpg"></th>
          <th style="text-align: center"><img alt="Godot Animation Editor Confusing Button" loading="lazy" src="/wp-content/uploads/2025/04/godot_animation_button_2.jpg"></th>
      </tr>
  </thead>
  <tbody>
  </tbody>
</table>
<p>*Some buttons in the editor can be hard to spot at first, like adding a new animation. &ldquo;Animation&rdquo; doesn&rsquo;t look like a button at first glance *</p>
<p><img alt="Godot size before position in UI " loading="lazy" src="/wp-content/uploads/2025/04/godot_size_before_position.jpg"><br>
<em>Control Nodes show the Size before position, contrary to the other nodes, which doesn&rsquo;t make much sense to me, <a href="https://github.com/godotengine/godot/pull/100169">I even opened a PR for this</a>, it&rsquo;s under consideration.</em></p>
<p><strong>TileMap Workflow</strong><br>
Working with TileMaps can be a bit frustrating. I found myself often jumping between multiple tabs just to tweak small things. It feels fragmented compared to Unity’s more consolidated tile setup.</p>
<p><strong>Atlas System</strong><br>
Managing sprite Atlases in Godot isn’t as flexible as Unity’s system. We can’t name regions (afaik), and the workflow feels a bit clunky compared to Unity’s Sprite Atlas features. All of this can be improved but at the moment it feels a bit more in the way, and I never felt this friction when using Unity.</p>
<p><strong>Version Mismatches and Learning Curve</strong><br>
Because Godot 4 changed many APIs from version 3, a lot of web tutorials and resources are slightly outdated.  The official documentation is good, but sometimes finding clear differences between versions required digging through forums or Reddit posts. The good news really is that if you take the time to make a PR on Github or ask for someone to fix odds are it will be done rather quickly.</p>
<p><strong>GDScript Indentation</strong><br>
While GDScript is fun, I’m personally not a fan of Python-style tab-based indentation.<br>
I would have preferred curly braces <code>{}</code> for clarity, but that’s more a personal preference than a true flaw.</p>
<hr>
<h3 id="iteration">Iteration</h3>
<p>Godot is rapidly evolving, last month Godot 4.4 was released with tons of new features,
from performance boost, a built-in game window for running the games inside the editor, typed dictionaries, physics improvements, and tons of more things.</p>
<p>This is great, but also means some things might evolve quickly or get deprecated as the engine improves. I think we&rsquo;re on the stage that Unity was around version 4-5-2017 transitions. Not saying this as a bad thing, just that some new features might mean something else we were relying has to go.
One thing I noticed is that they overhauled the tilemap system in favour of a layered one, so the older one is still around but not recommended; and it brought me memories of Unity getting rid of the old Particle System when they got a new one. Again, the right choices, but with some pains along the way.</p>
<p>You can read all the new features on Godot 4.4 here: <a href="https://godotengine.org/releases/4.4/">https://godotengine.org/releases/4.4/</a></p>
<h3 id="final-thoughts">Final Thoughts</h3>
<p>Despite the small rough edges, my overall experience with Godot so far has been <strong>very positive</strong>.  It’s an incredibly powerful, lightweight engine that has a nice balance between features and flexibility, encourages a clean structure, and is backed by a great community.</p>
<p>If you’re coming from Unity and considering Godot, expect a bit of a learning curve — especially with editor quirks and differences in workflow. But once you get past the initial bumps, it’s really nice.</p>
<p>I would HIGHLY recommend learning GDScript instead of &ldquo;oh but I know C# already&rdquo;.</p>
<p>I’m excited to keep building with Godot, and I’m looking forward to seeing how the engine grows even stronger in the next few years.</p>
<p>Bonus tip I read somewhere, if something isn&rsquo;t working, and you feel like it should, restart Godot or clean the autogenerated .godot folder, and odds are it will work properly now, especially GDScript stuff tends to be &ldquo;confused&rdquo; if you use external tools.</p>
<p>P.S.: If you also recently switched to Godot, I&rsquo;d love to hear your experience too. Feel free to comment or message me.</p>
<hr>
<p>See you in the next post!</p>
]]></content:encoded>
    </item>
    <item>
      <title>2024 wrap-up, 2025 the year of Godot</title>
      <link>https://www.david-amador.com/2025/01/2024-wrap-up-2025-the-year-of-godot/</link>
      <pubDate>Wed, 01 Jan 2025 08:32:55 +0000</pubDate>
      <guid>https://www.david-amador.com/2025/01/2024-wrap-up-2025-the-year-of-godot/</guid>
      <description>&lt;h1 id=&#34;-2024&#34;&gt;🕛 2024&lt;/h1&gt;
&lt;p&gt;I initially intended to do a &amp;ldquo;end of year&amp;rdquo; post BEFORE the EOY talking about some stuff, but that never happened because work and other things kept getting in the way. 2024 was a weird year, from work, to personal, to world, to finances, to game dev, &lt;em&gt;&lt;strong&gt;to everything really&lt;/strong&gt;&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;I just feel tired honestly, that&amp;rsquo;s the best way I can describe 2024!&lt;/p&gt;
&lt;p&gt;&lt;img alt=&#34;Tired Computer Anime&#34; loading=&#34;lazy&#34; src=&#34;https://www.david-amador.com/wp-content/uploads/2025/01/tired_computer_anime.gif&#34;&gt;&lt;/p&gt;
&lt;p&gt;Ok that started in a weird way, but allow me some latitude here&amp;hellip;
The world is in a weird state, economy, layoffs everywhere, the game dev industry in a very fragile state; and suddenly every company is betting all their chips on &amp;ldquo;AAAAeee IIIIII&amp;rdquo;, politics seem wacko, climate change, social networks going bananas, overall everyone trying to find their feet.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<h1 id="-2024">🕛 2024</h1>
<p>I initially intended to do a &ldquo;end of year&rdquo; post BEFORE the EOY talking about some stuff, but that never happened because work and other things kept getting in the way. 2024 was a weird year, from work, to personal, to world, to finances, to game dev, <em><strong>to everything really</strong></em>.</p>
<p>I just feel tired honestly, that&rsquo;s the best way I can describe 2024!</p>
<p><img alt="Tired Computer Anime" loading="lazy" src="/wp-content/uploads/2025/01/tired_computer_anime.gif"></p>
<p>Ok that started in a weird way, but allow me some latitude here&hellip;
The world is in a weird state, economy, layoffs everywhere, the game dev industry in a very fragile state; and suddenly every company is betting all their chips on &ldquo;AAAAeee IIIIII&rdquo;, politics seem wacko, climate change, social networks going bananas, overall everyone trying to find their feet.</p>
<p>I&rsquo;ve been trying to take the opportunity of Twitter going bananas to spend less time on social networks, it&rsquo;s just doom scrolling these days, but it propagated to every other place.</p>
<h2 id="games-and-such">Games and such</h2>
<p>I haven&rsquo;t played many video games this year, I&rsquo;m still trying to finish Metroid Prime Remaster, I&rsquo;m SOOO STUCK on Phazon mines, I really want to finish this one as I&rsquo;m enjoying the game a lot, and I understand why it was so highly rated back then.</p>
<p><img alt="Stuck on Phazon Mines" loading="lazy" src="/wp-content/uploads/2025/01/stuck_on_phazon_mines.png"></p>
<p>I got the new Legend of Zelda Echoes of Wisdom, and actually completed it, almost couldn&rsquo;t put it down until I did, it&rsquo;s such a nice game with tons of great ideas and mechanics, a merge of Breath of the Wild and Tears of Kingdom with Link Between Worlds. I really think this brings top-down Zeldas to a whole new level, can&rsquo;t wait for a new one.</p>
<table>
  <thead>
      <tr>
          <th><a href="/wp-content/uploads/2025/01/zelda_echoes_1.jpeg"><img alt="Zelda Echoes of Wisdom" loading="lazy" src="/wp-content/uploads/2025/01/zelda_echoes_1.jpeg"></a></th>
          <th><a href="/wp-content/uploads/2025/01/zelda_echoes_4.jpeg"><img alt="Zelda Echoes of Wisdom" loading="lazy" src="/wp-content/uploads/2025/01/zelda_echoes_4.jpeg"></a></th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/wp-content/uploads/2025/01/zelda_echoes_3.jpeg"><img alt="Zelda Echoes of Wisdom" loading="lazy" src="/wp-content/uploads/2025/01/zelda_echoes_3.jpeg"></a></td>
          <td><a href="/wp-content/uploads/2025/01/zelda_echoes_2.jpeg"><img alt="Zelda Echoes of Wisdom" loading="lazy" src="/wp-content/uploads/2025/01/zelda_echoes_2.jpeg"></a></td>
      </tr>
  </tbody>
</table>
<hr>
<p>I&rsquo;ve also played a bit of board games. For some reason I always assumed most board games were multiplayer, which would be harder for me, but there&rsquo;s actually tons of neat solo ones now, a booming market it seems, so I started playing some Arkham Horror, which I can play solo, and it&rsquo;s cool, even if I lose a lot.</p>
<p><img alt="Arkham Horror Card Game" loading="lazy" src="/wp-content/uploads/2025/01/arkham_horror_card_game_box.jpeg"></p>
<p>And just a couple days ago I decided to grab Carcassonne from my desk (been there a while unboxed) and take to play during the Xmas days break, it&rsquo;s a lot of fun to play with other people.</p>
<p><img alt="Carcassonne" loading="lazy" src="/wp-content/uploads/2025/01/carcassonne.jpg"></p>
<h1 id="travel">travel</h1>
<p>Every year I keep saying I should travel/rest more, and I haven&rsquo;t been taking a lot of free time/vacations, but I did manage to take a 6 days-vacation and a flight to Cabo Verde (they have low cost routes now). I visited Maio and Santiago islands, gorgeous landscapes and ocean views. To sum it up, within 2 hours of landing I got a rusty nail rip through my shoes (so lucky I hadn&rsquo;t changed into beach sandals yet), I also saw a dude accidentally fishing a baby Hammerhead shark, did some snorkeling and had a local convince me to try fishing, which I haven&rsquo;t done since my dad took me once as a kid, learned how to play an old board game with some locals, it was fun.</p>
<p>Here&rsquo;s some dumb photos/videos because my blog is like a personal journal :)</p>
<table>
  <thead>
      <tr>
          <th><a href="/wp-content/uploads/2025/01/tarrafal_beach.jpg"><img alt="Tarrafal Beach" loading="lazy" src="/wp-content/uploads/2025/01/tarrafal_beach.jpg"></a></th>
          <th><a href="/wp-content/uploads/2025/01/cabo_verde.jpg"><img alt="Tarrafal Beach" loading="lazy" src="/wp-content/uploads/2025/01/cabo_verde.jpg"></a></th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><video width="100%" controls>
    <source src="/wp-content/uploads/2025/01/david_attempt_fishing.mp4" type="video/mp4">
    Your browser does not support the video tag.
</video>
</td>
          <td><a href="/wp-content/uploads/2025/01/tarrafal_sign_david.jpg"><img alt="David near Tarrafal Sign" loading="lazy" src="/wp-content/uploads/2025/01/tarrafal_sign_david.jpg"></a> <video width="100%" controls>
    <source src="/wp-content/uploads/2025/01/dumb_stuff.mp4" type="video/mp4">
    Your browser does not support the video tag.
</video>
</td>
      </tr>
  </tbody>
</table>
<p>Sorry for video quality, in an attempt of not having tons of MBs on this page, and I really don&rsquo;t want to embed this on YouTube, so let me know if you know a better alternative to have videos on a blog post that &ldquo;makes sense&rdquo;.</p>
<h1 id="age">age</h1>
<p>I turned 40 this past year, yeah that&rsquo;s right, time does fly. Now this is not something that I usually discuss but the turn of a new decade does make you pause for a second, life comes fast. What I notice so far is most of the same things at early 30&rsquo;s but more, your body gives you more signs that you really need to pay attention to your health, it&rsquo;s not a &ldquo;power it through&rdquo; anymore, it&rsquo;s a &ldquo;maintenance mode&rdquo; now, whatever bad decisions you made in the past might show up now, any good ones you&rsquo;ll start to appreciate. Honestly my major problem has always been overworking myself and maybe not that good eating habits, that&rsquo;s the bad. On the good side, ever since I got a health scare right before my 30th birthday, I&rsquo;ve tried to be a bit more active (thanks Fitbit!) so in the past 10 years I&rsquo;ve actually managed to get into better physical shape, I do feel I&rsquo;m probably more in shape now than in my 20s and 30s;  I just can&rsquo;t do as much as 10 years ago, there&rsquo;s limits, we just have to work with them and move forward.
<img alt="Indiana Jones It&rsquo;s not the Years, It&rsquo;s the Mileage" loading="lazy" src="/wp-content/uploads/2025/01/indiana_jones_its_not_the_years_its_the_mileage.jpg"></p>
<h1 id="gamedev">gamedev</h1>
<p>It&rsquo;s been forever since I launched a game of my own even if I&rsquo;ve helped with dozens of games (porting) in the last few years, but it is what it is. It&rsquo;s hard to mix all in, and I can&rsquo;t do the whole &ldquo;quitting a job, work on a game for a couple months, launch it and get a new job after&rdquo; anymore, so development just takes &raquo;forever&laquo;  It&rsquo;s one of the reasons I don&rsquo;t even talk about what I&rsquo;m attempting to work on, I have no idea of deadlines because I can&rsquo;t probably do both contract deadlines + my own, which is both a blessing and a curse. It&rsquo;s not bad, but I still have a few more dumb games I want to work on, and release, I just feel like a bit of a fraud I haven&rsquo;t been able to after wrapping up QoD development, but I think that project also left me some burnout, it was ~7years of dev, porting and updates after all.</p>
<p>But for things we can control  a bit better, and while I like to tinker with my own <a href="/tags/basalt/">game framework</a>, it would be a mistake not to look into what&rsquo;s available in terms of Game Engines. I&rsquo;ve done a lot of contract work in Unity and GameMaker 2, including some personal stuff, but after what <a href="/2023/09/unity-enshittification-round-2-moving-on-to-custom-tech/">Unity pulled</a> (over a year now), using Unity now leaves a sour taste, it&rsquo;s not the same anymore.</p>
<hr>
<h1 id="godot">Godot</h1>
<p><a href="https://godotengine.org/">Godot</a> has been around since 2014, and gained popularity over the years, and like what happened with Mastodon when Twitter died (yes it&rsquo;s dead, old twitter is gone, X is crap), Godot exploded once Unity did what they did.
People became aware there was an open-source alternative, stable and ready to use, not controlled by maniac shareholders just trying to profit even if they had to fire everyone in the company.</p>
<p>Over the years I had read some stuff and devs talking about it, but never found the time, until a couple weeks ago.</p>
<p>So I downloaded, unzip it, ran the executable, and &hellip; wait it booted the entire Editor within a couple seconds &hellip;</p>
<p><img alt="Godot Editor" loading="lazy" src="/wp-content/uploads/2025/01/godot_editor_new_scene.png"></p>
<p>My brain thought:</p>
<blockquote>
<p>wtf there&rsquo;s no installer :O</p>
</blockquote>
<p>Yes, it just boots, a whole engine in a 250mb executable.</p>
<p><strong>Choice of Language</strong></p>
<p>Godot allows a couple of languages, but there seems to be 2 main ones, and I was a bit on the fence if I should go with C# or GDScript, Godot&rsquo;s custom scripting language. So I decided to talk a bit with <a href="https://iohanna.itch.io/">Joana</a> about the pros and cons, she had also recently started using Godot herself. She went with C#, and seems like most of her Unity code worked fine, which is great.
But I decided to just dive into GDScript, a clean slate with &ldquo;no baggage&rdquo; is something that I enjoy from time to time, the idea of learning something new without trying to make existing things work sounded exciting; and I also remember the lessons from GameMaker 2 GML, at first there was friction, but there are some valid choices/ideals there that I sometimes think others could copy. Also if you want to use C#, for now, you need a dedicated Editor build and there&rsquo;s no support for Web Exports (this will change in the future).</p>
<p><a href="https://docs.godotengine.org/en/stable/tutorials/scripting/gdscript/gdscript_basics.html">GDScript</a> is at first glance very Python like, but it&rsquo;s mostly due to it&rsquo;s indentation-based syntax</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-python" data-lang="python"><span class="line"><span class="cl"><span class="n">var</span> <span class="n">a</span> <span class="o">=</span> <span class="mi">5</span>
</span></span><span class="line"><span class="cl"><span class="n">var</span> <span class="n">s</span> <span class="o">=</span> <span class="s2">&#34;Hello&#34;</span>
</span></span><span class="line"><span class="cl"><span class="n">var</span> <span class="n">arr</span> <span class="o">=</span> <span class="p">[</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">]</span>
</span></span><span class="line"><span class="cl"><span class="n">var</span> <span class="nb">dict</span> <span class="o">=</span> <span class="p">{</span><span class="s2">&#34;key&#34;</span><span class="p">:</span> <span class="s2">&#34;value&#34;</span><span class="p">,</span> <span class="mi">2</span><span class="p">:</span> <span class="mi">3</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="n">var</span> <span class="n">typed_var</span><span class="p">:</span> <span class="nb">int</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="n">enum</span> <span class="p">{</span><span class="n">UNIT_NEUTRAL</span><span class="p">,</span> <span class="n">UNIT_ENEMY</span><span class="p">,</span> <span class="n">UNIT_ALLY</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="n">enum</span> <span class="n">Named</span> <span class="p">{</span><span class="n">THING_1</span><span class="p">,</span> <span class="n">THING_2</span><span class="p">,</span> <span class="n">ANOTHER_THING</span> <span class="o">=</span> <span class="o">-</span><span class="mi">1</span><span class="p">}</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="n">var</span> <span class="n">v2</span> <span class="o">=</span> <span class="n">Vector2</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="n">func</span> <span class="n">something</span><span class="p">(</span><span class="n">p1</span><span class="p">,</span> <span class="n">p2</span><span class="p">):</span>
</span></span><span class="line"><span class="cl">	<span class="nb">super</span><span class="p">(</span><span class="n">p1</span><span class="p">,</span> <span class="n">p2</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="k">class</span> <span class="nc">Something</span><span class="p">:</span>
</span></span><span class="line"><span class="cl">	<span class="n">var</span> <span class="n">a</span> <span class="o">=</span> <span class="mi">10</span>
</span></span></code></pre></div><p>I use Python often for scripts so it was easy to get used to it. So far, from what I&rsquo;ve read, one of the downsides is if you need really intensive computation algorithms, in which maybe doing them directly in C++ or C# might be better, but that&rsquo;s probably edge cases, and you can mix in both languages, so not a decision that can ruin things later on.</p>
<p>In terms of language I do like it, it&rsquo;s clean, feels modern, and my only complaint so far is exactly the same as Python, I wish we had { } to wrap up scopes instead of tabs, but that&rsquo;s a personal preference. I&rsquo;m sure as months progress I&rsquo;ll bump into caveats, but that can be said of all languages.</p>
<h2 id="the-nodes-and-more">The Nodes and more</h2>
<p>Godot uses Nodes for everything, and at first I thought &ldquo;oh it&rsquo;s like Unity GameObject&rdquo;, but it&rsquo;s not quite that, Nodes can only be used with 1 script, you can&rsquo;t just add a bunch of them to a node like Unity on a GameObject.</p>
<p><img alt="Godot Nodes" loading="lazy" src="/wp-content/uploads/2025/01/nodes_and_scenes_nodes.jpg"></p>
<p>Here if you want a new behaviour, add a child node and add that script.
It seems odd at first but this comes with a very powerful &ldquo;side-effect&rdquo;, anything can be a scene, and you can add nodes in anything, it&rsquo;s quite fascinating and powerful, seems truly abstract.</p>
<p>The rest is the standard 2DSprites, Meshes, Sounds, position components, UI etc.
To learn this I decided to make a small prototype game and so far most stuff has been very easy to create, from UI to animations and game logic.</p>
<p>The part that is creating more friction for me right now, is the Editor UI/UX inconsistency, there are tons of small quirks (I&rsquo;ve been live posting some) that are not necessarily bugs but tweaking would go a long way in terms of User Experience and making it more intuitive.</p>
<p>Took me forever to notice that &ldquo;Animation&rdquo; was actually a button hiding a ton of options, it looked like a pressed &ldquo;Tab&rdquo;, it has the same design as the 0 on the left, it doesn&rsquo;t look like a button. I&rsquo;m nitpicking here, because it does work functionally, but I care about this engine now and I want it to be even better.</p>
<table>
  <thead>
      <tr>
          <th><img loading="lazy" src="/wp-content/uploads/2025/01/godot_button_1.png"></th>
          <th><img loading="lazy" src="/wp-content/uploads/2025/01/godot_button_2.png"></th>
      </tr>
  </thead>
  <tbody>
  </tbody>
</table>
<p>Godot is being made for free by the community, on their spare time, the fact that it works as it does right now is magic.</p>
<p><img alt="IT Crowd Have you tried turning it off and on again" loading="lazy" src="/wp-content/uploads/2025/01/have_you_tried_turning_it_off_and_on_again.jpg"></p>
<p>Sometimes I had to restart the editor to make some things work again (I read this on Reddit) and whenever some code isn&rsquo;t working but I can&rsquo;t quite understand why, I would just restart it. At least once a day this would happen, but it might also be due to my use of Visual Code as external code editor and it getting confused some times (I need to do more testing on this).</p>
<p>Right now the engine has tons of potential and I feel it&rsquo;s already quite robust for 2D games, I can&rsquo;t say for 3D because I haven&rsquo;t had the chance yet.</p>
<h1 id="plans-for-godot">Plans for Godot</h1>
<p>As the title suggests, for me this will be the year I plan to migrate to Godot whenever possible.</p>
<p>I do have a &ldquo;game&rdquo; that I&rsquo;m working on SLOOOWLY whenever I find some time, and getting it out of Unity would be a big plus for me. I initially started it as part of learning Unity for contact work purposes and I kept working on it, felt like a nightmare to move it to my custom framework due to amount of work (but doable), but moving to Godot actually sounds FUN! But it&rsquo;s not for now, I have to wrap up the gameplay at least so that migrating would be easier once I have it all.</p>
<p>And that&rsquo;s what I wanted to say, Godot is a lot of fun to work with, you&rsquo;ll spot quirks very rapidly, but it&rsquo;s such a light and fast engine to work, perfect for prototyping.</p>
<p>Godot is in the same place as Blender a few year ago, with a promising future.</p>
<hr>
<p>See you in the next post!</p>
]]></content:encoded>
    </item>
  </channel>
</rss>
