![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#61 |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,328
|
![]()
WebGL 1.0. Наложение текстуры на квадрат
https://jsfiddle.net/zjydm1ev/ 026_applying_a_texture_to_a_square.jpg Код:
|
![]() |
![]() |
![]() |
#62 |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,328
|
![]()
WebGL 2.0. Наложение текстуры на квадрат
https://jsfiddle.net/gd2uo3jg/ 026_applying_a_texture_to_a_square.jpg Код:
|
![]() |
![]() |
![]() |
#63 |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,328
|
![]()
WebGL 1.0. Анимация вращения
https://jsfiddle.net/8Observer8/gLpowbe2/ ezgif.com-optimize.gif Код:
Последний раз редактировалось 8Observer8; 08.12.2017 в 22:59. |
![]() |
![]() |
![]() |
#64 |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,328
|
![]()
WebGL 2.0. Анимация вращения
https://jsfiddle.net/8Observer8/fLumroxa/ ezgif.com-optimize.gif Код:
|
![]() |
![]() |
![]() |
#65 |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,328
|
![]()
Вывод текста
Живая демка + исходники: https://plnkr.co/edit/GqmJ4uB5XmNB1Cu7qlhl?p=preview Скачать исходники архивом: drawing-text.zip Шрифты были созданы из TrueType и OpenType с помощью программы Bitmap Font Generator DrawingText2-optimize.gif |
![]() |
![]() |
![]() |
#66 |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,328
|
![]()
Установка системы координат в 2D
534cdc95-6487-44f0-b33c-b9573873c842.png С помощью ортогональной матрицы проекции из библиотеки glMatrix можно установить начало системы координат в любую точку на холсте, а также указать направления осей (выбрать правую или левую систему координат, то есть, которую можно определить с помощью правила правой или левой руки) и установить диапазон по осям: X, Y, Z. Например, следующая строка кода: Код:
В примере ниже система координат установлена в верхний левый угол в диапазоне [0, 10], используя левую систему координат (ось X направлена вправо, ось Y направлена вниз, ось Z направлена на наблюдателся). Размер квадрата равен одному, угол поворота равен 0 градусов (вокруг оси Z), координата квадрата (его левого верхнего угла) равна (3, 2). В примере создаются матрицы: размера, поворота и перемещения, проекции, а также матрица вида. Эти матрицы перемножаются друг на друга в порядке: projMatrix * viewMatrix * modelMatrix. Матрица modelMatrix хранит три вида трансформаций, которые применяются справа налево: Scaling * Rotation * Translation Код:
index.html Код:
|
![]() |
![]() |
![]() |
#67 |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,328
|
![]()
Установка системы координат в 2D на OpenGL ES 2.0 и Qt C++
В качестве бонуса тот же пример, что и выше, но на OpenGL ES 2.0 и Qt C++ (шейдеры один в один), который можно скомпилировать под Windows, Linux, macOS, Android и iOS. Сборка в релиз для Windows: Set2DCoordSystem_EXE.zip (11.08 Мб) main.cpp Код:
|
![]() |
![]() |
![]() |
#68 |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,328
|
![]()
Рисование квадратов, координаты которых считываются с удалённой базы данных MySQL и передаются с сервера через WebSocket
Развернул пример на бесплатном хостинге Heroku: https://squares-from-mysql-webgl10-js.herokuapp.com/ d9e69a40-3401-41fc-aba4-ac5d616753fa.png Ограничение на бесплатном хостинге Heroku такое, что если приложением не пользовались 30 минут, то оно засыпает, но чтобы приложение проснулось достаточно 10-15 секунд. В настройках приложения на Heroku я соединил приложение с репозиторием на GitHub, чтобы происходило автоматическое развёртывание после каждого коммита (git push). Скачать исходники: squares-from-mysql-webgl10-js.zip (3.5 Кб) Команда для создания базы данных из HeidiSQL: Код:
Для работы с базой данных MySQL использую бесплатную легковесную программу HeidiSQL. Metanit использует "MySQL Workbench", но Workbench занимает очень много места на жёстком, по-моему, в районе 1 ГБайт и много оперативной памяти, а HeidiSQL занимает на жёстком всего 33.2 МБ и 26.5 МБайт оперативной памяти. Исходники: index.html Код:
Код:
Код:
Последний раз редактировалось 8Observer8; 14.01.2021 в 13:43. |
![]() |
![]() |
![]() |
#69 |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,328
|
![]()
Пример на JavaScript, Python и C++, в которым определяется клик мыши по фигуре любой формы, как в 2D, так и в 3D
pick-triangle-webgl10-js.gif Запустить демку в браузере:
Исходники:
|
![]() |
![]() |
![]() |
#70 |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,328
|
![]()
Спрайтовая анимация на Canvas API на JavaScript, Python и C++
Запустить демку в браузере в песочнице Plunker: https://plnkr.co/edit/zjYT0KTfj50MejT9?preview animation-canvas2d-js.gif
Данный пример не использует WebGL, но он очень кратно демонстрирует принцип спрайтовой анимации. Попробуйте реализовать этот принцип самостоятельно на WebGL и OpenGL. Лучший способ изучения - это написание кода самостоятельно с нуля до перехода знаний в навыки через многократное повторение изученного на практике. У меня есть короткий пример спрайтовой анимации на WebGL и OpenGL, но я его пока выкладывать не буду, чтобы у вас было время попробовать самостоятельно решить эту задачу. JavaScript, Canvas2D index.html Код:
Код:
Код:
Код:
Последний раз редактировалось 8Observer8; 19.01.2021 в 01:40. |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
WebGL developer | Ojoteam | Фриланс | 0 | 19.05.2017 12:37 |
Ищу моделера для браузерной WebGL игры | Kempston | Gamedev - cоздание игр: Unity, OpenGL, DirectX | 0 | 31.03.2016 21:23 |
Пример использования Gera WebGL 3D Library | rekodDeveloper | JavaScript, Ajax | 5 | 02.06.2015 16:05 |
Вопрос по Webgl | Halk_blr | Помощь студентам | 0 | 23.02.2014 23:19 |
WebGl, использование Three.js оптимизировать и подправить код | dem66 | JavaScript, Ajax | 0 | 23.06.2012 20:14 |