ВЕКТОРЫ В КОМПЬЮТЕРНЫХ ИГРАХ - Студенческий научный форум

X Международная студенческая научная конференция Студенческий научный форум - 2018

ВЕКТОРЫ В КОМПЬЮТЕРНЫХ ИГРАХ

Гериханов В.Р. 1, Лыженко Е.Д. 1, Матвеева Т.А. 1, Светличная В.Б. 1
1Волжский политехнический институт (филиал) Федерального государственного бюджетного образовательного учреждения высшего образования «Волгоградский государственный технический университет»
 Комментарии
Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF
Цель статьи – узнать, насколько важна роль математики в компьютерных играх. Основой всех игр является игровой движок. Это некая среда, в которой прописываются законы, твёрдость тел, описывается сама игра. Игровой движок, определяет жанр игры, то есть движки для разных игровых жанров отличаются друг от друга.

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

Математика кроется во взаимодействии, видов взаимодействий очень много, и чем сложнее взаимодействие, тем сложнее формулы. Рассмотрим простейшие случаи: Всем известная 2D игра Марио, все действия в ней происходят с помощью сложения векторов. Чтобы сложить вектора, нам надо просто сложить каждую их составляющую друг с другом. Например:

(1, 7, 3) + (3, -2, 5) = (1+3, 7-2, 3+5) = (4, 5, 8).

Для чего понадобилось складывать вектора? Чаще всего сложение векторов в играх используется для физического взаимодействия с объектом. Каждый предмет в игре имеет свой вектор (координаты) для местоположения, скорости и ускорения. Для любого фрейма (равного 1/60 секунды), мы должны сложить несколько векторов: прибавить скорость к координате и ускорение к скорости. Давайте рассмотрим пример с прыжками Марио. Начальная позиция равна (0, 0). В момент начала прыжка его скорость (1, 3), он быстро начинает двигаться вверх и вправо по координатной плоскости. Его ускорение равно (0, -1), из-за того, что в игре присутствует сила притяжения, которая тянет его вниз. На рисунке изображен его прыжок, который для наглядности, проходит в 8 кадров. В скобках указана его скорость изменения координат в каждом кадре.

Рис 1. Схема движения Марио.

Рассмортим детально первые кадры. Первый фрейм: его начальная координата равна (0,0), увеличиваем его скорость на (1,3), из этого следует, что новая координата Марио равна (1,3). Т.к. на объект действует гравитация, то его скорость изменится на (0,-1), из этого следует, что скорость равна (1,2).

Проделаем те же действия для второго кадра. Добавляем измененную скорость (1, 2) к предыдущему местоположению (1, 3) и получаем координаты (2, 5). Затем добавляем ускорение (0, -1) к его измененной скорости (1,2), получаем новую скорость (1,1). Как правило, игрок контролирует игровой процесс с помощью клавиатуры или джойстика, а игра, в свою очередь, рассчитывает новые значения для скорости и местоположения, используя сложение векторов.

Чем проще игра, тем легче её математическая составляющая, и совершенно ясно, что в современных 3D играх, в которых разрушаемость ландшафта уже обязательное условие, математика сложнее на много порядков.

Список литературы:

  1. Использование векторов в экономике/ В.Б. Светличная, Т.А. Матвеева, С.А. Зотова, М.А.Телегина // Студенческий научный форум – 2017: докл. IX междунар. студенч. электрон. науч. конф. РАЕ. - Москва, 2017.

  2. Математическая модель в расчётах траектории движения искусственного спутника Земли / И.А. Иванушкин, Т.А. Матвеева, В.Б. Светличная, С.А. Зотова // Студенческий научный форум – 2017: докл. IX междунар. студенч. электрон. науч. конф. / РАЕ. - Москва, 2017.

Просмотров работы: 191