Hind, Apache и iF-16 от Digital Integration на Windows 10

 Дабы не захламлять соответствующую заметку - в комплект совместимости mydxwnd добавлена поддержка Hind, Apache и iF-16 от Digital Integraion. Пока только программный рендеринг.

Collapse )

Red dead redemption 2 на PC: "Рафик нивчем не уиноват" или проклятие 4-ех и 6-и ядерных процессоров

Кто тут еще не пнул cockstar Rockstar? Штош. Несколько недель назад я стал одним из счастливых лошар обладателей поделки богоподобного порта Red dead redemption 2 на PC. Для справки - изначально игра вышла в 2018 году на Xbox One и PS4 (я так понимаю, у обоих на борту 8-ядерный AMD APU с пиковыми ~2ГГц в зависимости от конкретного девайса). Теперь наши жадные великодушные "Рок звёзды" повторили "успех" GSC с "Чистым небом", а именно устроили бета тест за ваши деньги зарелизили недоделанный продукт.Collapse )

И снова Jane's: приручаем Longbow Anthology, F-15 и F/A-18 (и еще несколько тайтлов!) на Windows 10

Мой интерес к DxWnd (а также копание в его коде) привел к рождению очередной методики по запуску Jane's симуляторов. На сей раз под Windows 10. Любимые мною Janes's Longbow, Janes's Longbow 2, Jane's F-15 и Jane's F-18. С некоторых пор также Apache, Hind и iF16 от Digital Integration. Готовое решение прилагается. Особенностью этого "комплекта" является то, что он не использует стандартных механизмов совместимости Windows. Большая часть работы падает на плечи замечательного DxWnd. В данном случае я отошел от практики подробно описывать процесс настройки "вручуную" ввиду того, что настроек много, а некоторые вещи потребовали бы от читателя вполне определенных познаний.

Collapse )

boost::beast: достойная зверушка

Небольшая заметка "чисто для себя". К boost::asio я отношусь с большим уважением. Это прекрасный пример как нужно создавать библиотеки на С++. А тут в текущем проекте понадобилось создать HTTP/WebSocket/REST платформу. Одним из исходных условий была кроссплатформенность. Взгляд упал на boost::beast за авторством Винни Фалько. В свое время довелось воспользоваться его LuaBridge и впечатления остались сугубо положительные. Был написан простейший асинхронный веб сервер (тред пул по количеству логических ядер; каждый поток "привязан" к своему логическому ядру; по одному io_context на каждом потоке). Контент, конечно же, статический. На 1000000 запросов апач бенчмарка и десктопном i7 процессоре с 6 физическими (12 логическими) ядрами и ОС Windows 10, сервер показал производительность в ~21000 обработанных запросов в секунду. Для сравнения в той же программной и сетевой среде и на той же аппаратной платформе "классический" apache версии 2.2.17 (на сколько мне известно, nginx под windows не использует iocp, а потому я банально взял старое, пусть и не самое производительное, но буллет пруф решение) показывает ~14000. Следует понимать, что это исключительно сравнительный анализ который был сделан лишь для того, чтобы понять, на сколько серьезно можно рассматривать beast в качестве платформы для разработки. Лично для себя решил, что да, можно.

Вдогонку. Взял nginx отсюда. Господа обещали решить все проблемы nginx под windows. В той же среде и на том же железе версия 1.17.4.1 при установленном worker_processes в 12 (в остальном конфиг дефолтный) показала 5200 запросов в секуду... Скорее всего я не умею готовить nginx под windows.

И еще одно обновление. Купили 10 ГБитные сетевые карточки. Соединили кроссом целевые ПК. Запустили тест H2load. Железо и программная часть та же. Все та же имплементация на базе биста. Получили пиковых 571000 запросов в секунду. Йииииииха!

Старые игры: Ecstatica и Ecstatica 2 под Windows 10

Сказочно красивые Ecstatica (1994) и Ecstatica 2 (1997). Andew Spencer (и команда) поистине талантливый разработчик своего времени! Коротко об играх - приключения, юмор, хардкор. Стильная и занятная 3d графика (загляните на скриншоты под катом, да, это 94-97 годы). Принцесса прилагается.

Collapse )

Старые игры: Flight Unlimited 2 и Flight Unlimited 3 под Windows 10

Flight Unlimited 2 и Flight Unlimited 3 замечательные авиасимуляторы гражданской авиации от Looking Glass Studios. Приятная для своего времени картинка (а какой там был дождь!), потрясающая детализация радио взаимодействия с наземными службами, насыщенный траффик, детальная карта регионов Сан Франциско (FU2) и Сиэтла (FU3). Достойный конкурент серии MS Flight Simulator. Не стоит забывать, что FU3 при инсталляции может подхватывать территорию из FU2. Традиционно, запуск игр 1997/1999 годов на современных ОС (Windows 10 build 1803) сопряжен с некоторыми сложностями. О них и поговорим.
Collapse )

Win32 ошибка ERROR_ACCESS_DENIED не всегда ERROR_ACCESS_DENIED

Имеем следующую ситуацию. Есть два процесса, один из которых передает данные через разделяемую память другому. В какой то момент возникла необходимость изменить размер разделяемой памяти, однако имя должно оставаться прежним. На первый взгляд никаких сложностей возникать не должно. Однако не тут то было.Collapse )

Эксперименты с H264/AVC: пишем свой маленький "энкодер"

В процессе работы над текущим проектом родилась "странная" идея (на самом деле в разрезе проекта некоторый смысл это имеет) "энкодера" H264, выдающего на выходе I_PCM макроблоки в IDR слайсах. То бишь по факту никакого сжатия. Разве что кроме YUV представления кадра.Collapse )

Будни разработки

Еще немного о QuickSync и достижениях. Разработанное приложение: декодируем и рисуем 25 честных h264 fullhd потоков (30 кадров в секунду, порядка 300+ Мбит в секунду), стабильный fps 100+ кадров в секунду, аппаратный декодер Intel, DirectX 11, многопоточность. И это не предел.Collapse )