Watch, Follow, &
Connect with Us

Vsevolod Leonov

Бегущие огни, FireMonkey 3D

Пришлось мне поездить по странам СНГ (Узбекистан, Грузия, Беларусь, Украина), где нашел ряд милых инженерному мозгу достопримечательностей:  Телебашня в Тбилиси, Национальная библиотека в Минске. Захотелось воспроизвести наблюдаемые эффекты средствами FireMonkey 3D. Действовал абсолютно "на удачу", были небольшие волнения на тему "переварит или не переварит". Вроде, эффекта достичь удалось.

Здесь просто создаются 3 грани, состоящие из маленьких квадартиков TPlane (FireMonkey 3D component). Сначала ставил "сферы", но, потом, решил отказаться. На хорошем удалении геометрическое сходства "лампочки" и "сферы" сходит "на нет", тогда как производительность будет ниже (гипотеза, не проверял). Затем, конечно, получил массу удовольствия, синхронизируя движение по 3 граням. Есть, конечно, мысли по свёртке 3D в 2D, но смысл был просто попробовать. Фундаментальным нововведением FireMonkey 3D в Delphi XE3 стало вынесение материала в отдельный объект (одного из 3-х возможных типов). Переключаются не цвета, а ссылки на объекты-материалы, хранящие в себе также и цвет. Код становится яснее и проще.

Сейчас очень популярно украшать разными лампочками всё, что под руку попало (от скутера до телебашни). Сделать прототип в FireMonkey 3D достаточно просто. Для отладки методов передвижения желательно использовать небольшие "полянки". Запуск тестового приложения на Mac OS дал существенно более высокую производительность и яркость цветов, что позволило создать эстетическую близость эмулированных и наблюдаемых в живой природе эффектов.

Posted by Vsevolod Leonov on November 29th, 2012 under C++Builder XE3, Delphi XE3, FireMonkey |



3 Responses to “Бегущие огни, FireMonkey 3D”

  1. Deeptown12 Says:

    Все это очень хорошо, все очень замечательно. Одно плохо, Всеволод, это то, что вы выкладываете видео своих примеров без исходного кода. Многие учатся на примерах. А тут их нет, получается не в обиду будет сказано, хвастаство по типу смотрите как я могу сделать. Мне например, не все понятно в реализации переключений цветов.

  2. Андрей Says:

    Пожалуйста, выкладываете исходники, если Вас не затруднит.

  3. Andrei Amelchanka Says:

    Пожалуйста, выкладывайте исходники, если Вас не затруднит.

Leave a Comment



Server Response from: BLOGS2