Delphi World - это проект, являющийся сборником статей и малодокументированных возможностей  по программированию в среде Delphi. Здесь вы найдёте работы по следующим категориям: delphi, delfi, borland, bds, дельфи, делфи, дэльфи, дэлфи, programming, example, программирование, исходные коды, code, исходники, source, sources, сорцы, сорсы, soft, programs, программы, and, how, delphiworld, базы данных, графика, игры, интернет, сети, компоненты, классы, мультимедиа, ос, железо, программа, интерфейс, рабочий стол, синтаксис, технологии, файловая система...
Изучаем DelphiX - Часть 0 - Теория

Оформил: XVeL
Автор: Влад Энгельгардт
WEB-сайт: http://gamedev.ru


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

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

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

    1. Обзор DelphiX (Что? К чему?).
    2. Принцип написания кода и основные процедуры для классов.

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

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;
-Альтернатива, только при уничтожении объекта.

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

Проект Delphi World © Выпуск 2002 - 2004
Автор проекта: ___Nikolay