GLBasic - GLBasic

GLBasic
GL Basic Logo.png
GLBasic IDE.png
GLBasic 8
Entwickler Dream Design Unterhaltungssoftware
Stabile Version
15.004 / 4. August 2017 ; Vor 3 Jahren  ( 04.08.2017 )
Vorschau Release
15.238
Betriebssystem Windows
Plattform Windows, Intel / PowerPC Mac, Linux (und Xbox Linux), OS-X, Pocket PC, GP32, GP2X / GP2X Wiz, iPhone, iPad, Palm Pre / Pixi, HP WebOS-Geräte (HP TouchPad, Pre2 / 3, Veer) , Öffnen Sie Pandora, Palm Pre 2 / Tablet, Android
Art Compiler
Lizenz 2D Free-Version für Windows, Mac und Linux (kann auch zum Kompilieren zeitlich begrenzter Versionen für andere unterstützte Plattformen verwendet werden), kommerzielle Version, Free School-Version
Webseite www .glbasic .com

GLBasic ist eine kommerzielle BASIC- Programmiersprache , die auf verschiedenen Plattformen wie Windows , Linux , Mac OS X und einigen Handheld-Geräten kompiliert werden kann . Die Sprache ist einfach und intuitiv gestaltet.

Überblick

GLBasic wurde als interpretierte Sprache mit 2D- Befehlen gestartet (GL steht für Graphics Language). Es verwendet jetzt den GCC- Compiler für viele verschiedene Plattformen, um schnelle, native Codeergebnisse zu erzielen . Der GLBasic-Precompiler "GPC" konvertiert die einfache BASIC-Sprache in C ++ - Code und kompiliert sie später. Somit kann der Benutzer GLBasic mit dem Befehl INLINE erweitern, um C / C ++ - Code direkt mit GLBasic-Quellcode zu mischen . Aus diesem Grund kann GLBasic auf allen Plattformen problemlos auf dynamische Bibliotheken von Drittanbietern zugreifen. Das GLBasic SDK enthält eine IDE , einen Debugger und eine Grafik-Engine, die auf OpenGL (oder OpenGL ES ) für die Plattformen Windows , Linux , Mac OS X , iOS und WebOS basiert . Für Handheld-Geräte ( Windows Mobile , GP2X und GP2X Wiz ) verwendet GLBasic eigene Hardwareroutinen für schnelle Grafiken.

Zum Kompilieren für das iPhone oder iPad benötigen Sie einen iMac (auf dem der generierte Code kompiliert werden muss - um den Anforderungen von Apple zu entsprechen) und die neueste Version von Xcode , die kostenlos von der Apple-Website heruntergeladen werden kann.

Um das Programm tatsächlich auf einem iPhone oder iPad ausführen zu können (GLBasic-Programme funktionieren nicht auf dem Emulator), müssen Sie Mitglied der iPhone Apple Developer Connection sein .

Seit der Veröffentlichung der Beta-Version 8.054 war es auch möglich, für die Open Pandora- Maschine zu kompilieren . Da jedoch keine Windows-Programmiertools vorhanden sind, wird die Hälfte des Kompilierungsprozesses unter Windows und die andere Hälfte auf dem tatsächlichen Computer ausgeführt. Seit Version 10 erstellt die IDE direkt unter Windows Pakete für Pandora.

Version 8.230 und höher kann für Web-OS-Geräte wie Palm Pre ohne zusätzliche Mitgliedschaftsanforderungen für Hardware oder Entwicklerprogramme kompiliert werden. Die Unterstützung für das HP TouchPad wurde im September 2011 über ein Web-Update hinzugefügt.

Version 10.057 fügte Unterstützung zum Erstellen von Anwendungspaketen hinzu, die auf Android- Geräten ausgeführt werden.

GLBasic enthält zahlreiche Beispiele.

Online-Veröffentlichung

Mit GLBasic erstellte Apps können in den Apple App Store , Google Play und den HP App Catalog hochgeladen werden . Für alle ist ein Entwicklerkonto erforderlich. Die Kosten für den Entwickler und die Überprüfungsstufe vor der Veröffentlichung hängen vom verwendeten Herausgeber ab.

Für Apple iOS kostet das iOS-Entwicklerprogramm 99 US-Dollar pro Jahr. Alle im App Store veröffentlichten Apps müssen vor der Veröffentlichung einen zweiwöchigen Überprüfungs- und Genehmigungsprozess durchlaufen.

Für Android wird eine einmalige Gebühr von 25 US-Dollar erhoben. Über den Google Play Store veröffentlichte Apps unterliegen keinem Genehmigungsverfahren und sind sofort für die Öffentlichkeit verfügbar.

Für die Veröffentlichung über den App-Katalog von HP ist ein kostenloses Konto erforderlich. Apps, die über den HP App-Katalog zum Verkauf angeboten werden, werden vor der Veröffentlichung fünf Tage lang überprüft.

Ein Wrapper für das Intel AppUp Center SDK ist auch für GLBasic verfügbar.

Eigenschaften

GLBasic bietet folgende Funktionen:

Allgemeines

  • Programme sind in BASIC geschrieben.
  • Zeichenfolge und Zahlen werden automatisch zwischen Typen konvertiert.
  • Arrays können eine feste Größe oder eine dynamische Größe haben.
  • Ton, Grafik und Daten können in einer einzigen Datei komprimiert werden.
  • Benutzer können ihre eigenen Typen definieren. Typen innerhalb von Typ- und dynamischen Arrays sind zulässig.
  • C-Code kann durch Einfügen eines geeigneten Codes zwischen einen Start- und einen Endbefehl oder während der Kompilierung eingefügt werden. Darüber hinaus können unter Windows Funktionen in DLLs aufgerufen werden.
  • Einige Funktionen sind nur im PC-Format verfügbar.
  • Programme für iOS können OpenFeint verwenden.

