Помогите с Directdraw!
Имеется форма, к которой прикреплена главная поверхность. На эту поверхность выводится графика из разных файлов, фрагменты этой графики пересекаются. Для анимации поверхность обновляется по таймеру со скоростью несколько раз в секунду, при этом возникают разные "мерцающие эффекты", тоесть части объектов, которые пересекаются начинают мигать. Как от этого избавиться? Используется VB6 и DirectX7.
Цитата:
Originally posted by artlav
Проблемма такая:
Имеется форма, к которой прикреплена главная поверхность. На эту поверхность выводится графика из разных файлов, фрагменты этой графики пересекаются. Для анимации поверхность обновляется по таймеру со скоростью несколько раз в секунду, при этом возникают разные "мерцающие эффекты", тоесть части объектов, которые пересекаются начинают мигать. Как от этого избавиться? Используется VB6 и DirectX7.
Проблемма такая:
Имеется форма, к которой прикреплена главная поверхность. На эту поверхность выводится графика из разных файлов, фрагменты этой графики пересекаются. Для анимации поверхность обновляется по таймеру со скоростью несколько раз в секунду, при этом возникают разные "мерцающие эффекты", тоесть части объектов, которые пересекаются начинают мигать. Как от этого избавиться? Используется VB6 и DirectX7.
Попробуй обратиться в форум "Графика".
Решение всегда одно. Со времен еще Си под Windows помню, что проблема с миганием при перерисовки решалась очень просто: необходимо выводить твои графики в промежуточный буфер (создается копия bitmap DC твоей формы), а уже потом, сформированное изображение, все одним махом копируется по битово на твою форму, вуаляя - это наиболее простой и повсеместно используемый вариант, только техническое решение может быть разное, в DirectX тоже обязательно должен быть аналог такого буфера (я тока через winAPI DC умею)
Цитата:
Originally posted by SergeySV
Решение всегда одно. Со времен еще Си под Windows помню, что проблема с миганием при перерисовки решалась очень просто: необходимо выводить твои графики в промежуточный буфер (создается копия bitmap DC твоей формы), а уже потом, сформированное изображение, все одним махом копируется по битово на твою форму, вуаляя - это наиболее простой и повсеместно используемый вариант, только техническое решение может быть разное, в DirectX тоже обязательно должен быть аналог такого буфера (я тока через winAPI DC умею)
Решение всегда одно. Со времен еще Си под Windows помню, что проблема с миганием при перерисовки решалась очень просто: необходимо выводить твои графики в промежуточный буфер (создается копия bitmap DC твоей формы), а уже потом, сформированное изображение, все одним махом копируется по битово на твою форму, вуаляя - это наиболее простой и повсеместно используемый вариант, только техническое решение может быть разное, в DirectX тоже обязательно должен быть аналог такого буфера (я тока через winAPI DC умею)
Вот меня как-раз техническое решение и интересует...