Информация об изменениях

Сообщение Re: [SharpDX] как преобразовать в DDS? от 01.05.2017 13:05

Изменено 01.05.2017 13:27 Silver_S

Re: [SharpDX] как преобразовать в DDS?
Здравствуйте, SanyaVB, Вы писали:

SVB>нашел пример но он показывает как PNG в PNG сохранять со всякими эффектами.

SVB>Чего-то не понял как это дело можно в DDS загнать??? Кто сталкивался??? Гугл молчит.... Дока SharpDX ужасная....

А ты не по SharpDX гугли а по WIC. SharpDX только .NET обертка. И для WIC она видимо не самая удачная (хотя для WIC других не знаю, в SlimDX не было), там еще и баги какие-то:
Такой вот код падает один раз в 100 запусков.
 using (var bitmapDecoder = new BitmapDecoder(Factory, stream, DecodeOptions.CacheOnLoad))
 {
    using (var f0 = bitmapDecoder.GetFrame(0))
        return new Bitmap(Factory, f0, BitmapCreateCacheOption.CacheOnLoad);
 }

Предположительно, повторное удаление COM объекта, либо с WICStream что-то не то. Я им постил баг, но вряд ли исправили: https://github.com/sharpdx/SharpDX/issues/719
Как-то нет доверия к SharpDX.WIC, в остальном SharpDX.* вроде не видел багов. Предпочел на C++ для WIC несколько функций сделать и передавать результат в .NET
Re: [SharpDX] как преобразовать в DDS?
Здравствуйте, SanyaVB, Вы писали:

SVB>нашел пример но он показывает как PNG в PNG сохранять со всякими эффектами.

SVB>Чего-то не понял как это дело можно в DDS загнать??? Кто сталкивался??? Гугл молчит.... Дока SharpDX ужасная....

А ты не по SharpDX гугли а по WIC. SharpDX только .NET обертка. И для WIC она видимо не самая удачная (хотя для WIC других не знаю, в SlimDX не было), там еще и баги какие-то:
Такой вот код падает один раз в 100 запусков.
 using (var bitmapDecoder = new BitmapDecoder(Factory, stream, DecodeOptions.CacheOnLoad))
 {
    using (var f0 = bitmapDecoder.GetFrame(0))
        return new Bitmap(Factory, f0, BitmapCreateCacheOption.CacheOnLoad);
 }

Предположительно, повторное удаление COM объекта, либо с WICStream что-то не то. Я им постил баг, но вряд ли исправили: https://github.com/sharpdx/SharpDX/issues/719
Как-то нет доверия к SharpDX.WIC, в остальном SharpDX.* вроде не видел багов. Предпочел на C++ для WIC несколько функций сделать и передавать результат в .NET

Так и тянет похоливарить против MS. Увлеклись какой-то плиточной фигней с UWP. На десктоп забили, всяким одиночкам-самодельщикам SharpDX приходится выполнять работу за MS, оно конечно будет криво получаться.