2011-06-22 3 views

ответ

2

В зависимости от браузера (версии) это может быть возможно благодаря неясным, наименее качественным рутинным хакам; Я не рекомендую.

Но есть способ использовать холст WebGL из плагина: контекст WebGL является частью DOM, поэтому вполне возможно использовать контекст WebGL через DOM, и поскольку плагины имеют полный доступ к DOM, плагин может управлять контентом WebGL. То же самое справедливо и для апплетов Java, что очень приятно, поскольку позволяет использовать OpenGL в апплете Java, не требуя от посетителя сайта установки JoGL или обеспечения небезопасного доступа.

1

Я могу гарантировать, что это не сработает вообще; на Mac, по крайней мере, вы не можете просто передавать контексты OpenGL через процессы, и большинство основных браузеров теперь на Mac запускают плагины в другом процессе с веб-страницы.

1

Хром реализует WebGL через Direct3D на Windows. Так что это никогда не сработает. Нет никакой гарантии, что любой контекст WebGL реализуется поверх реализации OpenGL на рабочем столе.

+0

Я все еще озадачен, почему Google делает это именно так. В конце концов, это не просто вызовы API, которые нужно перевести. Это также источник GLSL, который необходимо перевести, а также всю семантику атрибута Veriform Exform и другие нетривиальные вещи. – datenwolf

+1

Поддержка DirectX иногда лучше, чем поддержка OpenGL с некоторыми драйверами. –

+1

@echeese: Хотя это правда, я бы сказал, что у Google так много веса в компьютерной индустрии, что, основываясь на Chrome/Windows WebGL на OpenGL, они могут легко заставить графических вендоров заставить свой OpenGL-драйвер действовать вместе, просто не используя DirectX. Ну, лозунг Google - «Не будь злым». но это не означает «Будь хорошим!». – datenwolf

Смежные вопросы