Я ищу способ рисования полупрозрачных фигур в рамках draw2d. В настоящее время я использую setAlpha()
из org.eclipse.draw2d.Graphics
. Проблема в том, что он тормозит весь UI, если я рисую более одной полупрозрачной фигуры.
Вот еще один вопрос, касающийся его производительности [1]
. Он нацелен на SWT на Linux, я ориентируюсь как на Linux, так и на Windows. Система Windows (Win7) имеет графическую карту с поддержкой 3D и i7 q720. Linux-машина оснащена еще лучше и поддерживает 3D, так что я думаю, что это не проблема производительности платформы.
У меня вопрос: есть ли эффективный способ добиться альфа-смешивания в draw2d?
Я пытался использовать OpenGL соответственно LWJGL. Поскольку draw2d и OpenGL нельзя смешивать, и я должен полагаться на draw2d, я подумал, что могу сделать что-то вроде этого: draw2d -> OpenGL -> draw2d здесь, где canvas
— это холст, на котором происходит рисование OpenGL, а c1
— это холст, на котором я хочу получить нарисованное изображение OpenGL. Но моя попытка скопировать рисунки OpenGL не работает, я получаю только базовый фон Canvas (canvas
). Кроме того, я не уверен, что это улучшит "производительность" в любом случае...
Спасибо,
atx