2D и 3D графические движки, которые используют Chrome и Servo - PullRequest
0 голосов
/ 01 марта 2019

Некоторое время назад (после многих часов поиска) я узнал, что Chrome / Webkit использует Каирская графика для своего (как минимум) 2D рисования.Я не уверен, что это делает для 3D.Но если вы ищете «графический движок, используемый Chrome», вы получите кучу вещей о Blink , но это не то, что вам нужно ....

Кратко рассмотрим Серво браузер, вы видите серво / серво / блоб / мастер / компоненты / canvas / webgl_mode / inprocess.rs # L13 , который ссылается на серво / блеск который из чего он кажется - это уровень абстракции, обеспечивающий поддержку OpenGL в Servo.Но я еще не видел, где он на самом деле подключается к конкретным «драйверам» операционной системы или что у вас есть для графики, как Cairo (я бы подумал).Если подумать, я не уверен, как Каир тезисы windows / darwin / linux, было бы интересно узнать.

Итак, мои вопросы:

  1. Графические механизмы (2D и 3D), которые используются Chrome и Servo.
  2. Где они выполняют фактическое соединение на уровне операционной системы с графическими драйверами или API-интерфейсами системного уровня для ОС.

Хотелось бы посмотреть, как крупномасштабный графический движок подключается к нативной графике.Как в наши дни, например, они могут просто подключиться к Metal API для iOS, а не к чему-то более высокому уровню.Я не уверен, к чему они подключаются на Mac, Windows и Linux.Мне интересно увидеть исходный код для него.

Я слышал о Mesa , но не уверен, используют ли эти проекты его для 3D или нет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...