Категории каталога

Программинг [38]
Программинг, уроки, формулы, туториалы
Dark Basic [31]
Помощь начинающим в Dark Basic (Статьи,учебники,книги)
Blitz 3d [7]
Статьи и уроки по Blitz 3d
C/C++ [8]
Статьи по C/C++
Delphi [12]
книги, уроки, статьи, программирование в Delphi
Game Maker [12]
Статьи, помощь для программистов игроделов на Game Maker
Ассемблер (Assembler) [5]
Стати по Ассемблеру для начинающих и продвинутых программистов
ВЕБ-ПРОГРАММИРОВАНИЕ [5]
Уроки и статьи по ВЕБ-программированию
Scirra Construct [0]

Форма входа

Приветствую Вас Гость!

Логин:
Пароль:

Поиск

Друзья сайта



    Случайное фото

    Статистика

    Онлайн всего: 2
    Гостей: 2
    Пользователей: 0

Поддержите наш проект

WebMoney:
R309699065243
U292079291240
Z373355457648

Счётчики


Rambler's Top100

Наш опрос

Каким антивирусом вы пользуетесь ?
Всего ответов: 147

Статистика

$COUNTERdiv>

Каталог статей

Главная » Статьи » Программинг » Dark Basic

Загрузка объектов (Dark Basic)
РУКОВОДСТВО ПО СОЗДАНИЮ 3D-ИГР
III. ИГРА

1. Загрузка объектов

Цель урока: научиться загружать объекты в 3D-сцену и строить фундамент игровой программы.

Существует множество различных приложений, способных создавать и сохранять 3D-модели. В DarkBASIC можно использовать как формат "X" DirectX, так и формат "3DS" 3DStudio. В отличие от стандартных примитивов DarkBASIC, модели этих форматов помогут вам создавать более реалистичные и богатые графикой сцены.

Sync On
Sync Rate 30
Hide Mouse
autocam off
 

Backdrop on
Set camera range 1,5000

Fog on
Fog distance 4000
Fog color RGB(128,128,128)
Color Backdrop RGB(128,128,128)

Rem Создаем матрицу
Make matrix 1,10000,10000,20,20

Rem Текстурируем матрицу
Load image "grass09.bmp",1
Prepare matrix texture 1,1,1,1
Fill matrix 1,0,1

rem Присваиваем координатам вершин матрицы случайные значения
randomize matrix 1,125

rem Загружаем объект
Load object "idle.x",2

position object 2,5000,Get Ground Height(1,5000,5500),5500

Rem Основной цикл
Do
set cursor 0,0
print X#
print Y#
print Z#
 Rem  Сохраняем угол объекта
 CameraAngleY# = Camera angle Y()

 Rem  Управление перемещением камеры
 If Upkey()=1
  XTest# = Newxvalue(X#,CameraAngleY#,20)
  ZTest# = Newzvalue(Z#,CameraAngleY#,20)
  If XTest#>0 and XTest#<10000 and ZTest#>0 and ZTest#<10000
   Move camera 10
  Endif
 Endif

 If Leftkey()=1 then Yrotate Camera Wrapvalue(CameraAngleY#-5)
 If Rightkey()=1 then Yrotate Camera Wrapvalue(CameraAngleY#+5)

 X# = Camera position X()
   Z# = Camera position Z()

 Y# = Get ground height(1,X#,Z#)
 Position Camera X#,Y#+35,Z#

 Rem Обновляем экран
 Sync
Loop
 

Прежде всего, введем несколько полезных команд.

  Hide Mouse

Команда "Hide mouse" убирает с экрана курсор мыши. В большинстве случаев в 3D-сценах курсор мыши на экране вам не понадобится.

  autocam off

Команда "Autocam Off" выключает режим автоматической камеры. Когда этот режим включен, то при создании каждого новый объект в DarkBASIC, камера перемещается для того, чтобы показать этот объект. Если загружается большое число объектов, камера будет показывать каждый из них по мере загрузки. Выключение этого режима также играет свою роль при загрузке матрицы. Когда режим автоматической камеры выключен, камера устанавливается в центр созданной вами матрицы. Если режим включен, то камера будет установлена в позицию с координатами (0,0,0) в 3D-сцене.

  Load object "idle.x",2

"Load Object" - основная команда для загрузки объекта в DarkBASIC. Первый параметр этой команды - имя файла объекта, загружаемого в 3D-сцену. Чтобы команда распознала имя файла, оно должно быть заключено в кавычки. Второй параметр команды - это номер, назначаемый данному объекту. Эта команда очень похожа на команды "Make Object". Все команды для работы с объектами, описанные в предыдущих уроках, будут работать с загруженными объектами точно так же, как они работают с объектами, созданными в DarkBASIC.

  Loop object 2

Команда "Loop Object" осуществляет циклическую анимацию загруженного в DarkBASIC объекта. Если загруженный объект не содержит данных об анимации, использование этой команды может вызвать ошибку. Создавая анимированный объект в специальной программе, обратите внимание на плавность анимации в цикле, в противном случае будет наблюдаться дергающееся движение при переходе модели от последнего к первому кадру анимации.



Ресурсы к урокам на Dark Basic

Категория: Dark Basic | Добавил: quadrathell (29.10.2008)
Просмотров: 2468 | Комментарии: 1 | Рейтинг: 5.0/1 |
Всего комментариев: 1
1  
нормальная статья для начинающих
тоесть для меня=)

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]