| Blitz3D - Знакомство с Движком! |
|
DraggonFantasy |
Дата: Среда, 09.03.2011, 00:00 | Сообщение # 1 |
[ Модератор ]
( Twilight Sparkle )
Сообщений: [1373]
|
Здравствуйте, уважаемые пользователи этого сайта. Вы наверняка уже соскучились по моим урокам, а если нет, то на текстуре вашего лица появится фингал (если что - это шутка, а не оскорбление или что-то типа того) Сегодня я вам расскажу о замечательном движке Blitz3D, он способен на многое, единственное что жаль - он использует DirectX 8 (или 7, точно не знаю). Но это можно исправить с помощью библиотеки Xors3D, но она к сожелению платная. И так, приступим к уроку! Первая игра!!! Первая игра у нас будет мега простая и как может показатся после запуска мега крутая. Первым делом откроем сам Blitz3D. Увидим Приветствие, выберем New из меню File (или просто нажмем комбинацию клавиш CTRL+N). Сейчас будет самое интересное - набор самой игры. Раскрою небольшой секрет - мы сейчас напишем маленький текстовой "квестик". Сразу скажу в блице комментарии (то что не читается как код) обозначается знаком ; Вот собственно код (позже мы рассмотрим функции): Code Graphics 640,480,2 ;Старт 2D графического режима, первые 2 аргумента (640 и 480) это размер экрана, третий (2) это количество цветов (в битах) font=LoadFont("Arial",16) ;Загружаем шрифт Arial с размером 16 SetFont font ;Печатаем шрифтом, который мы загрузили в пред. строке Print "Введите ваше имя:" ;Печатаем текст "введите ваше имя" name$=Input() ;Читаем то что игрок вводит в переменную name$ (знак $ означает что переменная строковая, тоесть может иметь и буквы и цифры) Print "Сколько вам лет?" ;Пишем текст age=Input() ;Читаем введенное игроком в переменную age (заметьте знака $ нету, тоесть переменная может содержать ТОЛЬКО цифры) If age=0 Then age=1 ;Если игрок ввел 0 или ввел буквы, то age будет равен 1 Print "Ваше имя "+name$+", вам "+age+" лет" ;Выводим текст с именем (name$) и возрастом (age) знак + значит что мы закрываем ковычки, но продолжаем писать нужный текст (пригодится для вывода переменных, констант и прочего) .metka ;А это метка, метки нужны чтобы в любой момент откуда угодно перейти к нужному участку кода Print "Вы можете пойти в ДОМ, можете погладить КОТа" ; Пишем текст action$=Input() ;Читаем .act1 ;Метка If action$="дом" Then Goto dom ;Если игрок ввел "дом" то переходим к метке dom If action$="кот" Then Goto kot ;То же и самое что с "домом" только метка другая=) If action$<>"дом" Or action$<>"кот" Then Goto metka ;Если игрок ввел не "дом" и не "кот", то возвращаемся к метке metka (она в начале) Goto act1 ;Возвращаемся к проверке введенного игроком (нужно чтобы сразу не переходило на следующую строку) .dom Print "Вы в доме!!!" ;Мы дома=)
action2$=Input() .act2 If action2$="" Then Goto metka Goto act2 .kot Print "Вы погладили вашего кота и он остался довольным :)" action3$=Input() .act3 If action3$="" Then Goto metka Goto act3 Итак, приступим к просмотру) Оператор Graphics переводит программу (игру) в 2D режим. В 1 аргументе ширина, во втором высота, в третьем кол-во цветов (в битах) Функция LoadFont загружает шрифт, первый аргумент название шрифта, второй его размер Функция SetFont ставит нужный нам шрифт (текст будет писаться этим шрифтом), единственный аргумент - переменнная со шрифтом. Функция Print выводит введенный текст на экран Функция Input считывает данные, введенные игроком Метки в Blitz3D ставятся так ".название_метки" (без ковычек, точка обязательна) Функция Goto переходит на указанную метку Вот и первый урок кончился. Для тех, кому лень писать код я сделал пример. Вот скриншот того что получается:
Сообщение отредактировал: Дракон - Среда, 09.03.2011, 12:59 |
 |
| | |
|
Filinshein |
Дата: Среда, 09.03.2011, 00:02 | Сообщение # 2 |
[ Администратор ]
( Я добрый... )
Сообщений: [1847]
|
Отлично
|
 |
| | | | |
|
Hagrael |
Дата: Среда, 09.03.2011, 06:09 | Сообщение # 4 |
[ Пользователь ]
Сообщений: [1471]
|
А разве Graphics можно назвать функцией? Это скорее оператор.
|
 |
| | | | |
|
Призрачный_Гонщик |
Дата: Четверг, 10.03.2011, 10:41 | Сообщение # 6 |
[ Пользователь ]
Сообщений: [42]
|
ты это называешь игрой?)
|
 |
| | |
|
DraggonFantasy |
Дата: Четверг, 10.03.2011, 15:11 | Сообщение # 7 |
[ Модератор ]
( Twilight Sparkle )
Сообщений: [1373]
|
Призрачный_Гонщик, Нет, я просто сказал что в этом уроке я вам дам те основы, которые пригодятся в создании текстовых квестов.
|
 |
| | |
|
АБВ[ZiP] |
Дата: Пятница, 11.03.2011, 15:17 | Сообщение # 8 |
[ VIP ]
( [Работаю по настроению] )
Сообщений: [196]
|
Дракон, норм, только Я на нем делал программу просмотра дизайна, а так урок нормальный, для начала работы на нем сойдет.
|
 |
| | |
|
DraggonFantasy |
Дата: Пятница, 11.03.2011, 15:18 | Сообщение # 9 |
[ Модератор ]
( Twilight Sparkle )
Сообщений: [1373]
|
АБВ[ZiP], Спасибо
|
 |
| | |
|
Призрачный_Гонщик |
Дата: Понедельник, 22.08.2011, 18:17 | Сообщение # 10 |
[ Пользователь ]
Сообщений: [42]
|
Сори что подымаю тему, но приспичело создать какойнибудь уровень игры=) ктонибудь может обьяснить как на этом движке создаются 3D игры, или дать ссылку на бесплатные книги и уроки по этому поводу, а то я попросматривал темы на этом форуме и понял что тут куча тем про разные движки и языки программирования, ктото начинает обьяснять основы создания игр на какихто движках или программирования игр, но все это так и заканчивается на примерах которые даются в любой книге в первойже главе))
|
 |
| | |
|
DraggonFantasy |
Дата: Понедельник, 22.08.2011, 18:29 | Сообщение # 11 |
[ Модератор ]
( Twilight Sparkle )
Сообщений: [1373]
|
Призрачный_Гонщик, Вот чудесный учебник по Блицу
|
 |
| | |
|
Призрачный_Гонщик |
Дата: Понедельник, 22.08.2011, 19:02 | Сообщение # 12 |
[ Пользователь ]
Сообщений: [42]
|
Дракон, а ты создавал 3D игры на этом движке???
|
 |
| | |
|
DraggonFantasy |
Дата: Понедельник, 22.08.2011, 19:08 | Сообщение # 13 |
[ Модератор ]
( Twilight Sparkle )
Сообщений: [1373]
|
Призрачный_Гонщик, Нет, я только "баловался", а на создание игры на Блице решительности не хватало - куча идей, не знал какую лучше выбрать.
|
 |
| | |
|
Ternal |
Дата: Среда, 15.02.2012, 19:20 | Сообщение # 14 |
[ Пользователь ]
Сообщений: [4]
|
СПС
|
 |
| |
|