Anthill Game Framework

Tiny framework for creating Flash games.

Инструменты пользователя

Инструменты сайта


guide:plugins

Различия

Здесь показаны различия между выбранной ревизией и текущей версией данной страницы.

Ссылка на это сравнение

guide:plugins [20.09.2013 21:47]
Anton Karlov изменения в описании и коде в связи с обновленной системой плагинов в версии 0.3.3
guide:plugins [22.10.2013 18:23] (текущий)
Илья Уткин
Строка 12: Строка 12:
 Если вам не нужна функциональность какого-либо из этих методов,​ то просто оставьте их пустыми в своем классе плагина. Если вам не нужна функциональность какого-либо из этих методов,​ то просто оставьте их пустыми в своем классе плагина.
  
-Начиная с версии **0.3.3** необходимо так же реализовать еще два геттера и сеттера:​+Начиная с версии **0.3.3** необходимо также реализовать еще два геттера и сеттера:​
  
   * ''​get tag():​String,​ set tag(aValue:​String):​void''​ — задает идентификатор (имя) для плагина;​   * ''​get tag():​String,​ set tag(aValue:​String):​void''​ — задает идентификатор (имя) для плагина;​
-  * ''​get priority():​int,​ set priority(aValue:​int):​void''​ — задает приоритет плагина,​ чем выше значение тем выше приоритет.+  * ''​get priority():​int,​ set priority(aValue:​int):​void''​ — задает приоритет плагина,​ чем выше значениетем выше приоритет.
  
  
Строка 25: Строка 25:
 Давайте рассмотрим создание плагина на примере решения простой задачи. Предположим,​ что мы используем в своей игре алгоритм поиска пути и нам необходимо реализовать его отладочную отрисовку,​ чтобы узнать насколько эффективно работает алгоритм поиска. Конечно,​ отладочную отрисовку найденного пути можно сделать,​ не прибегая к созданию плагина,​ но использование плагина будет наиболее оптимальным с точки зрения возможности его использования не только разными юнитами,​ но и разными проектами без необходимости переписывания кода. Давайте рассмотрим создание плагина на примере решения простой задачи. Предположим,​ что мы используем в своей игре алгоритм поиска пути и нам необходимо реализовать его отладочную отрисовку,​ чтобы узнать насколько эффективно работает алгоритм поиска. Конечно,​ отладочную отрисовку найденного пути можно сделать,​ не прибегая к созданию плагина,​ но использование плагина будет наиболее оптимальным с точки зрения возможности его использования не только разными юнитами,​ но и разными проектами без необходимости переписывания кода.
  
-Итак, пример кода плагина рисующего найденный путь:+Итак, пример кода плагинарисующего найденный путь:
  
 <code ActionScript3>​ <code ActionScript3>​
Строка 144: Строка 144:
 **Внимание:​** Обратите внимание на то, где вы добавляете плагин в обработку Anthill (то есть используете методы ''​AntG.plugins.add()''​ и ''​AntG.plugins.remove()''​). При создании плагинов,​ предназначенных для публичного распространения,​ рекомендуется реализовывать автоматическое удаление и добавление плагина в обработку внутри самого класса плагина,​ чтобы вам или кому-то еще не приходилось следить за их своевременным добавлением и удалением вручную. **Внимание:​** Обратите внимание на то, где вы добавляете плагин в обработку Anthill (то есть используете методы ''​AntG.plugins.add()''​ и ''​AntG.plugins.remove()''​). При создании плагинов,​ предназначенных для публичного распространения,​ рекомендуется реализовывать автоматическое удаление и добавление плагина в обработку внутри самого класса плагина,​ чтобы вам или кому-то еще не приходилось следить за их своевременным добавлением и удалением вручную.
  
-Все это конечно упрощенный пример плагина для наглядности. Как правило,​ плагины создаются для того, чтобы решать более объемные задачи. И при этом плагины могут состоять из любого количества классов,​ условие одно: основной класс вашего плагина должен имплементировать интерфейс ''​IPlugin''​.+Все этоконечноупрощенный пример плагина для наглядности. Как правило,​ плагины создаются для того, чтобы решать более объемные задачи. И при этом плагины могут состоять из любого количества классов,​ условие одно: основной класс вашего плагина должен имплементировать интерфейс ''​IPlugin''​.
  
-Обработка плагинов производится в отдельном потоке (образно говоря),​ и выполняется после обработки и рендера игровых объектов внутри Anthill. При обработке плагинов,​ так же как и для рендера с процессингом объектов,​ считается время, которое было затрачено на обработку и отрисовку используемых вами плагинов. Таким образом вы можете увидеть сколько времени ушло на обработку плагинов в окне производительности:​+Обработка плагинов производится в отдельном потоке (образно говоря),​ и выполняется после обработки и рендера игровых объектов внутри Anthill. При обработке плагинов,​ так жекак и для рендера с процессингом объектов,​ считается время, которое было затрачено на обработку и отрисовку используемых вами плагинов. Таким образом вы можете увидетьсколько времени ушло на обработку плагинов в окне производительности:​
  
 {{ :​guide:​plg_perfomance.jpg?​nolink&​400 }} {{ :​guide:​plg_perfomance.jpg?​nolink&​400 }}
guide/plugins.txt · Последние изменения: 22.10.2013 18:23 — Илья Уткин