1 Punkte von GN⁺ 2024-02-21 | 1 Kommentare | Auf WhatsApp teilen

Vorstellung von Castle Game Engine

  • Castle Game Engine ist eine plattformübergreifende 3D- und 2D-Spiel-Engine für Desktop-, Mobile- und Konsolenplattformen.
  • Es gibt einen leistungsstarken visuellen Editor und Unterstützung für verschiedene Formate wie glTF, X3D und Spine.
  • Mit modernem Pascal lassen sich schnelle und saubere Codezeilen schreiben; die Engine ist kostenlos und Open Source.

Visueller Designer und leistungsstarker Code

  • Mit dem visuellen Editor können 3D- und 2D-Spiele sowie Benutzeroberflächen gestaltet werden, und dieselben Projekte lassen sich auf verschiedenen Plattformen bauen und bereitstellen.
  • Eine Integration ist mit verschiedenen IDEs wie Lazarus, Delphi und Visual Studio Code möglich.

Verschiedene Wege der Datendefinition

  • Daten können mit 3D-Modellen, 2D-Animationen oder Sprite-Sheets definiert werden.
  • Die Integration mit Produktionswerkzeugen oder Shops wie Blender oder Sketchfab ist unkompliziert.

Grafik-Effekte

  • Es können Shader-Effekte, Schatten, Spiegelungen, Physically Based Rendering, Bump-Mapping und Gamma-Korrektur konfiguriert werden.

Plattformunterstützung

  • Castle Game Engine richtet sich an verschiedene Desktop-Plattformen (Windows, Linux, macOS usw.), mobile Plattformen (Android, iOS) und Konsolen (Nintendo Switch).
  • WebGL und Oculus (VR) sollen bald ebenfalls als Zielplattformen ergänzt werden.

Sauberer und schneller Code

  • Es wird eine native objektorientierte Sprache auf Basis von modernem Object Pascal verwendet.
  • Schnelles Erstellen und Ausführen sind standardmäßig vorhanden.

Open Source und CI-freundlich

  • Es werden CI-freundliche Werkzeuge bereitgestellt, außerdem stehen Befehlszeilen-Build-Tools und Docker-Images zur Verfügung.
  • Für den Einsatz mit GitHub Actions, GitLab CI und Jenkins sind fertige Dateien und Dokumentationen verfügbar.

Aktuelle News-Zusammenfassung

    1. Februar 2024: Veröffentlichung eines neuen schlanken Docker-Images.
    1. Februar 2024: Bereitstellung von HTTP-PUT-Anfragedaten, schnelle Umschaltung der Tiled-Layer-Sichtbarkeit, verbesserte C++-Bibliothek-API.
    1. Januar 2024: Ticoban, Draggen im Editor, auf CastleGL basierendes dglOpenGL, Tester-Verbesserungen, Pascal-Benutzerdefinierte-RTTI-Eigenschaften.
    1. Dezember 2023: Merry Christmas, einige Zusammenfassungen und API-Verbesserungen.

GN⁺-Meinung

  • Castle Game Engine ist eine leistungsstarke Spiel-Engine mit breiter Plattformunterstützung, die durch die Nutzung von modernem Pascal die Entwicklungseffizienz erhöht.
  • Sie ist Open Source und stellt CI-freundliche Tools für die Zusammenarbeit bereit, was die Kooperation in der Entwickler-Community fördert.
  • Mit modernen Grafik-Effekten und dem visuellen Editor lässt sich ein benutzerfreundliches Spiel- und Interface-Design umsetzen, was sie für Spieleentwickler zu einer attraktiven Wahl machen kann.

