Layered Window на ноутбуке с 2 видеокартами
От: alexacolor  
Дата: 26.08.13 05:59
Оценка:
Наблюдаю баг на свежем ноутбуке с 2 видеокартами (Intel + AMD) и Windows 8 — пример layered из Sciter2&3 запускается, болтается в трее но окно не отрисовывается.
С драйверами всё в порядке, на этом же ноутбуке написано уже много всего с Direct3D — всё работает.
Re: Layered Window на ноутбуке с 2 видеокартами
От: c-smile Канада http://terrainformatica.com
Дата: 26.08.13 06:24
Оценка:
Здравствуйте, alexacolor, Вы писали:

A>Наблюдаю баг на свежем ноутбуке с 2 видеокартами (Intel + AMD) и Windows 8 — пример layered из Sciter2&3 запускается, болтается в трее но окно не отрисовывается.

A>С драйверами всё в порядке, на этом же ноутбуке написано уже много всего с Direct3D — всё работает.

Запусти пример так (в Sciter 3)
"layered.exe sciter-gfx=gdi" или
"layered.exe sciter-gfx=d2d-warp"

если запустится то значит DirectX драйвер битый. Layered windows у меня через DirectX layer рисуются.
Re: Layered Window на ноутбуке с 2 видеокартами
От: c-smile Канада http://terrainformatica.com
Дата: 26.08.13 06:26
Оценка:
Здравствуйте, alexacolor, Вы писали:

А что такое "ноутбук с 2 видеокартами"? Это что за зверь такой?
Re[2]: Layered Window на ноутбуке с 2 видеокартами
От: alexacolor  
Дата: 26.08.13 07:34
Оценка:
CS>Здравствуйте, alexacolor, Вы писали:
CS>А что такое "ноутбук с 2 видеокартами"? Это что за зверь такой?

Таки драйвер не битый 100%, это модная система, где десктоп рисуется вк Intel 4400, а если что задействует DirectX — оно подключает вторую, дискретную видеокарту.
В данном случае это вот такая конфигурация. (правда там про Intel 4400 забыли)
с gdi оно естественно работает с -gfx=d2d-warp тоже но хотелось бы конечно, что бы sciter сам определял, как рендерить.
Re[3]: Layered Window на ноутбуке с 2 видеокартами
От: alexacolor  
Дата: 26.08.13 07:46
Оценка:
А может быть я ввожу в заблуждение и виной всему девелоперская версия Windows 8.1, но на ней же я собираю проект, который активно использует DirectX (вывод видео, шейдеры) и Layered окна и сбоев небыло.
Re[4]: Layered Window на ноутбуке с 2 видеокартами
От: c-smile Канада http://terrainformatica.com
Дата: 27.08.13 05:52
Оценка:
Здравствуйте, alexacolor, Вы писали:

A>А может быть я ввожу в заблуждение и виной всему девелоперская версия Windows 8.1, но на ней же я собираю проект, который активно использует DirectX (вывод видео, шейдеры) и Layered окна и сбоев небыло.


Попробуй скачай еще раз (3.0.0.1) :
http://www.terrainformatica.com/sciter/sciter3-sdk.zip

Свисти если что.
Re[5]: Layered Window на ноутбуке с 2 видеокартами
От: alexacolor  
Дата: 27.08.13 08:50
Оценка:
CS>Свисти если что.
Не получилось. Всё так же. Обычные окна — всё нормально, слоистые — не отображаются.
Свои программки делал по этой статье — они работают. И через WIC\Direct2d и через Direct3D.
Re[6]: Layered Window на ноутбуке с 2 видеокартами
От: c-smile Канада http://terrainformatica.com
Дата: 27.08.13 15:47
Оценка:
Здравствуйте, alexacolor, Вы писали:

CS>>Свисти если что.

A>Не получилось. Всё так же. Обычные окна — всё нормально, слоистые — не отображаются.
A>Свои программки делал по этой статье — они работают. И через WIC\Direct2d и через Direct3D.

