Среда, 24.04.2024, 22:08
Personal dimanche13 site
Главная | Регистрация | Вход Приветствую Вас Гость | RSS
Категории каталога
Мои статьи [22]
BlitzMax [17]
раздел содержит статьи относящиеся к языку программирования BlitzMax
SDL [9]
раздел содержит статьи на тему SDL
Code::Blocks [3]
в этом разделе рассказывается как прикрутить движок к интегрированной среде разработки(IDE) Code::Blocks
Форма входа
Поиск
Друзья сайта
Главная » Статьи » Code::Blocks

CodeBlocks + SDL

CodeBlocks + SDL

 
Содержание:
1. Пару слов о CodeBlocks.
2. Пару слов об SDL.
3. Ставим SDL.
 
Пару слов о CodeBlocks.
Давайте сначала зададимся вопросом, а почему собственно CodeBlocks? Дело в том, что эта интегрированная среда разработки (IDE) является кроссплатформенной. То есть другими словами есть ее версии как для Windows, так и для Linux и даже Mac Os. Да что там говорить, вот информация прямо с родного сайта http://www.codeblocks.org/ :
 
Code::Blocks supports:
  • Windows 2000 / XP / Vista
  • Linux (Ubuntu & Debian, 32 & 64 bits)
  • Mac OS X 10.4+
Согласитесь, когда переходишь с одной операционной системы на другую, чуствуешь некоторое время дискомфорт. Просто элементарно не хватает того, к чему ты привык. Нужно время, чтобы адаптироваться к новой ситуации. И именно тут приходят на помощь кросплатформенные программы, которые ты уже знаешь по другим системам и прекрасно в них ориентируешья. Это уменьшает период адаптции и повышает как качество разработки, так и скорость. Ко всем другим приемуществам CodeBlocks еще добавлю и то, что он абсолютно бесплатен и все его исходные коды открыты.
 
Маленькое отступление.
Если вы не искушенный в делах программирования пользователь, то сразу хочу оговориться, что CodeBlocks всего лишь ИДЕ - интегрированная среда для разработки вашего продукта, то есть это все окошки, где вы вводите текст своей программы, где ведёте проект, добавляя или удаляя файлы, прилинковывая библиотеки, создавая хидеры и т.д. А программа, которая переводит текст вашей программы в выполняемый exe файл - называется компилятор. Компилятор это отдельная от ИДЕ программа, которая выполняет свою функцию из командной строки, а ИДЕ лишь графическая оболочка, для удобства набирания и отлаживания программ. В CodeBlocks есть много "вкусных" фишек таких как Plugin-ы, userTamplate-ы и другие.  Так вот, как я уже сказал, для разработки программ нам еще нужен компилятор. Вот список компиляторов, которые поддерживает CodeBlocks:
 
Supported compilers :
  • GNU GCC (incl. G77) (Linux)
  • MinGW GCC (incl. G77) (Win32)
  • MSP430 GCC (Win32, Linux, BSD)
  • TriCore GCC (Win32, Linux)
  • PowerPC GCC (Win32, Linux)
  • Apple GCC (Xcode) (Mac OS X)
  • Microsoft Visual C++ Toolkit 2003 (Win32)
  • Microsoft Visual C++ 2005 (Win32)
  • Borland's C++ Compiler 5.5 (Win32)
  • DigitalMars C/C++ (Win32)
  • OpenWatcom (Win32)
  • Intel C++ compiler (Win32)
  • Small Device C Compiler (SDCC)
  • Digital Mars D (Win32, Linux)
  • GDC D Compiler
