Проект, над которым я работаю, требует возможности трансформировать любой из 4 углов изображения.Поскольку GDI +, к сожалению, не имеет этой возможности, мы прибегаем к использованию 3D-графики DirectX.
Хотя у меня есть квадратная сетка с текстурой, которая успешно отображается на экране, мне нужно иметь возможность генерировать изображениеиз этого рендеринга, с фоном, установленным на прозрачный.Есть ли способ эффективно достичь этого?
Предпочтительно, я бы хотел сделать это без использования Control для инициализации устройства.Кроме того, я не возражаю против варианта создания собственного невидимого элемента управления, который будет генерировать для меня изображение.
Редактировать :
На самом деле, я только что понялпрозрачный фон строго не нужен, но это немного помогло бы производительности нашего проекта.
В любом случае, мне повезло, что-то подобное, но это слишком медленно.Возможно, есть лучший метод?
// Create a surface to render an image to
Surface mSurface = mDevice.GetRenderTarget(0);
// Render the visualization
mDevice.Clear(ClearFlags.Target, Color.Transparent, 1.0f, 0);
mDevice.BeginScene();
/* Do some amazing stuff */
// Exit rendering
mDevice.EndScene();
mDevice.Present();
// Render the bitmap images
GraphicsStream mGraphics = SurfaceLoader.SaveToStream(
ImageFileFormat.Bmp, mSurface);
Image mImage = new Bitmap(mGraphics, false);