A DarkBASIC egy játékfejlesztésre optimalizált programnyelv. Kiadója az Egyesült Királyságban bejegyzett The Game Creators cég. A nyelv alapja a BASIC strukturált formája, hasonlít az Amiga Amos programnyelvére. A Dark Basic fő célja a játékkészítés megkönnyítése a Microsoft DirectX 3D felületének használata mellett, de emellett általános programozási célokra is használható. Először 2000-ben jelent meg a DarkBasic Software ltd gondozásában (ma: The Game Creators ltd.). 2002-ben megjelent a sokkal erőteljesebb és jobban bővíthető DarkBASIC Professional-t, ami a DirectX újabb verzióit használja. A Dark Basic-nek létezik magyar változata is.

Parancsok csoportjai szerkesztés

  • BASIC parancsok: Általános, a többi BASIC nyelvjárásban fellelhető parancsok. Ciklusok, Elágazások, Felhasználói függvények stb.
  • Beviteli parancsok: Egér, billentyűzet, joystick, fájl és FTP kezelő parancsok és függvények.
  • Matematikai parancsok: Matematikai funkciók aritmetikától a trigonometriáig.
  • Alap 2D: Alapvető 2D rajzoló parancsok.
  • Szöveg: szöveg kiíratására, formázására szolgáló parancsok listája.
  • Képernyő: a képernyőfelbontást ellenőrző és módosító parancsok listája.
  • Bitkép: bittérképek(.bmp) betöltésére, létrehozására szolgáló parancsok listája.
  • Sprite: sprite műveleteket végző parancsok listája
  • Hang: Hang manipuláció, 3D hangforrások kezelése
  • Zene: Zene betöltése és lejátszása
  • Animáció: AVI fájlok kezelése
  • Alap 3D: alapvető 3dimenziós parancsok 3D objektumok létrehozására és kezelésére
  • 3D kamera: 3D kamera pozicionálása, forgatása, kamera-effektek
  • 3D fények: 3D fények kezelése
  • 3D mátrixok: 3D mátrixok kezelése
  • Rendszer: Dll-ek kezelése és egyéb rendszerfüggő műveletek
  • Memblock parancsok: Memóriablokkok létrehozása képekből és 3D térhálókból, valamint módosításuk
  • Multiplayer: Parancsok többjátékos játék létrehozására helyi hálózaton vagy Interneten keresztül

Minta programkód szerkesztés

 rem  3D-s kocka mozgatása a képernyőn *** A fordított aposztróf ( ` ) használható a REM helyett
 sync on : sync rate 60  ` manuális képfrissítés beállítása
 disable systemkeys
 make object cube 1, 100 ` Készítünk egy kockát 1-es számmal, 100-as méretben
 posz = 10
 posx = 10
 posy = 10
 do     ` fő ciklus kezdete

 ` irányítás
 if upkey() = 1 then inc posy ` kurzornyilakkal mozgatás
 if downkey() = 1 then dec posy
 if leftkey() = 1 then dec posx
 if rightkey() = 1 then inc posx
 if escapekey() = 1 then end `Escape gombbal kilépés

 position object 1, posx, posy, posz ` újrapozicionálás
 sync   ` kép frissítése
 loop   ` fő ciklus vége

Lásd még szerkesztés

További információk szerkesztés