Уверен, что можно настроить эту ИДЕ и на использование с другими компиляторами. 
Так как ИДЕ у нас Free, то и компилятор тоже надо брать free-шный, то есть свободный. И, о чудо, можно скачать CodeBlocks уже в комплекте с компилятором minGW (Minimalist GNU for Windows). Качаем именно этот вариант! (codeblocks-8.02mingw-setup.exe 28 Feb 2008  19.3 MB) последний на момент написания статьи. Есть возможность скачать этот архив с двух сайтов Sourceforge или BerliOS, выбирайте сами. Установка программы тривиальна до безобразия, от вас не потребуется никаких навыков, кроме попадания и клацанья мышкой на нужной кнопке. Поставьте его в C:\Program Files\CodeBlocks , как он и предлагает по-умолчанию. При первом запуске выскочит окошко где надо будет указать компилятор с которым ИДЕ будет работать, если вы скачали архив с minGW, то напротив строки GNU GCC Compiler будет стоять слово Detect, в столбце Status. Жмыхаем дальше и попадаем в саму программу.
 
 
Давайте проверим ее работоспособность, выбираем Console Application жмем Create. CodeBlocks сам создал файл и обозвал его main.cpp. Заходим в него
 
 
И нажимаем F9. Так же (что равнозначно) можете нажать на иконку, которая находится в верхнем тулбаре, смотрите там идет шестеренка (скомпилить программу в exe-шник), треугольничик play(запустить exe-шник) и шестеренка с кнопкой play(что означает скомпилить, а потом запустить, по буржуйски Build & Run ) всплывающая подсказка подскажет вам, какую кнопку нажать.
 
 
Хеллоу Ворлд! Ого, все работает! Поздравляю!
(http://www.cprogramming.com/code_blocks/ - это вариант на английском языке.)
 
Пару слов об SDL.
Теперь разберемся почему SDL (Simple DirectMedia Layer). Это движок для быстрого и качественного создания графических приложений, в том числе и игр. Его создатель, талантливый программист Sam Oscar Lantinga.
 
Он был главным программистом(Lead Programmer) в Loki Software(August 1998 - January 2002). Эта компания занималась тем, что портировала игры с одной платформы(Windows) на другую (Linux). Результатом их работы стала библиотека SDL. Которая уменьшала трудозатраты на такого рода перевод игр в разы. Кстати, они же и "родители" OpenAL библиотеки(кросплатформа для звука), которую потом подхватили такие киты как Creative Technology и Apple Computer. Теперь Сэм заслуженно работает в одной из самых известных гейм-девелоперских контор: Blizzard Entertainment. 
 
Движок очень прост в освоении, есть активное комьюнити как на английском, так и на русском. А достаточно большое количество туторов, сделает ваш путь в освоении данного движка более легким. Стоит заметить, что идет постоянное развитие движка как самого ядра, так и дополнительных библиотек(модулей) уже насчитывается порядка 70 штук, отвечающих за работу со звуком, графикой, сетью, системами ввода и т.д. и т.п. К слову говоря, известный всем DosBox так же был написан с использованием SDL.
 
Как вы уже догадались SDL также работает на многих платформах(он собственно для этого и создавался). И мне кажется логичным объединение этих двух программ. То есть написание игр для различных платформ на кросплатформенном ИДЕ и кросплатформенном движке. И хочу заметить, что все три компонента, а именно ИДЕ(CodeBlocks) + компилятор(minGW) + движок(SDL) - бесплатны. Конечно, они бесплатны в рамках лицензии GNU.
 
Итак ИДЕ готово, и компилятор настроен, глаза дергаются, а руки делают ;) Остался последний шаг - установить сам SDL.
 
Ставим SDL.
ШАГ 1. Что же приступим. Возможно, кто-то из вас не узнаете ничего нового, а кому-то это может пригодиться.
Первым делом скачиваем саму библиотеку SDL с офф. сайта. http://www.libsdl.org/download-1.2.php Смотрим в разделе "Development Libraries" будем ставить для Windows значит скачиваем "SDL-devel-1.2.13-mingw32.tar.gz" (это последний релиз на момент написания статьи). Надо ли говорить или повторять из вышесказанного, что нам нужна minGW версия? Думаю, это очевидно ;) .
 
ШАГ 2.  Распаковываем содержимое архива во временную папку ( к примеру в c:\sdl ) Я пользуюсь winRar-ом , но подойдет и другой архиватор, который сможет распаковать SDL-devel-1.2.13-mingw32.tar.gz. Ок.
 
