Часть 0 " Теория"
Здравствуйте дорогие мои! Сегодня мы будем, учится работать в
DelphiX. В этой части вы узнаете:
1. Обзор DelphiX (Что? К чему?)
2. Принцип написания кода и основные процедуры для классов
Ну что же приступим:
Обзор 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 (где он будет отображать всё действия происходящие на сцене). Вот таблица зависимых и вспомогательных:
Принцип написания кода и основные процедуры для классов.
Весь принцип очень прост, и удобен, сейчас объясню: весь код строится по классам в каждом классе свои процедуры, каждый новый тип юнита это новый класс и в каждом
классе свои процедуры. Рассмотрим на живом примере
- возьмём камень и бумагу. Бумага мнётся, камень нет. Так и здесь в одном классе это свойство есть в другом нет, вот рассмотрим кусок кода отвечающий за класс:
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;
Здесь нам виден класс Playerfa его процедуры:
procedure DoCollision(Sprite: TSprite; var Done: Boolean); override;
- Это процедура столкновения, что будет происходить при столкновении
procedure DoMove(MoveCount: Integer); override;
- Это процедура движения в ней указывается, как класс будет двигаться
( в следующих частях я опишу и расскажу про все функции и их использование на практике).
constructor Create(AParent: TSprite); override;
- Это конструктор Create, очень полезная вещь, он отвечает за
происходящие во время создания объекта
событиями.
destructor Destroy; override;
- Альтернатива для уничтожения объекта.
После написания класса каждая процедура расписывается, и всё, можно писать сам код.
Но это мы будем делать позже, ибо
продолжение следует.