DarkBASIC | |
---|---|
Рушій гри (Список) | |
Попередній рушій серії | preceded by |
Наступний рушій серії | followed by |
DarkBASIC (від англ. dark — темний і BASIC) — спеціалізована мова програмування, створена компанією The Game Creators[en] спеціально для створення тривимірних та двовимірних ігор. Структура мови запозичена з BASIC, також мова схожа на AMOS[en], що використовувалася на 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.[1]
Нині 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
Примітки
- ↑ The Game Creators Newsletter - Issue 82. www.thegamecreators.com. Процитовано 24 січня 2025.
Література
- Jonathan S. Harbour, Joshua R. Smith. Beginner's guide to darkBASIC game programming. — Premier Press, 2003. — 752 p. — ISBN 978-1-592-00009-8.
- Jonathan S. Harbour, Joshua R. Smith. DarkBasic pro game programming. — 2 edition. — Thomson Course Technology, 2006. — 577 p. — ISBN 978-1-598-63287-3.
- Jerry Lee Ford, Jr. DarkBASIC Programming for the Absolute Beginner. — Course Technology, 2008. — 406 p. — ISBN 978-1-598-63385-6.
Посилання
- www.thegamecreators.com/product/dark-basic-pro-open-source — сайт проєкту