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

Каков лучший онлайн-ресурс для 3D-рендеринга в JavaScript?

Сначала немного интро:

В прошлом году я написал это http://dragan.yourtree.org/code/canvas-3d-graph/

Теперь я хочу полностью переписать его, потому что эта старая версия имеет некоторые ограничения, например: иногда бывает, что полосы не видны, потому что они рисуются один за другим.

В этой старой версии нет реального 3d, просто bunck из 2D линий, которые эмулируют 3D.

Теперь, я хочу, чтобы перейти в полномасштабную 3D-сцену, я хочу сохранить все объекты в памяти и добавить какие-то 3D-навигационные кнопки, которые позволят пользователям вращать целую сцену на всех трех осях и масштабировать камеры.

Я уже решил, что буду использовать http://sylvester.jcoglan.com/ для материала вектор/матрица, но я все еще не могу найти хороший учебник для 3D. В Интернете много текстов, большинство из них датируются 90-ми годами, являются неполными или написаны очень плохо.

Итак, мой вопрос: какой лучший онлайн-ресурс/учебник, который позволит мне написать свой собственный движок JS 3D с нуля.

Он должен охватывать все релевантные темы:

  • векторы
  • матрицы
  • объекты
  • камеры
  • рендеринг сцены
  • Освещение
  • вращающиеся объекты на сцене
  • перемещение камеры

и т.д.. (я хорошо знаком с первыми двумя)

Спасибо за ваше время.

4b9b3361

Ответ 1

Если это специально для проекта, связанного с JavaScript, то я понимаю, но если вы просто делаете это, чтобы понять основы 3D-рендеринга, для вас могут быть более зрелые платформы.

В любом случае..

Ссылки, которые могут быть полезны для вашего обучения:

Кроме того, некоторые забавные примеры для JavaScript 2D:

Ответ 2

Всего несколько предложений, но, вероятно, не совсем то, что вы ищете:

Я предлагаю вам взглянуть на примеры холста Джейкоба Сейделина на nihilogic.dk: http://blog.nihilogic.dk/search/label/canvas.

Если вы готовы отказаться от холста и пойти с существующей флэш-библиотекой, посмотрите на Sandy3D: http://www.flashsandy.org/demos.

Ответ 4

http://www.gamedev.net/

Прошло совсем немного времени, так как в последний раз я пытался делать что-либо с графикой/играми/3D, но я помню этот сайт как один из самых известных ресурсов.

http://www.gamedev.net/reference/

Конечно, это очень общая цель и охватывает больше вещей, чем вы просите, но в нем содержатся хорошие материалы по математике и физике.

Ответ 5

Печальная правда заключается в том, что до сих пор нет реальной поддержки 3D-графики в JavaScript.
Таким образом, все, что вы делаете, должно будет включать полное внедрение 3D-рендерера (или использование одного другого уже реализованного)
Поскольку эти вещи обычно реализуются в аппаратных средствах, и вы пишете JavaScript, это, естественно, будет очень медленным для чего-то большего, чем тривиальные сцены.

Для вашей 3D-графики вам лучше будут работать такие языки, как Java, С# или С++.

Ответ 6

Для Firefox существует технология под названием "Canvas 3D" . Существует также утилита C3DL, что упрощает использование этой технологии.

К сожалению, насколько я знаю, нет эквивалента Opera/Internet Explorer/WebKit - этот аддон доступен только для Firefox 3 (Firefox 2 и Firefox 3.1 бета не поддерживаются)...