3D-Funktionen

  • Die 3D-Engine ist einfach zu bedienen und sorgt für eine schnelle Verarbeitung von Objekten
  • Objekte können animiert werden
  • Funktioniert mit den meisten gängigen 3D-Formaten
  • Objekte können Schatten haben
  • Ein Entity System ist als kostenloses Open Source-Bibliothekspaket erhältlich

2D-Features

  • Sprites können gedreht und skaliert werden und berücksichtigen Misch- und Tönungswerte.
  • Linien, gefüllte Rechtecke und andere Formen können gezeichnet werden.

Netzwerkfunktionen

  • Es stehen TCP / IP- und UDP / IP-Sockets sowie eine übergeordnete Bibliothek auf den IP-Sockets zur Verfügung.

Compiler

  • Der Compiler ist plattformübergreifend. Sie benötigen jedoch einen Intel Mac, um den generierten iPhone-Code gemäß den gesetzlichen Bestimmungen von Apple zu kompilieren.

IDE

  • Der Editor ist nur Windows, kann jedoch in den meisten virtuellen Maschinen mit einer angemessenen Geschwindigkeit ausgeführt werden. Mit Wine können Sie jedoch nur für Windows kompilieren. Crossover / Mac-Unterstützung wird seit Version 10 angeboten.
  • An einem Drittanbieter-Editor für den Mac wird gearbeitet.

GUI-System

GLBasic wird mit dem Quellcode von DDgui geliefert, einem benutzerfreundlichen GUI-System, mit dem alle unterstützten Plattformen auf allen Plattformen das gleiche Erscheinungsbild haben.

Für Windows, Linux und Mac hat GLBasic einen Tcl / Tk- Wrapper portiert , der ein natives Betriebssystem-Look bietet.

Versionen

GLBasic hat die folgenden Revisionen durchlaufen:

  • Version 1.2 - Die erste Version von GLBasic (auch bekannt als The DiNGS Game Basic Sequel)
  • Version 2.4 - Dies führte die PocketPC-Unterstützung ein
  • Version 3.0 - (Codename: Behemoth) hat TYPEs hinzugefügt
  • Version 4.0 - Einführung der Schnittstelle zu Windows-DLLs und Einführung des Kompilierens für die Xbox (sofern Linux darauf installiert ist). Es sollte auch unter Standard-Linux ausgeführt werden, obwohl es keine Hardwarebeschleunigung gibt, sodass Programme viel langsamer ausgeführt werden.
  • Version 5.0 - Kompilierung für den Apple Mac als Universal-Anwendung eingeführt
  • Version 6.0 - Zum ersten Mal wurden Ganzzahlen in GLBasic eingeführt. Bisher konnten Variablen entweder Gleitkomma- oder Zeichenfolgen sein
  • Version 7.0 - Einführung der Kompilierungsfunktion für Apple iPhone- und iPod Touch-Geräte.
  • Version 8.2 - Einführung der Kompilierungsfunktion für Palm Pre- und Palm Pixi-Geräte.
  • Version 10.057 - Die Möglichkeit zum Kompilieren für Android wurde eingeführt
  • Version 10.109 - Unterstützung für WebOS-Pads wie das HP TouchPad hinzugefügt
  • Version 11.0 - HTML5-Unterstützung hinzugefügt
  • Version 12
  • Version 13
  • Version 14
  • Version 15

Beispielcode

Hallo Welt

// this is a comment
// Print "Hello World" to the screen position 0,0 (top, left)
PRINT "Hello World", 0,0
// swap backbuffer and visible screen, prepare backbuffer for next rendering
SHOWSCREEN
// wait for a key to be pressed
KEYWAIT

Begrenzter objektorientierter Umfang

Mit Version 8 fügte GLBasic dem Befehl TYPE grundlegende objektorientierte Befehle hinzu. Dies ermöglicht es Strukturen, auf sich selbst zuzugreifen (mit dem Befehl 'self') und Funktionen innerhalb von TYPEs zu haben

Einfacher OOP-Test

 TYPE Tvec
  x;y;z
  FUNCTION null:
   self.x = 0; self.y=0;
  ENDFUNCTION
  FUNCTION add: v AS Tvec
   INC self.x, v.x
   INC self.y, v.y
   INC self.z, v.z
  END FUNCTION
 END TYPE
 LOCAL vec AS Tvec, vec2 AS Tvec
 vec.null()
 vec.x=50
 vec2.x = 100
 vec.add(vec2)

Version 8 kann Zeichenfolgen mit 128-Bit- Blowfish verschlüsseln und entschlüsseln .

Die Zukunft

Da der Autor Probleme mit ARM64 iOS-Compilern, verschiedene andere Probleme und nicht genügend Zeit zum Aktualisieren der Software hatte, wurde der Quellcode (und der Forenbeitrag darüber) an diejenigen Forummitglieder gesendet, die eine Anzahl von mindestens 100 Beiträgen hatten. Der Download wiegt komprimiert rund 2,5 GB.

Siehe auch

Verweise

  • Dieser Artikel basiert auf Inhalten aus dem GP2X-Wiki , das unter den Bedingungen der GFDL verfügbar ist.

Externe Links