1 Kommentare

 
GN⁺ 2024-02-21
Hacker News Kommentare
  • Meinungen zu Pascal

    • Ein Nutzer äußerte sich kritisch zur Lesbarkeit der Pascal-Sprache. Neben Merkmalen, die viele moderne Sprachen wie Sicherheit, plattformübergreifende Unterstützung und Bibliotheken bieten, wurde bei Pascal die Lesbarkeit oft hervorgehoben. Er argumentiert jedoch, dass die Lesbarkeit schlechter ist als bei C. Da ganze Wörter für die Grammatik verwendet werden, brauche man mehr Aufwand, um Code-Struktur und eigentlichen Code zu unterscheiden. Er hielt das für ineffizient und schlechtes Design. Ihm kam es so vor, als wäre die Seite vor rund 20 Jahren geschrieben; damals hätten Typsicherheit u. Ä. deutlich relevanter gewirkt.
    • Als verlinkte Beiträge werden genannt: „Warum Pascal verwenden?“, „Einführung in modernes Object Pascal“, „Roadmap der Castle Game Engine“, „Castle Game Engine: Plattformübergreifende 3D- und 2D-Spiel-Engine“, „Castle Game Engine 6.4 Release – Physik, iOS-Services und Shader-Pipeline-Upgrade“.
  • Erinnerungen an die Nutzung von Pascal

    • Ein anderer Nutzer erinnerte sich an seine Zeit mit Delphi im Jahr 2001 an der Hochschule. Als erfahrener Programmierer erkannte er Pascal sofort an der Syntax anhand von var, begin, end und :=. Er nutzte vor allem das Speichern von Bestandsdaten in Binärdateien und die Verwendung von Binärsuche, was später zu Problemen wurde, da moderne Sprachen solche Funktionen inzwischen als selbstverständlich betrachten. Er ordnet Pascal eher in die Kategorie von BASIC ein und hat heute wenig Interesse an der Sprache, geht aber davon aus, dass es weiterhin viele Anwender gibt, die Pascal verteidigen.
  • Vergleich von Pascal und C

    • Ein weiterer Nutzer lernte in der Schule als erste „ernsthafte“ Programmiersprache Pascal, kehrte aber nach dem Erlernen von C nicht mehr zu Pascal zurück. C wirkte professioneller, flexibler und näher an der Hardware an. Pascal schien ihm eher für GUI-Anwendungsentwicklung geeignet, obwohl Pascal tatsächlich alles konnte, was C kann.
  • Positive Einschätzung zur modernen Nutzung von Pascal

    • Ein Nutzer empfand Pascal-Entwickler als sehr produktiv.
    • Ein weiterer Nutzer äußerte Bedauern über die mangelhafte Produktführung von Delphi. Er bezeichnete Object Pascal als hervorragende Sprache, die heute für nahezu jede Plattform nativen Code erzeugt; die generierten Binärdateien seien klein und schnell. Gegenüber Python könne sie 100- bis 10.000-mal schneller sein. Castle Game Engine sei ein gewaltiges Projekt, mit dem man Spiele und 3D-Anwendungen leicht erstellen kann; es sei keine Legacy-Software, sondern wird aktiv entwickelt. Das Mormot-Projekt wirke ebenfalls beeindruckend, da sich serverseitige Anwendungen problemlos mit Object Pascal und Mormot aufbauen lassen. Object-Pascal-Servercode könne auch auf einem einzelnen Server ausreichend laufen und so Kosten senken helfen. Object Pascal wird oft als reine Bildungssprache wahrgenommen, bietet aber Funktionen wie RTTI (Reflexion), die keine andere Sprache hat. Der einzige unzeitgemäße Aspekt sei, dass Multithreading/Coroutinen nicht nativ in der Sprache integriert sind wie bei Go. Code, der vor 40 Jahren geschrieben wurde, lasse sich heute immer noch kompilieren und ausführen, während viele andere Sprachen en vogue kamen und wieder verschwanden, Pascal aber weiterhin existiert. Der visuelle Editor von Castle Game Engine sei äußerst beeindruckend; auch ohne Vorkenntnisse in Object Pascal könne man ihn einfach ausprobieren.
  • Meinung zur Castle Game Engine

    • Ein Nutzer hat sich den Code der Castle Game Engine angesehen und festgestellt, dass er seit 2001 keine Pascal-Codes mehr gesehen hatte. Er findet es nicht ideal, dass Dateinamen mit dem Präfix castle versehen werden, weil dadurch nicht klar ist, worum es in der jeweiligen Datei geht und alles ähnlich aussieht. Gleichzeitig kann er den Code nicht direkt bewerten, da er nie selber in Pascal geschrieben hat. Die Engine selbst wirke jedoch beeindruckend.
  • Persönliche Sicht auf die Pascal-Sprache

    • Ein weiterer Nutzer hat Pascal gelernt und nutzt es gelegentlich. Er sagt, dass er als Entwickler nicht besonders gut damit zurechtkommt, aber als Produktmanager wohl besser. Er empfindet FPC als typisches Beispiel für „Duct-Tape-Programming“ und meint, genau diese Entwickler-Mentalität habe er in dieser Form nur zusammen mit C# gesehen.
  • Nostalgie für Pascal-Programmierung

    • Schließlich erinnerte sich ein Nutzer an die angenehmste Phase beim Programmieren mit Turbo/Borland Pascal. Das „Unit“-Kompilierungssystem habe gut funktioniert, und Kompilieren, Nutzung, Editieren und Debuggen seien extrem schnell gewesen. Beim Umstieg auf Delphi habe er das Gefühl gehabt, dass etwas verloren ging, und dass Menschen begannen, anderswo nach Alternativen zu suchen. Pascal habe ihm beim Wechsel von Apple Basic zu C/C++ geholfen und ihm zudem die Möglichkeit gegeben, Inline-Assembly zu verwenden und dabei zu lernen.