2013-04-23 8 views
1

Я обрабатываю с помощью SlimDX элемент управления в форме. Поскольку размер этого элемента управления может меняться очень часто, и существует множество сложных сеток, традиционный метод свободной перезагрузки может быть слишком медленным на мой вкус. Любой способ увеличить его?ли это способ сбросить устройство в (slimdx, dx9) без утилизации всех объектов, связанных с устройством?

ответ

1

создать дополнительный SwapChain связанный с текущим окном с использованием IDirect3DDevice9 :: Метода CreateAdditionalSwapChain,

затем получить обратно буфер нового SwapChain, и используйте IDirect3DDevice9 :: метод SetRenderTarget установить задний буфер новый SwapChain как цель визуализации,

когда вы закончили свои рисунки, вызовите данный способ нового SwapChain вместо IDirect3DDevice9 :: настоящее,

когда окно изменяет размер, просто освободить дополнительный SwapChain и воссоздать i t с новыми размерами задних буферов и снова настройте объект настройки рендеринга, теперь вам не нужно выполнять сброс устройства, что очень медленно.

если у вас есть какие-либо дополнительные вопросы, напишите мне: [email protected]

Я китайский так что мой английский не так хорошо, простите меня.