Разработка игр

Q & A для профессиональных и независимых разработчиков игр

3
Как я могу обрабатывать изменения версий при сохранении ресурсов?
Я уже некоторое время работаю над RPG и использую два различных метода сериализации. Враги, оружие, предметы сохраняются как XML. Карты и события сохраняются как «контролируемые двоичные файлы» (каждый класс получает метод сохранения / загрузки, и они решают, что они хотят сохранить / загрузить). Но я начал подвергать сомнению мой выбор …

2
Доступен ли исходный код Source Engine?
Доступен ли полный исходный код C ++ для Source Engine? Я знаю, что SDK доступен с приобретением игры на основе исходного кода , но моя цель - найти игровой движок с открытым исходным кодом, который включает в себя полную информацию о реализации для целей обучения.


3
Как отправить несколько матриц в вершинный шейдер?
Я практикую анимацию с использованием костей / скинов. Я пытаюсь отправить шейдеру одну матрицу на вершину. Я могу думать об этих двух подходах. Способ 1 У меня есть одна единая ручка для каждой костной матрицы, как это u_Bone0 = GLES20.glGetUniformLocation(mProgram, "u_Bone[0]"); u_Bone1 = GLES20.glGetUniformLocation(mProgram, "u_Bone[1]"); и onDrawя отправляю каждого из …

3
Как учитывать гравитацию при движении ИИ
Я делаю 2D игру. В настоящее время вертолет летит вокруг, управляемый игроком. Управление осуществляется с помощью клавиш со стрелками: ВВЕРХ, ВЛЕВО и ВПРАВО. Это скорость по оси Y есть dy, а скорость по оси X есть dx. Это физика выглядит следующим образом: Всякий раз, когда ВВЕРХ не нажимается , dyускоряется …
9 2d  physics  ai 

3
Как я могу масштабировать количество и вызов врагов в волне атаки по ходу игры?
В настоящее время я делаю оборонительную игру, в которой враги будут появляться и атаковать армию игрока. Это похоже на игру Tower Defense, за исключением того, что есть только один уровень. Враги будут продолжать появляться до тех пор, пока в конечном итоге пользователь не умрет или не соберет достаточно большую армию, …

3
Сколько времени требуется OpenGL для обновления экрана?
У меня есть простое тестовое приложение OpenGL на C, которое рисует разные вещи в ответ на ввод ключа. (Mesa 8.0.4, пробовал с Mesa-EGL и с GLFW, Ubuntu 12.04LTS на ПК с NVIDIA GTX650). Ничья довольно простая / быстрая (вращающийся треугольник). Мой тестовый код никоим образом не ограничивает частоту кадров, он …

1
Теорема о разделяющей оси с несколькими полигонами?
Я пытаюсь реализовать теорему о разделяющей оси в C #. У меня есть функция, которая может рассчитать минимальный вектор перевода между двумя полигонами. Тем не менее, я не могу создать функцию, которая вычисляет минимальный вектор перевода между одним полигоном и несколькими другими полигонами. Честно говоря, я работал над этим в …

1
Как вычислить касательные и битангентные векторы
У меня есть текстура, загруженная в three.js, затем переданная в шейдеры. В вершинном шейдере я вычисляю нормаль и сохраняю в переменную вектор uv. <script id="vertexShader" type="x-shader/x-vertex"> varying vec3 N,P; varying vec2 UV; void main() { gl_Position= projectionMatrix * modelViewMatrix * vec4(position,1.0); P= position; N= normalMatrix * vec3(normal); UV= uv; } …

1
Как я могу «прикрепить» объекты к столам в Skyrim и при этом позволить этим объектам взаимодействовать с игроком?
Я пытаюсь разместить нестатический банк ( RuinsPot01) на столе ( RuinsAltar) с помощью симуляции Havok. Я ставлю горшок чуть выше стола и включаю Хавок. Горшок падает, но остается чуть выше стола. Если я поверну Havok и нажму на Fнее, она будет правильно выровнена по столу, но как только я включу …


2
Как привлечь моддеров в свою игру?
Я занимаюсь разработкой игры, но поскольку я работаю над ней в одиночку, объем контента, который я могу создать, очень ограничен. Из-за этого я хочу, чтобы моя игра была модифицирована, для этой цели я планирую создать полный API моддинга, который будет доступен для сценариев lua. Я также создал бы учебники, чтобы …

1
Объемы распространения света: анизотропная фильтрация объемных данных
Я реализовал алгоритм Cascaded Light Propagation Volumes (без косвенного затенения) для рассеянного глобального освещения в реальном времени, подробно описано здесь и здесь . Это работает нормально, но я все еще пытаюсь исправить один артефакт в частности. Краткое содержание Вы можете пропустить это, если вы уже знаете, как работает алгоритм. Алгоритм …

3
Слепящий поворот зеркал
Я поворачиваю своего игрового персонажа, чтобы посмотреть на цель, используя следующий код: transform.rotation = Quaternion.Slerp(startQuaternion, lookQuaternion, turningNormalizer*turningSpeed/10f) startQuaternion - это текущее вращение персонажа, когда дается новая цель. lookQuaternion - это направление, в котором должен смотреть персонаж, и оно установлено так: destinationVector = currentWaypoint.transform.position - transform.position; lookQuaternion = Quaternion.LookRotation(destinationVector, Vector3.up); turnNormalizer …

5
Как масштабировать пиксельную графику без размытия в GM Studio?
Я создаю игру в Game Maker Studio, которая использует пиксельную графику. Когда я запускаю игру, все масштабированные текстуры действительно размыты. (Это не случается с маленькими.) Например, это изображение рендерится в игре так: Есть ли способ изменить размер маленьких пикселей на большие, а не размытые ?

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.