Godot Ressourcen - Eine Auswahl
Vor allem zu Beginn meiner GameDev Reise versuchte ich möglichst viel Input in Form von Tutorials, Dokumentation oder auch Videos aufzusaugen. Denn im Vergleich zur Server- und App-Entwicklung gab es doch diverse Unterschiede. Entsprechend habe ich mir eine kleine Liste an Ressourcen zusammengestellt, welche ich heute mit euch teilen möchte. Falls ihr weitere gute Seiten aus diesem Themenbereich kennt, meldet euch gerne in den Kommentaren.
Godot - Ein kurzer Rück- und Ausblick
Godot ist die Engine meiner Wahl, für mein aktuelles GameDev Projekt. Entsprechend interessieren mich Entwicklungen rund um die Engine natürlich auch. Dort gab es in der letzten Zeit einiges spannendes, was ich gerne mit euch teilen möchte. Unter anderem gab es auf GitHub den 100000 Issue open_in_new, was zeigt wie aktiv und wie viel in diesem Projekt umgesetzt wird. Um sich davon auch ein konkretes Bild machen zu können ist das Godot Engine – 2024 Showreel sehr hilfreich. Dieses ca. fünf Minuten lange Video, welches im unteren Teil des Beitrags eingebunden ist, zeigt eine Reihe von Spielen die mit Godot im Jahr 2024 umgesetzt wurden. Ich kann einen Blick in dieses Video nur empfehlen, denn es ist durchaus interessant was alles in Godot entwickelt wurde.
Neben dem was in der letzten Zeit passierte ist es aber natürlich auch sehr relevant in welche Richtung es weitergehen wird. Dafür ist die offizielle Godot Priorities Webseite open_in_new sehr gut nutzbar. Hier findet ihr generelle Bereiche in denen Weiterentwicklungen stattfinden sollen und auch konkrete Issues die angegangen werden. Damit kann man sich einen Überblick verschaffen wo in den nächsten Godot Versionen Veränderungen stattfinden.
Ich persönlich bin mit der Art und Weise wie Godot voranschreitet sehr zufrieden, denn sowohl 2D, wie auch 3D wird verbessert, GDScript und der Editor entwickeln sich weiter und auch das Ökosystem rund um Godot wird erweitert. Nun liegt es also nur noch an mir selbst mit meinem Spiel aktiv voranzukommen. Falls ihr Interesse habt ein Spiel zu entwickeln kann ich Godot definitiv empfehlen.
Bluesky Posts mit Linkvorschau via Dart veröffentlichen
In den letzten Monaten habe ich Dart als Lösung für serverseitige Implementierungen für mich entdeckt. Sowohl das Backend meines Blogs, wie auch verschiedene andere Server-Tools habe ich mittlerweile darauf umgestellt. Darunter ist auch mein Closed-Source Tool BoehrsiTweetHub, welches initial Daten mit Twitter / X geteilt hat und vor kurzem für Bluesky erweitert wurde.
Das Teilen von Blog Inhalten oder anderem Content mit Twitter / X ist relativ simpel, da dort quasi alle Informationen von der Plattform selbst gezogen werden. Dies ist bei Bluesky etwas anders, hier muss man den Content einer Card und vor allem Medieninhalte gesondert hochladen.
Das ist alles mit den aktuell vorhandenen Bibliotheken lösbar, bedarf allerdings etwas Wissen. Da ich kein komplettes Beispiel dafür finden konnte, musste ich mir einiges herleiten und anlesen, was ich euch ersparen möchte. Entsprechend findet ihr im unteren Teil des Beitrags meine Implementierung, um Webseiten bzw. Links inklusive Titel, Beschreibungstext und Bild auf Bluesky zu veröffentlichen.
Um euch die Nutzung einfacher zu machen findet ihr den kompletten Code aus lauffähigen Github Gist in den Related Links.
Experimentelle pub.dev Funktionen ausprobieren
Mit pub.dev open_in_new gibt es im Dart / Flutter Bereich eine globale Plattform zur Verteilung von Paketen. Selbige ist entsprechend relevant im besagten Kosmos und somit sind auch Neuerungen von pub.dev nicht uninteressant. Ich persönlich bin vermutlich noch etwas interessierter als viele andere Dart / Flutter Entwickler, da ich selber ein paar Pakete entwickle open_in_new und pflege.
Gestern bin ich bei Twitter / X auf einen Beitrag gestoßen open_in_new der mich auf pub.dev/experimental aufmerksam machte. Unter diesem Link kann man mit wenigen Klicks experimentelle Funktionen aktivieren. Derzeit gibt es die folgende Features zum ausprobieren: Dark mode, Download count, Completions for the search bar und Show matching topics when searching.
Ich finde tatsächlich alle vier Funktionen sehr hilfreich und vor allem der Download count gibt natürlich tiefere Einblicke in die Verbreitung von Paketen, was vor allem für die Entwickler von diesen spannend sein dürfte. Falls auch ihr die neuen Funktionen testen wollt, probiert sie einfach aus, der Link ist in den Related Links zu finden.
BoehrsiTweetHub - Unterstützung für Bluesky
Auch wenn ich eher wenig in den einschlägigen Online-Netzwerken unterwegs bin, nutze ich z.B. Twitter / X um dort über meine Blog Posts und GitHub Releases zu informieren. Da sich zur Zeit in diesem Bereich ein neuer Dienst mit dem Namen Bluesky entwickelt, möchte ich natürlich auch dort besagte Informationen verteilen. Aus diesem Grund habe ich mein BoehrsiTweetHub Tool erweitert, sodass selbiges nun neben Twitter / X open_in_new auch Bluesky open_in_new unterstützt. Falls ihr also auf einer der Plattformen unterwegs seid, folgt mir doch und bleibt auf dem Laufenden. Alle weiteren Informationen zum Tool findet ihr hier. Die Erweiterung konnte ich relativ einfach mit dem bluesky Package open_in_new umsetzen, auch wenn ich einige Versionskonflikte mit anderen Abhängigkeiten lösen musste, damit alles läuft. Bei Fragen meldet euch gerne in den Kommentaren.
Spieleentwicklung - Hilfreiche & umfangreiche Tipps von game e.V.
Falls man den Plan hat ein Spiel zu entwickeln gibt es diverse Fallstricke. Dabei meine ich nicht die unendliche Komplexität einer Engine, die diversen Möglichkeiten wie man Assets erstellt oder gar was man eigentlich für ein Spiel entwickeln möchte. Ich meine all die Dinge drum herum, vom erstellen einer Webseite und passender Steam Page, bis hin zu Steuern und ähnlichen rechtlichen Dingen. Hier den Überblick zu behalten ist schwer und auch wenn ich diverse Dinge, wie eine Firma, bereits zur Verfügung habe, so ist es trotzdem gut einen Überblick über das große Ganze zu bekommen.
Im Rahmen von Nachforschungen bin ich über ein extrem umfangreiches und gleichzeitig detailliertes Dokument gestolpert, welches meiner Meinung nach quasi alle Aspekte der Entwicklung eines Spiels anreißt oder sogar tiefgehend beschreibt. Im schlechtesten Fall bekommt man also einen Überblick in welchem Bereich man weiter nachforschen muss und im besten sind etwaige Fragen direkt beantwortet. Das Dokument ist auf deutsch, stammt von game – Verband der deutschen Games-Branche e.V. und kommt mit weit über 100 Seiten daher. Ihr findet den StartUP! Guide in den Related Links.
Ich habe das Dokument einmal generell überflogen und zu bestimmten Themen etwas tiefgehender betrachtet und muss sagen es ist echt hilfreich. Falls ihr plant im Bereich der Spieleentwicklung aktiv zu werden könnte ein Blick in dieses Dokument nicht schaden. Solltet ihr Fragen zur Thematik haben meldet euch gerne in den Kommentaren, auch wenn ich selber wie erwähnt noch eher unerfahren in diesem Bereich bin versuche ich natürlich gerne zu helfen.
Flutter Designsysteme - Es muss nicht immer Material sein
Ich bin ein Freund von Designsystemen die entweder direkt in einem Framework integriert oder als zusätzliche Plugins verfügbar sind. Das heißt nicht das ich der Meinung bin das der Entwickler keine Freiheit haben sollten, aber eine Basis zu bieten, die bei Bedarf genutzt werden kann, ist für mich persönlich sehr praktisch. Ich bin Softwareentwickler und kein Designer, insofern fällt es mir mitunter schwer einheitliche Konzepte, die innerhalb einer gesamten App gut aussehen und konsistent sind zu erschaffen. Genau dabei helfen besagte Designsysteme.
Nur weil allerdings ein Standard vorhanden ist, wie z.B. bei Flutter mit Material und Cupertino, was quasi Android und iOS abbildet, heißt dies nicht das man nicht auch mal über den Tellerrand hinaus schauen sollte. Genau dies habe ich in den letzten Monaten getan und ich kann sagen es war durchaus ein Erfolg. Ich habe dabei kein komplett eigenes Designsystem erstellt, denn wie oben erwähnt ist dies nicht unbedingt mein Fachgebiet, ich habe stattdessen andere Systeme ausprobiert und war durchaus angetan.
Thunderbird - Google Kalender Einladungen aus E-Mails akzeptieren
“Kein Kalender mit Schreibrechten eingerichtet” ist eine bekannte Meldung, die ich seit diversen Jahren immer mal wieder in Verbindung mit meinem Google Kalender in Thunderbird sehe. Egal ob zu früheren Zeiten, als die Kalenderfunktion von Thunderbird noch ein Addon war oder in aktuellen Versionen, das Problem ist beständig.
Um es zu lösen ist in der aktuellen Thunderbird Version (zum Zeitpunkt der Artikelerstellung Version 128) die Installation und Einrichtung des Addons Provider for Google Calendar open_in_new nötig, denn nur damit wird ein Google Kalender mit Schreibrechten verfügbar gemacht. Nach der Installation des Addons muss euer Kalender über dieses Addon via Kalender Tab / Neuer Kalender / Google Kalender
eingerichtet werden. Sofern ihr euren Google Kalender bereits anderweitig integriert hab empfiehlt es sich diesen zu entfernen, da sonst alle Termine doppelt angezeigt werden.
Droidcon / Fluttercon 2024 - Sessions sind online
Vor etwa zwei Monaten war ich auf der Droidcon / Fluttercon und ich war wieder jedes Jahr sehr zufrieden mit dem Event. Mein komplettes Fazit könnt ihr übrigens auch hier im Blog nachlesen.
Heute soll es aber darum gehen, dass auch alle die nicht vor Ort waren sich die Talks ansehen und anhören können. Dies ist nun möglich da alle Sessions online auf der Droidcon / Fluttercon Webseite verfügbar sind. Folgt einfach den Related Links, dort gibt es den jeweiligen Content und noch einiges mehr.
Ich kann interessierten Entwicklern nur empfehlen mal einen Blick auf die Sessions zu werfen, denn derartige Events bieten oft neue Perspektiven und Ansätze, welche auch für erfahrene Entwickler interessant sein können.
Dartpad - Dart Code im Browser ausführen
Manchmal will man schnell etwas ausprobieren, egal ob innerhalb eines großen Projekts oder auch komplett losgelöst von einem spezifischen Kontext. Dafür kann man eine dedizierte IDE öffnen, einen Test schreiben und ausführen, wenn das Ganze innerhalb eines großen Projekts ist oder verschiedene andere Tricks nutzen. Meiner Meinung nach ist eine weitere IDE allerdings nerviger Overhead und einen Test zu schreiben, welcher dann wieder entfernt wird, weil man nur kurz etwas ausprobieren wollte ist auch unpraktisch, z.B. wenn man vergisst ihn wieder zu löschen.
Für solche Dinge habe ich mir tatsächlich angewöhnt einfach Dartpad zu nutzen. Die Webseite ist sofort offen, die Umgebung ist bereit und ich kann direkt ein paar Zeilen Dart schreiben und selbige ohne weiteren Aufwand ausführen. Vor allem wenn es um das Verhalten von System- oder Framework Methoden geht, welche man anhand eines konkreten Beispiels ausprobieren will, finde ich diesen Ansatz durchaus gangbar.
In diesem Kontext würde mich interessieren wie ihr derartige Situationen behandelt. Darüber hinaus plane ich für die Zukunft mal einen Blick auf Googles Project IDX open_in_new zu werfen. Hier erhält man eine komplette IDE im Browser, welche bereits jetzt diverse Sprachen und Frameworks unterstützt. Hier bin ich allerdings noch skeptisch, denn für eine komplette IDE habe ich tatsächlich lieber eine lokale Umgebung, auch wenn selbige etwas mehr Aufwand für die Einrichtung bedarf.