Теперь нам надо открыть директорию, куда мы установили CodeBlocks и войти в папку include. У меня это C:\Program Files\CodeBlocks\include видите там много разных файлов, сюда нам надо переместить содержимое папки C:\sdl\include , то есть все хидеры(заголовочные файлы SDL). Другими словами из C:\sdl\include берем папку SDL и переписываем в C:\Program Files\CodeBlocks\include ВАЖНО! переписываем именно папку, смотрите:
Далее, содержимое папки c:\sdl\lib переписываем в папку C:\Program Files\CodeBlocks\lib . Так теперь, о том что делать с файлом SDL.dll(он находится в папке  c:\sdl\bin), можно поступить двумя способами:
1. поместить этот файл в папку с вашим проектом. Но в этом случае в папку каждого вашего нового проекта надо будет класть этот файл, а иначе проект не запустится, не найдя SDL.dll рядом с собой.
2. можно поместить этот файл в C:\Program Files\CodeBlocks\bin или лучше в C:\Windows\system32 в этом случае, любой проект, скомпиленый для SDL вами или кем-то другим будет спокойно запускаться. Дело в том, что если запускаемое приложение нуждается в какой-то дополнительной библиотеке, то оно ищет эту библиотеку в текущей директории, а если его не находит там, то смотрит в C:\Windows\system32. Таким образом единожды поместив файл SDL.dll в эту папку, не будет никакой необходимости, как в первом случае, гонять этот файл по папкам. Я считаю это самым лучшим вариантом. Но если вы дадите поиграться в вашу новую игрушку другу, то не забывайте рядом с exe-шником положить библиотеку, ведь у него может и не быть этого файла в C:\Windows\system32 .
 
ШАГ 3. Запускаем CodeBlocks выбираем SDL Application. И у вас сформируется проект, уже с минимальным SDL приложением. Запускаем (F9) и получаем вот это:
Если получаем кучу предупреждений (warnings), значит неправильно переписали папку include. Если компилится, но рушится при запуске, тогда приложение не нашло файл SDL.dll . Если все получилось, то радуемся ;) И можем уже начинать писать какую-нить простенькую игрулину.
(http://cprogramming.com/tutorial/sdl/setup.html - это вариант на английском языке.)
 
Материалы:
 
 
 
 
 
 
 
 
 
 
Категория: Code::Blocks | Добавил: dimanche (26.05.2008) | Автор: Dmitriy
Просмотров: 26653 | Комментарии: 31 | Рейтинг: 5.0/7 |
Всего комментариев: 131 2 »
13 дмитр0  
0
ничего не получилось (простите я старался) спасибо за обучение, будем искать

12 Ibragim  
0
Классный сайт!

11 KeniGaile  
0
Вообще-то моя лучшая заметка http://anx-clan.ucoz.ru/load/60-1-0-468 - боты для counter strike 1.6. Если хотите поговорить - заходите

10 Wolferon  
0
Всё сделал, но в выводе выводит лишь это :
ld.exe cannot find -|SDL.dll|

9 Юрий  
0
когда надо было указать директорию с SDL я указал папку куда разархивировал SDL и он (CodeBlocks) говорит мне что ему нехватает какого то SDL.h почему так?

8 rantrave  
0
Огромное спасибо автору! Однако стоить уточнить, директории инклудов можно выбрать при создании проекта под Code::blocks.

5 arslan  
0
У меня почему то в скомпилированной программе вместо русских слов всякая ерунда выходит!!!! Помогите пожалуйста!!!

6 J3d1  
0
2 arslan
Да, существует такая проблемка. Это портит кровь всем начинающим, сам недавно столкнулся). Виндовая консоль нормально понимает только кодировку DOS866 а виндовый C::B по-моему по умолчанию использует Windows-1251 (это настраивается в меню Settings->Editor, но 866 codepage там нет). Выходов несколько, но самый простой - открыть исходник в Notepad++ (бесплатный текстовый редактор, кстати рекомендую), переключиться в нем на кодировку DOS866, написать нужные строки на русском и сохраниться save as, указав при сохранении тоже DOS866. Теперь обновляем исходный файл в Code::Blocks (русские строчки должны выглядеть коряво) и компилируем. Запускаем - все по-русски smile

7 J3d1  
0
То-же самое можно сделать в Far-manager'e

4 pac  
0
Не могу зайти на www.codeblocks.org с компа! В чем может быть проблема?

3 dimanche  
0
Да не за что, рад что помог smile

2 J3d1  
0
Ура, Получилось! Спасибо за статью!

1-10 11-11
Имя *:
Email *:
Код *:
Copyright MyCorp © 2024