Назад

    Rem Устанавливаем синхронизацию
    Sync On
    Sync Rate 30

    Rem Создаем матрицу
    Make Matrix 1,2000,2000,50,50

    Rem mY - переменная для хранения высоты матрицы
    mY=100

    Rem Помещаем камеру над матрицей
    Position Camera 0,1000,0

    Rem Основной цикл
    Do

         Rem  Управление камерой с клавиатуры
         If Upkey()=1 then Move camera 10
         If Downkey()=1 then Move camera -10

         Rem Ввод для заполнения матрицы случайными значениями
         If Spacekey()=1 then randomize matrix 1,mY
         If Leftkey()=1 then mY=mY+1
         If Rightkey()=1 then mY=mY-1
         If mY < 1 then mY =1

         Rem Направляем камеру в центр матрицы
         Point Camera 1000,0,1000

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

Этот урок познакомит вас с командами, создающими матрицу. Матрица часто используется для создания объекта местности. Вы можете легко создавать горы, пологие холмы, пещеры и океаны при помощи нескольких строк кода. Помните, если вы встретите незнакомую команду без объяснений в данном руководстве, просмотрите предыдущие руководства или обратитесь за помощью к справочной системе DarkBASIC. Приведенная выше простая программа создает матрицу и позволяет вам масштабировать ее в изометрический проекции с использованием клавиш "стрелка вверх" и "стрелка вниз". Клавиши-стрелки и пробел позволяют вам управлять высотой и видом матрицы.

    Make Matrix 1,2000,2000,50,50

Первая новая команда, которую мы обсудим - это команда Make Matrix. Она создает объект "Матрица" в вашей 3D-сцене. Что означают параметры этой команды? Первое число после команды - это номер создаваемой матрицы. Этот номер, как и в командах управления объектами и изображениями, является уникальным идентификатором. Он позволяет вам создавать и манипулировать многочисленными матрицами в 3D-сцене. Последующие два числа - это размеры матрицы, которую вы хотите создать, в пространственных координатах сцены. Они представляют значения координат X и Y. В большинстве случаев эти два значения будут одинаковыми, но мы уверены, что вы сможете найти применение для матриц различных размеров. Следующие два числа - это количество сегментов матрицы. В этом примере матрица размером 2000х2000 разделена в каждом направлении на 50 сегментов (размер ячейки получается 40x40).
 

    If Spacekey()=1 then Randomize Matrix 1,mY

Эта строка кода знакомит нас с командой Randomize Matrix. При нажатии на пробел осуществляется вызов этой команды, которая задает случайное значение высоты каждой из вершин матрицы в диапазоне между 0 и числом, содержащимся в переменной mY. Первое число после команды -- это номер изменяемой матрицы. Второе число - это диапазон случайного значения для изменения высоты матрицы. В программе вы можете изменить значение переменной mY, нажимая клавиши "стрелка вверх" и "стрелка вниз". Нажатие на клавишу "пробел" позволяет изменить матрицу, что дает вам возможность создавать крутые пики гор или пологие холмы.

Попытайтесь изменять значения параметров в команде Make Matrix и посмотреть, каким образом они влияют на величину и размеры матрицы.

 

Hosted by uCoz