Перейти к содержанию

Рекомендуемые сообщения

Года я рисую линию у меня цвет фона становится черным 

Спойлер

using SharpDX;
using System.Windows.Forms;
using SharpDX.Direct2D1;
using System.Drawing;
using SharpDX.Mathematics.Interop;
using Factory = SharpDX.Direct2D1.Factory;

namespace testDX
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();

            this.AllowTransparency = true;
            this.BackColor = Color.AliceBlue;
            this.TransparencyKey = this.BackColor;
        }

        public void Draw(SolidColorBrush _brush, WindowRenderTarget _device)
        {
            _device.BeginDraw();
            _device.DrawLine(new RawVector2(0, 0), new RawVector2(100, 100),_brush);
            _device.EndDraw();
        }

        private void button1_Click(object sender, System.EventArgs e)
        {
            var _factory = new Factory();

            var _renderProperties = new HwndRenderTargetProperties
            {
                Hwnd = Handle,
                PixelSize = new Size2(Size.Width, Size.Height),
                PresentOptions = PresentOptions.None
            };                                              

            var _device = new WindowRenderTarget(_factory, new RenderTargetProperties(new PixelFormat(SharpDX.DXGI.Format.B8G8R8A8_UNorm,AlphaMode.Premultiplied)), _renderProperties);
            var _brush = new SolidColorBrush(_device, new RawColor4(255, 0, 0, 1f));

            Draw(_brush, _device);
        }
    }
}

 

что было до рисования:

https://drive.google.com/file/d/1nQemv4q1MnxwUkYXcAP8tAvSoNXQr9AB/view?usp=sharing

после:

https://drive.google.com/file/d/1YN0yAvA-e-BDkmldS7g5QNlKSuPCljy1/view?usp=sharing

Изменено пользователем writeer

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Смотри инициализацию рендер таргета.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
22 часа назад, Xipho сказал:

Смотри инициализацию рендер таргета.

а это где?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
7 часов назад, writeer сказал:

а это где?

В твоем коде. Если ты его откуда-то скопировал, но не понимаешь, как он работает - придется топать и учить основы, иначе придется на каждом шагу тебе подсказывать. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
В 30.01.2020 в 20:58, Xipho сказал:

В твоем коде. Если ты его откуда-то скопировал, но не понимаешь, как он работает - придется топать и учить основы, иначе придется на каждом шагу тебе подсказывать. 

я знаю что мне нада в pixelformat изменть alphamode но при изиенение либо ошибка либо нет результата  

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
18 часов назад, writeer сказал:

при изиенение либо ошибка либо нет результата  

Значит, что-то делаешь неправильно. Рекомендую почитать документацию по формату пикселов в директе и их их реализацию в шарпДХ.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

×

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.