2008-11-07 1 views
2

Фон: В настоящее время я использую пользовательские элементы управления в своем проекте C# (основные элементы управления просто рисуют пользовательский внешний вид (с использованием gdi +?)). Магистрат этих элементов управления имеет прозрачные сегменты для неправильной формы и т. Д.C# Combine GDI + и OpenGL/DirectX

Задача: Я ищу наложение полупрозрачной (неправильной формы) панели над группой элементов управления. В настоящее время я зажимаю панель покрытия к области задействованных элементов управления. Это прекрасно работает, и результаты выглядят хорошо, однако процесс настолько медленный.

Вопрос: Есть ли способ ускорить процесс рендеринга, смешивая в немного OpenGL/DirectX и получая видеокарту для выполнения всего необходимого рендеринга, а не полагаясь на довольно медленный процессор?

+0

wpf использует аппаратное ускорение, а gdi не – 2015-04-04 10:27:00

ответ

3

AFAIK Вы не можете смешивать GDI + и OpenGL/DX.

Если вы получаете низкую производительность и абсолютно уверены, что это узкое место в GDI +, а не в коде, чем может имеет смысл угробить GDI + и заменить его DX/OGL. (Вы должны были бы написать свои собственные элементы управления, хотя это было бы большой болью в @ $$)

Или, для более простого подхода, попробуйте WPF/Silverlight! По умолчанию он настраивается и скинируется, и он основан на DX.

+0

К сожалению, у меня нет времени, чтобы полностью использовать систему DX и не изучать Silverlight. С этой целью я даже не уверен, что целевой компьютер XP * может * запустить Silverlight! – 2008-11-07 09:53:03

+0

Вы можете смешивать GDI + и DirectX. – 2008-11-07 11:42:23

2

Посмотрите на WPF и Silverlight. вы лучше спали бы ночью.

 Смежные вопросы

  • Нет связанных вопросов^_^