Войти
Влад ЭнгельгардтСтатьи

Изучаем DelphiX

Автор:

Часть 0: «Теория».
  1. Обзор DelphiX.
  2. Принцип написания кода и основные процедуры для классов.
Часть 1: Первая игра.
Часть 2: Усложняем нашу игру.
  Создание анимации.
  Cоздание примитивного AI.
  Создадим простенькие взрывы.
Часть 3: Крутим спрайты.
Часть 4: Разбираем классы.
Часть 5: AI.
Часть 6: Мультиплеер.
Часть 7: Звуки и музыка.
Часть 8: The End?

Часть 0: «Теория».

«Теория, теория ну а практика,
а практика потом» —
Так подумал автор, начиная
писать эту статью.

Здравствуйте дорогие мои! Сегодня мы будем учиться работать в DelphiX.

В этой части вы узнаете:

Ну что же, приступим:

1. Обзор DelphiX.

DelphiX — это набор компонентов, способный облегчить использование DirectX в Delphi приложениях и использовать всю мощь DirectX.

Основные компоненты DelphiX:

TDXDraw — (Это такой мониторчик) Дает доступ к поверхностям DirectDraw (проще говоря, эта вещь которая отображает всё) Проще говоря, сам DirectDraw.

TDXDib - Позволяет хранить DIB (Device Independent Bitmap)

TDXImageList — Позволяет хранить серии DIB, Jpg, bmp-файлов, что очень удобно для программ, содержащих спрайты. Позволяет загружать DIB`ы с диска во время выполнения программы.

TDXSound — Проигрыватель звуков в формате Wav.

TDXWave — «Контейнер» для wav-файла.

TDXWaveList — Позволяет хранить серии для wav-файлов.

TDXInput — Позволяет использовать DirectInput, т.е. получить доступ к устройствам ввода информации (мышь, клавиатура, джойстик:).

TDXPlay — Компонент позволяющий обмениваться информацией на компьютерах.

TDXSpriteEngine — Спрайтовый движок.

TDXTimer — Более точный, чем TTimer.

TDXPaintBox — Альтернатива TImage, только DIB-версия.

В DelphiX есть самостоятельные компоненты, а есть вспомогательные, вот, например, DXSpriteEngine не может без DXDraw (где он будет отображать всё действия происходящие на сцене). Вот таблица зависимых и вспомогательных:

Изображение

2. Принцип написания кода и основные процедуры для классов.

Весь принцип очень прост и удобен, сейчас объясню: весь код строится по классам, в каждом классе свои процедуры, каждый новый тип юнита это новый класс и в каждом классе свои процедуры. Рассмотрим на живом примере: возьмём камень и бумагу. Бумага мнётся, камень нет. Так и здесь, в одном классе это свойство есть, в другом нет, рассмотрим кусок кода отвечающий за класс:

TPlayerFa = class(TImageSprite)
   protected
    procedure DoCollision(Sprite: TSprite; var Done: Boolean); override;
    procedure DoMove(MoveCount: Integer); override;
   public
    constructor Create(AParent: TSprite); override;
    destructor Destroy; override;
   end;

Здесь нам виден класс TplayerFa, его процедуры:

procedure DoCollision(Sprite: TSprite; var Done: Boolean); override;

— Это процедура столкновения, что будет происходить при столкновении

procedure DoMove(MoveCount: Integer); override;

— Это процедура движения, в ней указывается, как класс будет двигаться.
( в следующих частях я опишу и расскажу про все функции и их использование на практике)

constructor Create(AParent: TSprite); override;

— Это конструктор Create очень полезная вещь он отвечает за происходящим во время создания объекта.

destructor Destroy; override;

— Альтернатива, только при уничтожении объекта.

После написания класса каждая процедура расписывается, и всё, можно писать сам код.
(Но это мы будем делать позже.)

Страницы: 1 2 38 9 Следующая »

#Delphi, #DelphiX

29 июня 2006 (Обновление: 28 фев. 2009)

Комментарии [4]

Бонус коды для World of Tanks Blitz бесплатно