Подтвердить что ты не робот

Вы можете использовать canvas.getContext('3d')? Если да, то как?

Я читал о теге canvas в HTML5 и всегда видел getContext('2d').
Параметр равен "2d", так что не существует другой возможности, например, "3d"?
И как вы могли это использовать? Я пробовал 3D раньше, но на самом деле не понял (из-за непонятного учебника). Любые учебники?

4b9b3361

Ответ 1

Существует 3D-контекст для холста, но он не называется "3d", но WebGL ( "webgl" ).

Ответ 2

WebGL должен быть доступен в самых современных версиях всех браузеров. Использование:

<!DOCTYPE html>
<html>
 <body>
 <canvas id='c'></canvas>
  <script>
    var c = document.getElementById('c');
    var gl = c.getContext('webgl') || c.getContext("experimental-webgl");
    gl.clearColor(0,0,0.8,1);
    gl.clear(gl.COLOR_BUFFER_BIT);
</script>
</body>
</html>

как вы могли бы это использовать? Я пробовал 3D раньше, но на самом деле понимать

  • Если вы считаете, что "настоящие" языки сложны, у вас будет много проблем с WebGL. В некоторых отношениях это довольно высокий уровень, в остальном он довольно низкий. Вы должны освежить свою математику (геометрию) и подготовиться к тяжелой работе.
  • three.js - это очень ценная библиотека, которая позволяет вам делать еще много 3d без непосредственного обращения к webgl, проверьте его.

Ответ 3

Можно получить контекст WebGL, который предоставит вам доступ к этому API, позволяя 3D-рендеринг OpenGL ES 2.0.

Ответ 4

3D-контекст еще не реализован в большинстве браузеров. Я полагаю, что есть экспериментальная версия Opera, которая поставляет одну, и дополнение для FF, которое делает то же самое, но ни одна из них не готова для прайм-тайма. Вам придется ждать широкого принятия и реализации.

и я думаю, что JavaScript проще, чем настоящий язык программирования

Javascript - это "настоящий" язык программирования. Быть языком высокого уровня не делает его игрушкой или подделкой (и это от системного парня, который, по вашему мнению, пишет код на "настоящих" языках программирования каждый день).