Как сделать игру в purebasic
Как сделать игру в purebasic
движок для pure basic
arrow25 | Дата: Вторник, 14 Августа 2012, 08:19 | Сообщение # 1 |
| нашел на одном из забугорных форумов разрабатываемый двиг для пурика, решил поделиться так сказать, может кому-то пригодится. от себя могу сказать что он наверное лучший из всех существующих враперов для пурика, он частенько обновляется, на данный момент версия 31 альфа описание на англ — Support for DirectX 9 List of mesh sizes: Is available for the following platforms: прямую ссылку не дам, а то модераторы еще покарают пример того что я наговнокодил на нем ; <константы ;игрок ;враг MP_Graphics3D(#width,#height,32,2) ;ширина,высота,глубина,мод[0-полноэкранный режим] If MP_KeyDown(#PB_Key_Down) все изображения были упакованы в сам екзешник, и того 262кб общий размер update для того чтоб нормально работало 3D нужно в настройках компилитора установить библиотеку подсистемы «dx9» Как сделать игру в purebasicPureBasic — коммерческий компилятор языка программирования, использующего синтаксис BASIC. Предназначен для создания кроссплатформенных приложений для AmigaOS, Linux, Microsoft Windows, Windows NT и Mac OS X. Разработан компанией Fantaisie Software. Программы, написанные на PureBasic’е компилируются непосредственно в код процессоров IA-32, m68k и PowerPC, при этом получаются небольшие автономные исполняемые файлы и динамические библиотеки. Если не использовать специфические API операционных систем, один файл исходного кода может быть скомпилирован для всех поддерживаемых OS с небольшими модификациями или вообще без них. Есть возможность использования библиотек WIN32API и MFC (Windows); SDL (Linux). Также PureBasic позволяет использовать ассемблерные «включения», так как компилятор — FASM PureBasic (4.00,4.10 и.т.д.) имеет также Visual Designer, который может помочь в создании окон. Имеет более 1100 встроенных (многие — кроссплатформенные) команд, вдобавок к этому есть прямой доступ к командам API AmigaOS, Microsoft Windows, Linux или Mac OS X. Детальное описание функций на английском языке можно найти в он-лайн справке http://purearea.net/pb/english/manual/reference/reference.html. Основные библиотеки2D Drawing, CDAudio, Cipher, Clipboard, Console, Database, Date, Desktop, File, FileSystem, Font, Gadget, Help, Image, ImagePlugin, Library, Linked List, Math, Memory, Menu, Misc, Movie, Network, OnError, Packer, Preference, Process, Printer, Requester, Sort, StatusBar, String, SysTray, Thread, Toolbar, Window Мультимедийные библиотеки (2D графика и звук) (для создания игр, и не только)Joystick, Keyboard, Module, Mouse, Palette, Sprite & Screen, Sprite3D, Sound, SoundPlugin В зависимости от платформы используются разные API: в Windows и Windows NT — DirectX 9.0, для Mac OS и Linux — OpenGL/SDL. Библиотеки Joystick, Keyboard, Mouse используются для получения информации от различных типов контроллеров — мыши, джойстика, клавиатуры. Module — плагин для проигрывания файлов с расширением «MOD». Работает через MIDAS. Sound — библиотека для воспроизведения и загрузки звуков. Команды из SoundPlugin позволяют загружать несколько форматов(по умолчанию, поддерживается WAV, в дистрибутив включена поддержка Ogg Vorbis, а любители написали поддержку MP3 и других форматов.) Библиотека Sprite & Screen применяется для отображения на экране картинок(Sprites), загрузки их в видеопамять(загрузка возможна как из файла, так и из памяти.), смены видеостраниц, создания некоторых эффектов (AlphaBlending, ShadowSprite), определения пересечения двух картинок. Sprite3D — работа с текстурированными плоскостями. От обычных спрайтов отличаются возможностью масштабирования, поворота, билинейной фильтрации, использования нескольких видов наложения цветов(Blending). Проработка идёт через подсистемы OpenGL/Direct3D, следовательно, графика аппаратно ускоряется на подходящих видеокартах. Также вполне реально применение этой библиотеки в качестве небольшого трёхмерного движка, поскольку всеми четырьмя вершинами плоскостей можно манипулировать в 3D пространстве. Следует заметить, что стандартный формат графических изображений — BMP, но при использовании команд из библиотеки ImagePlugin появляется поддержка PNG, JPEG, TGA и TIFF. В разделе «Sprite & Screen» присутствуют специфические команды: Они требуют загрузки в память со специальными параметрами, а также не поддерживаются аппаратно седьмой версией DirectX, поэтому, если вы используете версию компилятора младше 4.30, они очень сильно нагружают процессор. Рекомендуется выделять специальный буфер командами StartSpecialFX/StopSpecialFX. В версии компилятора 4.30 разработчики реализуют работу этих библиотек через DX9. Для устаревших версий компилятора существует подсистема. Скачать её дистрибутив можно на сайте [2]. Главное преимущество — повышенная производительность и полная аппаратная поддержка команд, перечисленных выше. 3D библиотекиEngine3D, Billboard, Camera, Entity, Light, Material, Mesh, Particle, Terrain, Texture В PureBasic используется трёхмерный движок OGRE, все встроенные библиотеки предоставляют возможность напрямую обращаться к его функциям. Тем не менее, для работы скомпилированной программы требуется файл «Engine3D.dll», найти который можно в папке «Compilers». Примеры программСледующая строка кода создаст небольшое (3,072 байт) приложение для Microsoft Windows. Эта программа занимает всего 2 килобайта, но выполниться сможет только в ОС Microsoft Windows. Следующий пример демонстрирует как создавать окно, добавить в него элементы, создать цикл окна и выполнять простые математические операции. Какие бы значения пользователь не ввел в два поля, справа отображается их сумма. Этот код компилируется в небольшое приложение (15 КБ), которое в зависимости от использованого компилятора, может быть запущено на Windows, Linux, Mac OS X или AmigaOS. Примечание: для версий компилятора выше 4.2 инструкция CreateGadgetList(WindowID(1)) вызовет предупреждение об отсутствии в ней необходимости. PureBasicPureBasic — коммерческий компилятор языка программирования, использующего синтаксис BASIC. Предназначен для создания кроссплатформенных приложений для AmigaOS, GNU/Linux, Microsoft Windows, Windows NT и Mac OS X. Разработан компанией Fantaisie Software. Программы, написанные на PureBasic’е компилируются непосредственно в код процессоров IA-32, m68k и PowerPC, при этом получаются небольшие автономные исполняемые файлы и динамические библиотеки. Если не использовать специфические API операционных систем, один файл исходного кода может быть скомпилирован для всех поддерживаемых OS с небольшими модификациями или вообще без них. Есть возможность использования библиотек WIN32API и MFC (Windows); SDL (GNU/Linux). Также PureBasic позволяет использовать ассемблерные «включения», так как компилятор — FASM PureBasic (4.00,4.10 и.т.д.) имеет также Visual Designer, который может помочь в создании окон. Имеет более 800 встроенных (многие — кроссплатформенные) команд, вдобавок к этому есть прямой доступ к командам API AmigaOS, Microsoft Windows, GNU/Linux или Mac OS X. Детальное описание функций на английском языке можно найти в он-лайн справке http://purearea.net/pb/english/manual/reference/reference.html, а на русском — на странице Purebasic Wiki http://wiki.pbasic.spb.ru/index.php/Мануал_по_PureBasic. СодержаниеОсновные библиотеки2D Drawing, CDAudio, Cipher, Clipboard, Console, Database, Date, Desktop, File, FileSystem, Font, Gadget, Help, Image, ImagePlugin, Library, Linked List, Math, Memory, Menu, Misc, Movie, Network, OnError, Packer, Preference, Process, Printer, Requester, Sort, StatusBar, String, SysTray, Thread, Toolbar, Window Мультимедийные библиотеки (2D графика и звук) (для создания игр, и не только)Joystick, Keyboard, Module, Mouse, Palette, Sprite & Screen, Sprite3D, Sound, SoundPlugin В зависимости от платформы используются разные API: в Windows и Windows NT — DirectX 9.0, для Mac OS и GNU/Linux — OpenGL/SDL. Библиотеки Joystick, Keyboard, Mouse используются для получения информции от различных типов контроллеров — мыши, джойстика, клавиатуры. Module — плагин для проигрывания файлов с расширением «MOD». Работает через MIDAS. Sound — библиотека для воспроизведения и загрузки звуков. Команды из SoundPlugin позволяют загружать несколько форматов(по умолчанию, поддерживается WAV, в дистрибутив включена поддержка Ogg Vorbis, а любители написали поддержку MP3 и других форматов. [1]) Библиотека Sprite & Screen применяется для отображения на экране картинок(Sprites), загрузки их в видеопамять(загрузка возможна как из файла, так и из памяти.), смены видеостраниц, создания некоторых эффектов (AlphaBlending, ShadowSprite), определения пересечения двух картинок. Sprite3D — работа с текстурированными плоскостями. От обычных спрайтов отличаются возможностью масштабирования, поворота, билинейной фильтрации, использования нескольких видов наложения цветов(Blending). Проработка идёт через подсистемы OpenGL/Direct3D, следовательно, графика аппаратно ускоряется на подходящих видеокартах. Также вполне реально применение этой библиотеки в качестве небольшого трёхмерного движка, поскольку всеми четырьмя вершинами плоскостей можно манипулировать в 3D пространстве. Следует заметить, что стандартный формат графических изображений — BMP, но при использовании команд из библиотеки ImagePlugin появляется поддержка PNG, JPEG, TGA и TIFF. В разделе «Sprite & Screen» присутствуют специфические команды: Они требуют загрузки в память со специальными параметрами, а также не поддерживаются аппаратно седьмой версией DirectX, поэтому, если вы используете версию компилятора младше 4.30, они очень сильно нагружают процессор. Рекомендуется выделять специальный буфер командами StartSpecialFX/StopSpecialFX. В версии компилятора 4.30 разработчики реализуют работу этих библиотек через DX9. Для устаревших версий компилятора существует подсистема. Скачать её дистрибутив можно на сайте [2]. Главное преимущество — повышенная производительность и полная аппаратная поддержка команд, перечисленных выше. 3D библиотеки (для создания игр, и не только)Engine3D, Billboard, Camera, Entity, Light, Material, Mesh, Particle, Terrain, Texture В PureBasic используется трёхмерный движок OGRE, все встроенные библиотеки предоставляют возможность напрямую обращаться к его функциям. Тем не менее, для работы скомпилированной программы требуется файл «Engine3D.dll», найти который можно в папке «Compilers».(Например, «C:/Program Files/PureBasic/Compilers») Примеры программСледующая строка кода создаст небольшое (3,072 байт) приложение для Microsoft Windows. Аналогично, вместо встроенной команды MessageRequester можно использовать MessageBox из WinAPI: Эта программа занимает всего 2 килобайта, но выполниться сможет только в ОС Microsoft Windows. Следующий пример демонстрирует как создавать окно, добавить в него элементы, создать цикл окна и выполнять простые математические операции. Какие бы значения пользователь не ввел в два поля, справа отображается их сумма. Этот код компилируется в небольшое приложение (15,360 байт), которое может быть запущено на Microsoft Windows 4.x или Microsoft Windows NT 4.x и новее. Примечание: для версий компилятора выше 4.2 инструкция CreateGadgetList(WindowID(1)) вызовет предупреждение об отсутствии в ней необходимости. Меню навигацииПользовательские ссылкиИнформация о пользователеСообщений 1 страница 30 из 66Поделиться120.12.2009 16:57:34. Почему начал с пятой главы? Просто эти вещи меня больше всего интересовали на момент желания начать переводить. Прикрепи пожалуйста к своему сайту, а то обменник недолговечен. Поделиться221.12.2009 20:16:51Поделиться321.12.2009 20:20:41Поделиться421.12.2009 21:16:35Оперативно Отредактировано haav (21.12.2009 21:17:08) Поделиться530.12.2009 20:30:21Поделиться603.01.2010 16:27:37Поделиться705.01.2010 15:33:36Поделиться807.01.2010 21:57:28Поделиться907.01.2010 22:33:29Поделиться1006.02.2010 17:14:41Поделиться1106.02.2010 17:45:12Поделиться1215.02.2010 16:58:07Поделиться1315.02.2010 18:24:39Поделиться1421.02.2010 08:35:29Похоже приплыл с переводом Поделиться1521.02.2010 14:11:15Примеры я конечно пределаю, а вот насчёт перевода. Попробовал, очень плохо получается. Поделиться1621.02.2010 14:48:21Так и не надо переводить, просто объясни свои примеры как сможешь, а я сам попробую решить что еще выдрать из слов автора. Спасибо что помогаешь! Поделиться1721.02.2010 15:05:19А там примеры рабочие, по крайней мере в 4.40 компилируются и выполняются правильно. На окно предупреждения компилятора не обращай внимания, он компилирует код в режиме совместимости со старой версией библиотеки. Поделиться1821.02.2010 17:00:07Че то я не пойму, почему у меня при использования этого кода, при любом нажатии Yes или No программа завершается, то есть эта строка MessageRequester(«STATUS», «The program was allowed to continue running.») не работает: Поделиться1921.02.2010 17:29:01Кстати на старой версии 4.02 все работает! Видать это глюки новых версий Поделиться2021.02.2010 17:35:43Это они в 4.30 переписали библиотеку OnError. Поделиться2121.02.2010 19:15:46Поделиться2221.02.2010 20:21:39
Вроде как всё нормально, правда, монитор загрузки процессора исключили в PB 4.30, но упоминание про него путь будет. Поделиться2302.03.2010 11:32:13Вопрос по компиляции консоли: В чем разница когда компилишь код для консоли 1) как windows приложение Я увидел незначительное различие в расходовании памяти. В книге не уловил смысла. Там что то говорится о неправильной работе приложения,если его компилить как windows приложение. Но как объяснить это в переводе? Отредактировано haav (02.03.2010 11:32:47) Поделиться2402.03.2010 13:08:35Всегда компилил консольные проги как Windows приложения и никаких глюков не замечал. Вот что в справке написанно
|