Лабораторная работа 3

Итак, товарищи, настало время крайней лабораторной работы. Посвящена она будет языку WebGL и шейдерному языку GLSL.

Перед прохождением лабы нужно пройти Тест для лабораторной работы №3.

Форма для отчёта.

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

Но для закрепления материала нужно будет выполнить несколько заданий разной сложности. Так что придётся немного подумать и покодить.

Ваша основная ссылка для работы вот: http://www.webglacademy.com/#0 

Вот небольшое дополнение на русском и английском. Там есть ссылка на методы GL-объекта, которые можно вызывать.

Ещё полезные ссылки:

Clipping Coordinates

Второй треугольник

Отсюда начинаются ваши путешествия, закончатся же они в форме отчёта для лабораторной работы №3.

Важное замечание: данная лаба может НЕ работать, если у вас встроенная видеокарта (к примеру, на ряде ноутбуков, либо есле на ноутбуке отключена дискретная видеокарта). Происходит это из-за того, что в этой лабе используются аппаратные вызовы от шейдерного языка GLSL, и без видеокарточки они просто не отрабатываются. Так что озаботьтесь наличием машины с дискретной видеокартой заранее, отговорки "у меня не заработало в последний день сдачи" не прокатят.

Итак, начнём. Ваша задача - просто кликать "далее" по шагам и разбираться, что да как (пояснения по коду имеются). Так же запомните - методы и функции GLSL и WebGL подсвечиваются зелёным цветом. Для того, чтобы узнать, что делает тот или иной метод нужно поставить бегунок на нужный элемент и нажать клавишу F1 - после этого выползет всплывающее окно с подсказкой, какие элементы там есть.

Всего за лабораторную можно набрать 20 баллов. Но эти 20 баллов (целиком) будет получить уже сложнее, т.к. каждое задание будет состоять из базовой и доп. части. Выполнение базовых задач будет давать вам 14 из 20 (или 7 из 10 по графе Вышки). Дополнительные дадут оставшиеся 6 баллов.

Не забывайте, что в этом интерфейсе можно переключаться между рабочими файлами (.html, и скриптами)

В качестве отчётов по каждому из заданий присылаются архивы с выполненной задачей (в форме отчёта)

Задание 1 (4 балла)
Ознакомьтесь с интерфейсом. Пройдите уроки №0 и №1. Разберите внимательно, какие параметры отличают за цвет, положение вершин, заливку и другие параметры полигонов.
В конце первого урока (который 2D colored Triangle) будет задача создать второй треугольник, чтобы полностью закрасить пространство. Создайте этот треугольник так, чтобы левый нижний угол его был синим, левый верхний был фиолетовым, правый верхний был жёлтым.

Задание 1+ (2 балла)
В дополнение к Заданию 1 пришлите файл, где изученными методами будет построен правильных шестиугольник, залитый одним любым цветом.

Задание 2
Пройдите урок №2 (3D colored Triangle). В конце урока есть три задания, из которых нужно выполнить первые два:

(2 балла): Задать вращение треугольника вокруг одной оси (либо X, либо Y, либо Z)
(2 балла): Заменить вращающийся треугольник квадратом.

Задание 2+ (2 балла)
Вместо того, чтобы вращать треугольник попробуйте повращать камеру. (можно использовать ещё урок №3)

Задание 3 (6 баллов)
Выполните уроки №3-5 (включая работу с текстурами). Создайте вместо куба пирамиду с наложенными собственными картинками-текстурами.

Задание 3+ (2 балла)
Сделайте так, чтобы отрабатывались не только события с зажатой клавишей мыши, но и, к примеру, такие события, как MouseOver или OnScroll.


Комментариев нет:

Отправить комментарий