| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Звук, графика и видео > GLScene - проблемы с дымом |
| Автор: p0s0l 31.5.2005, 23:34 | ||
| Блин, диплом горит, а некоторые мелочи не дают мне покоя, а разбираться некогда уже. Если кто с GLScene имел дело, помогите! Вообщем, загружаю в GLFreeForm модельку завода, у GLFreeForm добавлен эффект TGLSourcePFXEffect для создания эффекта дыма, идущего из труб завода... В GLPFXRenderer и в GLPerlinFXManager свойство BlendingMode = bmTransparent. И тут начинаются интересные вещи: 1. Если GLPFXRenderer стоит в начале сцены, то всё бы ничего, но нет прозрачности дыма, что очень сильно бросается в глаза. 2. Если GLPFXRenderer засунуть в конец сцены, то прозрачность появляется и всё бы ничего, но у меня динамически создаются объекты (эти же заводы), и на фоне этих новых заводов глючит дым - как бы это объяснить, там, где должны быть прозрачные пикселы дыма, показывается так, как будто бы этих новых объектов нет (т.е. прозрачность-то есть, но смешивается она не с тем, что находится за созданными объектами, см. присоединенный рисунок)... (объекты создаю так:
Такое предположение, что новосозданные объекты как будто бы рендерятся после дыма, а т.к. у PFXRenderer'а стоит ZWrite = True, то понятное дело, что на месте уже нарисованного дыма ничего рисоваться не будет. Если ZWrite отрубить, то получается так, что более дальние объекты рисуются поверх дыма. |
| Автор: p0s0l 31.5.2005, 23:54 |
| Выход, как мне кажется, заключается в том, чтобы сделать так, чтобы дым рендерился после динамически созданных объектов... |
| Автор: p0s0l 1.6.2005, 00:06 | ||
Решение оказалось простым: сделал 1 общий GLDummyCube (стоящий до GLPFXRenderer), и в него уже засунул завод. Новые объекты заводов засовывались уже в этот общий GLDummyCube, поэтому рисовались до дыма. |
| Автор: Yanis 1.6.2005, 00:24 |
| |
| Автор: p0s0l 1.6.2005, 10:35 |
| Это не курсач, а диплом Когда будет у тебя диплом - сам придумаешь себе темку по-интереснее У меня диплом до ужаса простой (простой, но объемный), это лабораторный практикум по моделированию. Руководитель просил сделать красиво... Вот и делаю |
| Автор: Yanis 2.6.2005, 09:59 | ||
Ой! Точно |
| Автор: RA 2.6.2005, 21:58 |
| p0s0l Не забудь нам показать результат, очень интересно. Зы: ну если не сложно. |
| Автор: Yanis 3.6.2005, 00:04 | ||
Я бы даже сказал - если не жалко |
| Автор: p0s0l 3.6.2005, 12:12 |
| Ок, как-нибудь покажу |