Blitz3d уроки - 1. Создание окна

Итак, у вас есть прекрасная возможность почувствовать себя богом, который создаёт вселенную. Но сначала давайте разберёмся, из чего же она будет состоять:

А состоит она из всяких разных объектов. Большая часть – это так нами называемые меши. Что это такое? Сложно сказать словами, в общем меш – это просто модель. Цилиндр, куб, шар, ваша собственная модель – всё это меши. Они состоят из вершин (или вертексов) – это просто точки в пространстве, и треугольников, состоящих из трёх соединённых вершин. Но это можно пока и не запоминать – к этому мы придем потом. Но, кроме мешей, к объектам относятся: свет, камера, и пивоты. Пивоты – это невидимые точки в пространстве, которые очень помогают работать. Далее, из двухмерного мира к нам пришли спрайты. Нет, это не феи из Heroes of Might and Magic, - это просто плоские меши, состоящие из четырёх вертексов и двух треугольников, т.е. это просто плоская картинка. Потом плайн – тот же спрайт, только бесконечный. Проще говоря - плоскость! Их обычно используют для создания неба, воды – всего, что должно быть плоским и бесконечным. И, наконец террайн, но его мы затрагивать не будем.

Далее, вселенная - трёхмерная, так что у неё есть 3 оси – X,Y,Z. Ось X – это ось ширины, направленная слева направо. Ось Y – высота, идущая снизу вверх. И ось Z – как, бы длина, направленная вперёд! Эти оси существуют не только у всей вселенной, но и у каждого объекта тоже, но и об этом тоже по порядку…

Это была вводная часть в 3D мир, без которого нельзя было обойтись, чтобы знать, что вообще мы собираемся делать. Но, более или менее мы всё поняли, так что идём дальше! Пора уже приступать к программированию – зайдите в Блитц3D, и наберите следующий код:

Graphics3D 640,480,16,1

SetBuffer BackBuffer()

Repeat

Until KeyHit(1)

End

Момент, когда вы это запустите, можете считать историческим, и отмечать его, как день рождения… - вы только что создали собственный мир! Пусть там ничего не видно – просто он пока пустой!

Разберём все команды по порядку:

Graphics3D 640,480,16,1 – эта строчка инициализирует Direct3D, ну, и создаёт вселенную.
Синтакс такой: Graphics3D ширина, высота, глубина цвета, режим
Ширина, высота – размер создаваемого экрана (в пикселях есь-сно)
Глубина – глубина цвета – 16, 24 или 32 бита на пиксель.

Режим:
0 - оконный во время разработки (если возможно), полноэкранный в .exe формате;
1 - всегда полноэкранный
2 - всегда оконный
3 - всегда оконный, с возможностью изменения размеров окна.

SetBuffer BackBuffer() - устанавливает буфер на задний буфер. Те, кто знали, те поняли, те же, кто не знали, не поняли вообще... В общем, если хотите, чтобы всё было правильно, пишите эту команду после Graphics3D.

Repeat
Until KeyHit(1) 

- между этими двумя командами, у нас будет происходить сам цикл игры. Перевод таков: Повторять … пока не нажата клавиша Esc.

End – эта команда показывает, что программа завершена.

Что, не впечатляет? А зря – вы только что создали окно Direct3D – практически ваше окно в мир создания компьютерных игр!