GLBasic
![]() | |
![]() ГЛБазик 8 | |
Разработчик(и) | Развлекательное программное обеспечение Dream Design |
---|---|
Стабильная версия | 15.004
/ 4 августа 2017 г |
Предварительный выпуск | 15.238
|
Операционная система | Окна |
Платформа | Windows, Intel/PowerPC Mac, Linux (и Xbox Linux), OS-X, Pocket PC, GP32, GP2X/GP2X Wiz, iPhone, iPad, Palm Pre/Pixi, устройства HP WebOS (HP TouchPad, Pre2/3, Veer) , Открытая Pandora, Palm Pre 2/планшет, Android |
Тип | Компилятор |
Лицензия | Бесплатная 2D-версия для Windows, Mac и Linux (также может использоваться для компиляции ограниченных по времени версий для других поддерживаемых платформ), коммерческая версия, бесплатная школьная версия |
Веб-сайт | www |
GLBasic — это коммерческий BASIC язык программирования , который можно компилировать на различные платформы, включая Windows , Linux , Mac OS X и некоторые портативные устройства . Язык спроектирован так, чтобы быть простым и интуитивно понятным.
Обзор [ править ]
GLBasic начинался как интерпретируемый язык с 2D- командами (GL означает Graphics Language). Теперь он использует GCC компилятор для многих различных платформ для достижения быстрых в собственном коде результатов . Прекомпилятор GLBasic «GPC» преобразует простой язык BASIC в код C++ и компилирует его позже. Таким образом, пользователь может расширить GLBasic с помощью команды INLINE, чтобы C напрямую смешивать код /C++ с исходным кодом GLBasic. Благодаря этому GLBasic может легко получить доступ к сторонним динамическим библиотекам на всех платформах. GLBasic SDK поставляется с IDE , отладчиком и графическим движком, построенным на OpenGL (или OpenGL ES ) для платформ Windows , Linux , Mac OS X , iOS и WebOS . Для портативных устройств ( Windows Mobile , GP2X и GP2X Wiz ) GLBasic использует собственные, близкие к аппаратным, процедуры для быстрой графики.
Для компиляции для iPhone или iPad вам понадобится iMac (на котором будет компилироваться сгенерированный код — для соответствия требованиям Apple) и последняя версия Xcode , которую можно бесплатно загрузить с сайта Apple.
Чтобы иметь возможность запускать программу на iPhone или iPad (программы GLBasic не будут работать на эмуляторе), вам необходимо быть участником iPhone Apple Developer Connection .
С момента выпуска бета-версии 8.054 появилась возможность компилировать Open Pandora и для машины . Однако из-за отсутствия инструментов программирования Windows половина процесса компиляции выполняется в Windows, а другая половина — на реальной машине. Начиная с версии 10, IDE напрямую собирает пакеты в Windows для Pandora.
Версия 8.230 и выше может компилироваться для устройств Web-OS, таких как Palm Pre, без дополнительного оборудования или требований к членству в программе разработчиков. Поддержка HP TouchPad была добавлена в сентябре 2011 года посредством веб-обновления.
В версии 10.057 добавлена поддержка сборки пакетов приложений, работающих на устройствах Android .
GLBasic поставляется с многочисленными примерами.
Интернет-публикация [ править ]
Приложения, созданные с помощью GLBasic, можно загружать в Apple App Store , Google Play HP и каталог приложений ; все это требует учетной записи разработчика. Затраты разработчика и уровень проверки перед публикацией зависят от используемого издателя.
Для Apple iOS программа разработчиков iOS стоит 99 долларов США в год. Все приложения, опубликованные в магазине приложений, перед публикацией должны пройти двухнедельную процедуру проверки и утверждения.
Для Android взимается единовременная плата в размере 25 долларов США. Приложения, опубликованные через Google Play Store, не подлежат процедуре утверждения и сразу же становятся общедоступными.
Для публикации через каталог приложений HP требуется бесплатная учетная запись. Приложения, выставленные на продажу через каталог приложений HP, перед публикацией проходят пятидневную проверку.
оболочка для Intel AppUp Для GLBasic также доступна Center SDK.
Особенности [ править ]
GLBasic имеет следующие возможности:
Общие [ править ]
- Программы написаны на Бейсике.
- Строка и числа автоматически преобразуются между типами.
- Массивы могут быть фиксированного размера или динамическими.
- Звук, графику и данные можно сжать в один файл.
- Пользователи могут определять свои собственные типы. типы внутри типов и динамических массивов . Допускаются
- Код C можно включить, поместив соответствующий код между начальной и конечной командой, или его можно включить во время компиляции. Кроме того, в Windows можно вызывать функции внутри DLL.
- Некоторые функции доступны только в формате ПК.
- Программы для iOS могут использовать OpenFeint.
3D features [ edit ]
- 3D-движок прост в использовании и обеспечивает быструю обработку объектов.
- Объекты можно анимировать
- Работает с большинством распространенных 3D-форматов.
- Объекты могут иметь тени
- Entity System доступна в виде бесплатного пакета библиотеки с открытым исходным кодом.
2D-функции [ править ]
- Спрайты можно вращать и масштабировать, а также учитывать значения смешивания и оттенка.
- Можно рисовать линии, прямоугольники с заливкой и другие фигуры.
Сетевые возможности [ править ]
- Доступны сокеты TCP/IP и UDP/IP, а также библиотека более высокого уровня, построенная на основе IP-сокетов.
Компилятор [ править ]
- Компилятор является кроссплатформенным. Однако вам понадобится Intel Mac для компиляции сгенерированного кода iPhone в соответствии с юридическими требованиями Apple.
IDE [ править ]
- Редактор предназначен только для Windows, но может работать с приличной скоростью на большинстве виртуальных машин. Однако с Wine вы можете компилировать только для Windows. Поддержка Crossover/Mac предоставляется начиная с версии 10.
- В разработке находится сторонний редактор для Mac.
Система графического интерфейса [ править ]
GLBasic поставляется с исходным кодом DDgui, простой в использовании системы графического пользовательского интерфейса, позволяющей всем поддерживаемым платформам иметь одинаковый внешний вид на всех платформах.
Для Windows, Linux и Mac компания GLBasic портировала оболочку Tcl/Tk , которая выглядит как родная ОС.
Версии [ править ]
GLBasic претерпел следующие изменения:
- Версия 1.2 — первая версия GLBasic (также известная как продолжение DiNGS Game Basic) (2000 г.)
- Версия 2.4. Введена поддержка PocketPC.
- Версия 3.0 - (Кодовое имя: Behemoth) добавлены ТИПЫ.
- Версия 4.0 — добавлена возможность взаимодействия с библиотеками DLL Windows и реализована компиляция для Xbox (если на нем установлен Linux). Он также должен работать на стандартном Linux, хотя аппаратного ускорения здесь нет, поэтому программы работают намного медленнее. (2007)
- Версия 5.0 — введена компиляция для Apple Mac как универсальное приложение.
- Версия 6.0 — впервые в GLBasic введены целые числа. Раньше переменные могли быть либо числами с плавающей запятой, либо строками (декабрь 2008 г.).
- Версия 7.0 — добавлена возможность компиляции для устройств Apple iPhone и iPod Touch. (август 2009 г.)
- Версия 8.2 — теперь бесплатна для некоммерческих проектов, поддерживает платформу Open Pandora, поддержку iPhone/iPad (август 2010 г.)
- Версия 9.0 - Добавлена возможность компиляции для Palm WebOS (Palm Pre, Palm Pixi). (март 2011 г.)
- Версия 10.057 - Добавлена возможность компиляции под Android.
- Версия 10.109 — добавлена поддержка планшетов WebOS , таких как HP TouchPad.
- Версия 11.0 — добавлена поддержка HTML5.
- Версия 12 — улучшенный порт HTML5, собственная библиотека графического интерфейса (январь 2014 г.)
- Версия 14* — другие платформы теперь устанавливаются в виде плагинов, PRESCALER, улучшенная отладка (август 2015 г.) *пропущена версия 13
- Версия 14 — Обновление: добавлена поддержка IPv6 в сетевых командах, обновлена библиотека libPNG (октябрь 2016 г.).
- Версия 15 — «Единорог», улучшенные параметры отладки, добавлены шрифты True Type (ноябрь 2017 г.)
- Версия 16 — доступна через Steam , обновленный компилятор C++, поддержка Windows x64 (март 2019 г.)
Пример кода [ править ]
Привет, мир
// this is a comment // Print "Hello World" to the screen position 0,0 (top, left) PRINT "Hello World", 0,0 // swap backbuffer and visible screen, prepare backbuffer for next rendering SHOWSCREEN // wait for a key to be pressed KEYWAIT
Ограниченная объектно-ориентированная область применения [ править ]
В версии 8 GLBasic добавил к команде TYPE базовые объектно-ориентированные команды. Это позволяет структурам получать доступ к самим себе (с помощью команды self) и иметь функции внутри TYPE.
Простой тест ООП [ править ]
TYPE Tvec x;y;z FUNCTION null: self.x = 0; self.y=0; ENDFUNCTION
FUNCTION add: v AS Tvec INC self.x, v.x INC self.y, v.y INC self.z, v.z END FUNCTION END TYPE
LOCAL vec AS Tvec, vec2 AS Tvec
vec.null() vec.x=50 vec2.x = 100 vec.add(vec2)
Версия 8 может шифровать и расшифровывать строки с помощью 128-битного Blowfish .
Будущее [ править ]
Из-за того, что у автора были проблемы с компиляторами ARM64 iOS, различные другие проблемы, а также недостаточное время для обновления программного обеспечения, исходный код (и сообщение на форуме о нем) были предоставлены тем участникам форума, у которых количество сообщений было не менее 100. Загрузка весит около 2,5 ГБ в сжатом виде.
См. также [ править ]
- SdlBasic , интерпретируемый BASIC для GP2X.
- Базовый4GL
- Fenix Project, интерпретируемый язык, который легче изучать, чем C++.
- DarkBASIC Professional — компилятор BASIC только для Windows.
Ссылки [ править ]
- Эта статья основана на контенте, взятом из вики GP2X , которая доступна на условиях GFDL.
Внешние ссылки [ править ]
- Официальный сайт
- Официальный форум
- Игры GP2X, GLBasic/gp2x.de написанные для конкурса 2008 г.
- по внешним языкам Справочное руководство
- внешнему официальному языку (на английском языке) Справочное руководство по
- GLBasic Wiki