Blitz BASIC

Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită la 13 martie 2022; verificările necesită 6 modificări .

Blitz3D este un motor de joc comercial dezvoltat de Mark Sibley, precum și un mediu de dezvoltare cu limbajul Blitz BASIC și un limbaj de scripting pentru crearea de jocuri. Dezvoltarea originală a compilatorului Blitz BASIC a fost pentru Amiga PC , dar astăzi[ când? ] acceptă deja mai multe platforme, inclusiv Microsoft Windows , Mac OS X și Linux . Versiunea Microsoft Windows acceptă DirectX 7.

Blitz3D

Limbajul conține 588 de constructe care vă permit să creați un spațiu de joc bidimensional și tridimensional. Cu acesta, puteți crea jocuri mici folosind un număr mare de biblioteci scrise de membrii comunităților de programare Blitz3D.

Din 3 august 2014 este distribuit gratuit [1] , codul sursă este deschis sub licența zlib/libpng [2] .

Exemple de programe

Salut Lume

Grafică 800 , 600 ; - Modul grafic 800x600 în timp ce nu este KeyDown ( 1 ) ; - Începutul buclei principale (Până când tasta 1 (Escape) Cls () este apăsată ; - Ștergeți ecranul Textul 10 , 20 , „Hello, World!” ; - Scrieți textul „Hello world” la punctul 10,20 Flip () ; - schimbarea cadrului (ca în desenele animate vechi, când mișcarea a fost stabilită de un cadru schimbător) Wend ; opriți bucla dacă condiția este încălcată Sfârșit ; sfârșitul programului


Bună lume, folosind variabile

Grafică 800 , 600 ; - Modul grafic 800x600 Global a $ = "Bună ziua" ; - Variabila a cu conținut „Bună ziua” Global b $ = „Lumea” ; - Variabila b cu conținut „Lumea” în timp ce nu este KeyDown ( 1 ) ; - Începutul buclei principale Cls () ; - Ștergeți ecranul Text 0 , 0 , a $ + b $ ; - Afisare text in pozitia 0,0 Flip () ; - Schimbați cadru Wend ; - Sfârșitul buclei când condiția este încălcată Sfârșit ; - sfârşitul programului

Lucrul cu imagini

Grafică 800 , 600 Imagine globală = LoadImage ( "picture.bmp" ) When Not KeyDown ( 1 ) Cls () DrawImage Image , 100 , 100 Flip () Wend End

Lucrul cu grafica 3D

Graphics3D 800 , 600 ;Setați modul grafic Model global = LoadMesh ( "helloworld.3ds" ) ; Încărcați modelul 3D al etichetei "Hello, World" (Notă, este acceptat doar formatul .3ds) Modelul PositionEntity , 0 , 0 , 0 ;Set model la punctul 0,0,0 Camera globală = CreateCamera () ;Creați o cameră PositionEntity camera , 0 , 0 , - 10 ;Setați camera chiar în spatele obiectului While Not KeyDown ( 1 ) ; Începutul buclei RenderWorld ( ) ; Redarea imaginii Flip () ; Afișează Wend ; Sfârșit ciclu Sfârșit ; Sfârșit program

Blitz Max

BlitzMax  este un limbaj de programare dezvoltat de Mark Sibley. BlitzMax folosește o versiune extinsă a limbajului de bază . Datorită modulelor, funcționalitatea BlitzMax poate fi extinsă la nesfârșit. Din API-ul grafic, poate folosi atât DirectX , cât și OpenGL . Mai multe API-uri de sunet încorporate (DirectSound, FreeAudio, OpenAL). Are un modul GNet la îndemână pentru a crea rapid aplicații de rețea.

Din 29 aprilie 2014 distribuit gratuit [1] , codul sursă este deschis sub licența zlib/libpng [3] .

Caracteristici cheie

  • 2 moduri de interpretare a codului Strict și SuperStrict
  • Compilator cu mai multe treceri
  • Traducător în limbajul Flat Assembler
  • Suport platformă: Win32, Linux, MacOS
  • Indicatori de funcție
  • Moștenirea și polimorfismul
  • Matrice complet dinamice
  • Suport de limbaj extern pentru interfața cu C++ sau Assembler
  • Compatibil cu MinGW

Tipuri de date

Descriere Nume Min. sens Max. sens
8 biți numeric octeți 0 255
numeric pe 16 biți mic de statura 0 65535
numeric pe 32 de biți int −2^31 +2^31-1
numeric pe 64 de biți Lung −2^63 +2^63-1
32 de biți reali pluti (+/-)10^-38 (+/-)10^38
64 de biți reali Dubla (+/-)10^-308 (+/-)10^308
Text integral Unicode pe 16 biți Şir - -
Obiect (Tip) obj:TObject - -
matrice matrice{:tip}[..] - -
Funcţie Funcție:{return type}(Parametri) - -
Indicator Pointer ValueType Ptr - -

BlitzMax NG

BlitzMax NG  este un limbaj de programare, un succesor direct al limbajului original BlitzMAX. Dezvoltat de comunitatea liberă condusă de Bruce Henderson (woollybah).

Caracteristici și modificări suplimentare

Tipuri de date suplimentare

Descriere Nume Valoare min Valoarea maximă
Numeric nesemnat pe 32 de biți UInt 0 +2^32-1
Numeric nesemnat pe 64 de biți ULong 0 +2^64-1
Numeric nesemnat pe 32 de biți Mărimea_T 0 +2^32-1
Numeric nesemnat pe 64 de biți Mărimea_T 0 +2^64-1
SIMD pe 64 de biți real Float64 - -
SIMD numeric pe 128 de biți Int128 - -
SIMD real pe 128 de biți Float128 - -
SIMD real pe 128 de biți Dublu128 - -

Valorile SIMD sunt disponibile pe arhitecturile x64 și pot fi folosite pentru a efectua calcule numerice mai eficient.

Jocuri Blitz 3D

Note

  1. 1 2 Site-ul oficial Blitz (link nu este disponibil) . Preluat la 29 martie 2015. Arhivat din original la 31 martie 2016. 
  2. Proiect Blitz3D pe GitHub
  3. Proiect BlitzPlus pe GitHub

Literatură

  • Învață să programezi jocuri 2D în Blitz Basic de John "Krylar" Logsdon, (2003)
  • Programarea jocurilor pentru adolescenți de Maneesh Sethi, (2003), ISBN 1-59200-068-1
  • Programare de jocuri pentru începătorii absoluti cu BlitzMax de Sloan Kelly, ISBN 0-9553771-0-2
  • Programare de jocuri 3D pentru adolescenți de Eric Grebler, (2006) ISBN 1-59200-900-X
  • Programarea jocurilor 3D pentru adolescenți, ediția a doua de Maneesh Sethi, (2009) ISBN 1-59863-843-2

Vezi și

  • Xors3D - motor 3D modern pentru BlitzMax
  • Monkey este un nou limbaj de programare multiplatformă de la Blitz Research Ltd

Link -uri