Ты точно используешь 3.0.0.1?
Re[7]: Layered Window на ноутбуке с 2 видеокартами
От: alexacolor  
Дата: 29.08.13 07:26
Оценка:
CS>Ты точно используешь 3.0.0.1?

На переднем плане демо layered.exe. Окна нет.
Re[8]: Layered Window на ноутбуке с 2 видеокартами
От: alexacolor  
Дата: 29.08.13 07:40
Оценка:
А вот простой пример на этом же ноутбуке

Re[9]: Layered Window на ноутбуке с 2 видеокартами
От: c-smile Канада http://terrainformatica.com
Дата: 29.08.13 18:53
Оценка:
Здравствуйте, alexacolor, Вы писали:

A>А вот простой пример на этом же ноутбуке


Ты экспериментировал с чем нибудь более сложным чем это?

Дело в том что в Direct2d графический вывод это batch processing. Нечто типа графических команд в метафайле.
Ты отправляешь всю последовательность на отрисовку, и если драйвер валится на какой-то команде то вся последовательность не рисуется.

Я попробую что-то сделать по поводу обработки ошибок на layered окнах — переключение на нижний gfx layer если хардверный драйвер падает например.

А вообще это проблема общая для Direct2D/DirectX связки. Например вот Mozilla GPU blacklist.

Подожди выхода 3.0.0.2, если там мой автоматический механизм не сработает на твоем hardware то придется SciterSetOption(GFX_LAYER_WARP) задавать явно (если твои окна layered).
Re[10]: Layered Window на ноутбуке с 2 видеокартами
От: alexacolor  
Дата: 30.08.13 07:53
Оценка: 42 (1)
CS>Ты экспериментировал с чем нибудь более сложным чем это?
Конечно. примерно таким образом написан видеоплеер, прекрасно работают программки с firemonkey (он как то так же устроен), да и пока разбирался с directX+Layered запускал массу примеров и всё работало.
Сейчас сделал следующее: отключил видеокарту AMD 8730 демо Layered работает, включил AMD отключил Intel — демо layered работает. включил обе — демо не работает.
Re[11]: Layered Window на ноутбуке с 2 видеокартами
От: c-smile Канада http://terrainformatica.com
Дата: 09.09.13 00:13
Оценка:
Здравствуйте, alexacolor, Вы писали:

CS>>Ты экспериментировал с чем нибудь более сложным чем это?

A>Конечно. примерно таким образом написан видеоплеер, прекрасно работают программки с firemonkey (он как то так же устроен), да и пока разбирался с directX+Layered запускал массу примеров и всё работало.
A>Сейчас сделал следующее: отключил видеокарту AMD 8730 демо Layered работает, включил AMD отключил Intel — демо layered работает. включил обе — демо не работает.

Попробуй 3.0.0.2. Свисти если что не так.

layered.exe должен показать D2D/WARP если работает на Intel чипе. И D2D/DX если что-то другое более производительное.

Тестировал на Samsung 700Z который имеет похожую Intel/Radeon конфигурацию.
Re[12]: Layered Window на ноутбуке с 2 видеокартами
От: flаt  
Дата: 12.09.13 18:48
Оценка: 40 (1)
Здравствуйте, c-smile, Вы писали:

В порядке тестов,

CS>layered.exe должен показать D2D/WARP если работает на Intel чипе. И D2D/DX если что-то другое более производительное.

Intel 4000 + Nvidia 635M:
* при запуске с каждым чипом показывает DX.
* при запуске с параметром sciter-gfx=gdi показывает GDI+.
Re[13]: Layered Window на ноутбуке с 2 видеокартами
От: c-smile Канада http://terrainformatica.com
Дата: 13.09.13 02:42
Оценка:
Здравствуйте, flаt, Вы писали:

F>В порядке тестов,


CS>>layered.exe должен показать D2D/WARP если работает на Intel чипе. И D2D/DX если что-то другое более производительное.

F>Intel 4000 + Nvidia 635M:
F>* при запуске с каждым чипом показывает DX.
F>* при запуске с параметром sciter-gfx=gdi показывает GDI+.

Спасибо. Да у NVIDIA драйверы приличные. У Radeon/ATI традиционно чудеса всякие.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.