Blitz BASIC

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 13. března 2022; kontroly vyžadují 6 úprav .

Blitz3D je komerční herní engine vyvinutý Markem Sibleym, stejně jako vývojové prostředí s jazykem Blitz BASIC a skriptovacím jazykem pro tvorbu her. Původní vývoj kompilátoru Blitz BASIC byl pro Amiga PC , ale dnes[ kdy? ] již podporuje několik platforem, včetně Microsoft Windows , Mac OS X a Linux . Verze pro Microsoft Windows podporuje DirectX 7.

Blitz3D

Jazyk obsahuje 588 konstruktů, které umožňují vytvořit dvou- a trojrozměrný herní prostor. S ním můžete vytvářet malé hry pomocí velkého množství knihoven napsaných členy programátorských komunit Blitz3D.

Od 3. srpna 2014 je šířen volně [1] , zdrojový kód je otevřen pod licencí zlib/libpng [2] .

Příklady programů

Ahoj světe

Grafika 800 , 600 ; - Grafický režim 800x600 bez KeyDown ( 1 ) ; - Začátek hlavní smyčky (Dokud není stisknuta klávesa 1 (Escape) Cls () ; - Vymazat obrazovku Text 10 , 20 , "Ahoj světe!" ; - Napište text "Ahoj světe" v bodě 10,20 Flip () ; - změna snímku (Stejně jako ve starých karikaturách, kdy byl pohyb nastaven proměnným rámem) Wend ; zastavit smyčku, pokud je podmínka porušena End ; konec programu


Ahoj světe pomocí proměnných

Grafika 800 , 600 ; - Grafický režim 800x600 Global a $ = "Ahoj" ; - Proměnná a s obsahem "Ahoj" Global b $ = "Svět" ; - Proměnná b s obsahem "World" I když není KeyDown ( 1 ) ; - Začátek hlavní smyčky Cls () ; - Vymazat obrazovku Text 0 , 0 , a $ + b $ ; - Zobrazení textu na pozici 0,0 Flip () ; - Změnit rám Wend ; - Konec cyklu při porušení podmínky End ; - konec programu

Práce s obrázky

Graphics 800 , 600 Global Image = LoadImage ( "picture.bmp" ) Zatímco ne KeyDown ( 1 ) Cls ( ) DrawImage Image , 100 , 100 Flip ( ) Wend End

Práce s 3D grafikou

Graphics3D 800 , 600 ;Nastavit grafický režim Globální model = LoadMesh ( "helloworld.3ds" ) ;Načíst 3D model štítku "Hello, World" (Poznámka, podporován je pouze formát .3ds) Model PositionEntity , 0 , 0 , 0 ;Nastavit model do bodu 0,0,0 Globální kamera = CreateCamera () ;Vytvoření kamery PositionEntity camera , 0 , 0 , - 10 ;Nastavte kameru těsně za objekt Zatímco není KeyDown ( 1 ) ;Začátek smyčky RenderWorld () ; Vykreslení obrázku Flip () ; Zobrazení Konec ; Konec cyklu Konec ; Konec programu

Blitz Max

BlitzMax  je programovací jazyk vyvinutý Markem Sibleym. BlitzMax používá rozšířenou verzi základního jazyka . Díky modulům lze funkčnost BlitzMaxu neomezeně rozšiřovat. Z grafického API může používat DirectX i OpenGL . Několik vestavěných zvukových API (DirectSound, FreeAudio, OpenAL). Má šikovný modul GNet pro rychlé vytváření síťových aplikací.

Od 29. dubna 2014 šířeno volně [1] , zdrojový kód je otevřen pod licencí zlib/libpng [3] .

Klíčové vlastnosti

  • 2 režimy interpretace kódu Strict a SuperStrict
  • Víceprůchodový kompilátor
  • Překladač do jazyka Flat Assembler
  • Podpora platformy: Win32, Linux, MacOS
  • Ukazatele funkcí
  • Dědičnost a polymorfismus
  • Plně dynamická pole
  • Podpora externích jazyků pro propojení s C++ nebo Assemblerem
  • Kompatibilní s MinGW

Datové typy

Popis název Min. význam Max. význam
8bitové numerické bajtů 0 255
16bitové numerické Krátký 0 65535
32bitové numerické int −2^31 +2^31-1
64bitové numerické Dlouho −2^63 +2^63-1
32 bit reálný plovák (+/-)10^-38 (+/-)10^38
64 bit reálný Dvojnásobek (+/-)10^-308 (+/-)10^308
16bitový plný text unicode Tětiva - -
Objekt (typ) obj:TOobject - -
pole pole{:type}[..] - -
Funkce Funkce:{return type}(Parametry) - -
Ukazatel Ukazatel ValueType Ptr - -

BlitzMax NG

BlitzMax NG  je programovací jazyk, přímý nástupce původního jazyka BlitzMAX. Vyvinutý svobodnou komunitou vedenou Brucem Hendersonem (woollybah).

Další funkce a změny

Další datové typy

Popis název Min.Hodnota Max.hodnota
32bitová číslice bez znaménka UInt 0 +2^32-1
64bitová číslice bez znaménka ULong 0 +2^64-1
32bitová číslice bez znaménka Velikost_T 0 +2^32-1
64bitová číslice bez znaménka Velikost_T 0 +2^64-1
64bitová SIMD reálná Float64 - -
128bitový numerický SIMD Int128 - -
128bitová SIMD reálná Plovák 128 - -
128bitová SIMD reálná Dvojité 128 - -

Hodnoty SIMD jsou dostupné na architekturách x64 a lze je použít k efektivnějšímu provádění numerických výpočtů.

Blitz 3D hry

Poznámky

  1. 1 2 Oficiální web Blitz (odkaz není dostupný) . Získáno 29. března 2015. Archivováno z originálu 31. března 2016. 
  2. Projekt Blitz3D na GitHubu
  3. Projekt BlitzPlus na GitHubu

Literatura

  • Naučte se programovat 2D hry v Blitz Basic od John "Krylar" Logsdon, (2003)
  • Programování her pro dospívající od Maneesh Sethi, (2003), ISBN 1-59200-068-1
  • Programování her pro úplného začátečníka s BlitzMax od Sloan Kelly, ISBN 0-9553771-0-2
  • Programování 3D her pro dospívající od Erica Greblera, (2006) ISBN 1-59200-900-X
  • Programování 3D her pro dospívající, 2. vydání , Maneesh Sethi, (2009) ISBN 1-59863-843-2

Viz také

  • Xors3D - moderní 3D engine pro BlitzMax
  • Monkey je nový multiplatformní programovací jazyk od Blitz Research Ltd

Odkazy