LINUX.ORG.RU

Mesa


52

0

Всего сообщений: 6

Ray Tracing (Vulkan) на AMD Vega(Mesa)

Поддержка Ray Tracing (далее RT) у AMD заявлена лишь для поколения RDNA2 графики, в то время как более ранняя Vega, используемая в т.ч. во всех выпущенных на сегодняшний день APU Ryzen, её официально лишена.

В мае 2021 Joshua Ashton показал возможность поддержки RT на Vega (статья в броузере в центре --- там детали). В сентябре был подготовлен патч для Mesa, к концу года принят в dev-ветку, но войдёт лишь в грядущую Mesa 22.0.

Cлева показан пример RayTracing reflection(Sascha Willems'a), запущенный на встроенном видео AMD Ryzen 3 2200G(устройство - RADV RAVEN). Справа же Vulkan Hw Capability Viewer --- расширения VK_KHR_acceleration_structure и VK_KHR_ray_tracing_pipeline присутствуют.

Замечу, что производительность на встроенном видео удручающая, расширения VK_KHR_ray_query, VK_KHR_pipeline_library, VK_KHR_deferred_host_operations отсутсвуют, но для знакомства с RT может подойти.

>>> Просмотр (2536x1080, 510 Kb)

 , ,

azazello
()

UNIGINE Valley в WSL («нативный» WSLg и mesa драйвер d3d12)

Долго ждал нативной поддержки графических приложений в WSL. И дождался.

P.S. Пока работает не супер стабильно, и далеко не всё.

>>> Просмотр (3440x1440, 2560 Kb)

 d3d12, , , ,

chaos_dremel
()

Minecraft на Raspberry Pi

Майнкрафт запускал по этому руководству методом «копировать/вставить». Моей заслуги нет. Игра играбельна, если немного снизить умолчальные настройки! В руководстве по ссылке также предлагают использовать Optifine для более тонкой настройки. Полноэкранный режим по F11 работает, но мышка начинает глючить — поэтому делаем просто окно на весь экран!

На Raspberry Pi изначально был стек из проприетарного OpenGL ES, с которым приложения работали при помощи EGL. Также был OpenVG для 2D-ускорения, и OpenMAX для encoding и decoding FullHD-видео. А теперь в Месе есть поддержка чипа VideoCore IV, и на Raspberry Pi стал доступен нормальный OpenGL, а также работа приложений с ним при помощи GLX!

OpenGL ES также никуда не делся, только реализуется теперь Месой, а не проприетарной библиотекой (в raspi-config можно выбрать, что именно использовать). Насчёт OpenMAX и OpenVG не знаю.

>>> Просмотр (1920x1080, 539 Kb)

 , , , ,

ZenitharChampion
()

Divinity Original Sin Enhanced Edition @ Mesa r600g

Я таки заставил эту игру работать 😊

В процессе была куча сегфолтов и адовые артефакты.

По сути проблемы всего три (конкретно для r600g, в целом для месы – 2):

  1. Контекст OpenGL 4.2. Драйвер r600g рапортует версию 3.3, а движок игры, в свою очередь, работает по принципу segfault driven error handling. Решается просто:
    MESA_GL_VERSION_OVERRIDE=4.2 
    MESA_GLSL_VERSION_OVERRIDE=420
  2. Невалидные шейдеры. Тут сразу:
    • Во-первых, разрабы используют расширение ARB_shading_language_include, которое не поддерживается ничем кроме невидиевской проприетарщины. Но во имя амдшной проприетарщины они запилили в движок fallback режим, в котором это расширение реализуется прямо в движке на коленке, однако включается этот fallback режим (немного) через жопу – они (только) проверяют возвращаемое значение функции glXGetProcAddressARB на nullptr. А glXGetProcAddressARB не обязан возвращать nullptr, кроме адреса надо смотреть еще в список расширений, чего они не делают, а месовская реализация никогда не возвращает nullptr -> segfault driven error handling. Чинится этот баг подстановкой костыля в LD_PRELOAD.
    • Во-вторых, в шейдерах постобработки SMAA/FXAA у них где-то в дебрях кода обложенное ifdef'ами лежит включение очередного расширения, что, блджад, не правильно. После обнаружения этой фигни месовский GLSL компилятор совершенно справедливо прерывает компиляцию, а так как ребята не умеют в обработку ошибок — см. выше. Этот баг обходится с помощью месовского механизма подмены шейдеров в рантайме и костыля-решейпера их кода шейдеров. файла drirc, в который нужно добавить
      <application name='Divinity Original Sin Enhanced Edition' executable='EoCApp'>
          <option name='allow_glsl_extension_directive_midshader' value='true' />
      </application>
  3. Графические артефакты. У них в движке (насколько я понял) есть две принципиально разные ветки кода/рендеринга, которые разделяются по (внимание!) строке в GL_VENDOR: если в этой строке что угодно кроме "ATI Technologies Inc.", то активируется невидиевская ветвь, что на месе приводит к аду, если же доставить в LD_PRELOAD еще один костыль с этой строкой, то рендеринг становится мягким и шелковистым.

TL;DR: Gentoo, дефолтные кеды, ШГ, панелька с автоскрытием.

>>> Просмотр (1600x900, 1682 Kb)

 ,

Stil
()

xmonad, emacs, wl,dired,erc

xmonad, 2 монитора через xinerama.

сверху - xmobar + trayer

Неспешно лазаю по исходникам gallium, а так же сижу в IRC через ERC, читаю mailing листы в wanderlust и лор в w3m-emacs.

Плюс (на скрине не видно) использую bitlbee для сидения в жабирах, асечках и прочих вконтактиках.

emacs на втором экране (снизу) запущен на другой машине, окно emacsclient рисуется через X11, почти не тормозит.

Цветовая тема - попсовая solarized-dark, ШГ - битмапный terminus.

Система - debian testing с самособранным 3.6-rc1.

P.S движок не дает вставить изображение шире 3 килопикселя, поэтому сфотошопил второй монитор под первый.

>>> Просмотр (1920x2160, 149 Kb)

 ,

x4DA
()

Матрешка

Играемся с wayland на mandriva 2011. На экране можно заметить что запущена Mandriva 2011 + kde desktop effects + rosa panel + rosa theme.

Гость программы - wayland-compositor, который крутится внутри X-сервера через libdrm/mesa (все из гит от 20110610 + некоторые не критичные патчи, собственно детали на http://dodonov.net/blog/2011/06/11/x-org-wayland-and-all-that-awesome-low-lev...).

Что интересно, так это то, что каждый из wayland-клиентов запущен по-своему: screen+mutt через wayland-terminal + wayland-flower из иксов + wayland-gears из обычного терминала (ctrl-alt-f1 напрямую), и все они нормально между собой общаются. Можно запустить несколько композиторов и они паралельно работают и друг другу не мешают. Особо советую обратить внимание на прозрачность которую заметно на wayland-gears, вся эта красота поддерживается композитором напрямую, безо всяких composite, render, и прочих монстров обычных иксов.

Плюс параллельно с этим крутятся glxgears через обычные иксы, и openclass (http://openclass.dodonov.net, на лоре он по-моему еще не промелькнул), который передает все это безобразие на другой компьютер по сети + собственно kde 3d эффекты. Никаких замедлений не замечено, загрузка cpu практически нулевая.

С тем же успехов можно запустить wayland-compositor напрямую из консоли и все продолжает работать (кроме иксовых вещей которые нужно немного патчить для работы с wayland не используя libX11). Что выглядит конечно круто.

Для работы в текстовом режиме wayland мне понравился, так что в .profile я его теперь напрямую запускаю при логине в консоле, что позволяет в консоле использовать терминалы и окна с помощью wayland-terminal.

Видео-карта - i965 (Arrandale), kms включен по-умолчанию в ядре от mdv-2011.

Вот вроде и все.

>>> Просмотр (1366x768, 263 Kb)

 , , , , openclass, ,

McGray
()