DarkBASIC (від — темний і BASIC) — спеціалізована мова програмування, створена компанією спеціально для створення тривимірних та двовимірних ігор. Структура мови запозичена з BASIC, також мова схожа на , що використовувалася на Amiga.
З BASIC у DarkBASIC перейшли більшість інструкцій, також додано специфічні команди, що стосуються ігрового рушія, розробленого в The Game Creators для створення ігор з використанням DirectX.
Можливості мови
Зображення Автоматичне використання подвійного буфера Можливість роботи програми у повноекранному режимі Анімація Введення-виведення Введення з миші, клавіатури, джойстиків та інших ігрових контролерів Зворотний зв'язок (force feedback) Системні виклики Робота з файлами Звук 2D Процедури малювання у 2D Швидкий 2D-бліттинг Напівпрозорість Спрайти, зокрема анімовані Визначення зіткнень із піксельною точністю 3D Вбудовані 3D-примітиви Анімація моделей Освітлення Текстурування
DarkBASIC Professional DarkBASIC Professional розроблялася як заміна DarkBASIC. Поточна версія — 7.62 (1.0762), випущена 12 травня 2012 року.
На відміну від DarkBASIC, «професійна» версія генерує машинний код. Спочатку використовувано DirectX 8.1, але пізніше оновлено для використання DirectX 9.0c. Мова по суті така ж, як і DarkBASIC, з деякими доповненнями. Зокрема є можливість комбінувати прості типи в структури.
У листопаді 2009 The Game Creators до свого 10-річного ювілею випустила безплатну електронну версію DarkBASIC Professional.
Нині DarkBasic Professional є програмним засобом з відкритим сирцевим кодом.
Приклади Приклад програми «Hello, World!», написаної на DarkBASIC:PRINT "Hello, World!" WAIT KEY SET TEXT SIZE 40 INK RGB (0,0,0), RGB (0,0,255) PRINT "Hello," WAIT 5000 SET TEXT SIZE 20 INK RGB (0,0,0), RGB (255,0,0) CLS PRINT "World!" WAIT KEY Нижче наведено приклад програми яка працює з кубами:Sync On Sync Rate 60 Make Object Cube 1, 25 Color Object 1, RGB(128, 64, 78) Position Camera 30, 30, 30 Point Camera 0, 0, 0 Make Light 1 Position Light 1, 0, 30, 0 Do If Downkey()=1 then Pitch Object Down 1,1 If Upkey()=1 then Pitch Object Up 1,1 If Leftkey()=1 then Turn Object Left 1,1 If Rightkey()=1 then Turn Object Right 1,1 Sync Loop
Примітки
Література
Посилання www.thegamecreators.com/product/dark-basic-pro-open-source — сайт проєкту