Вопросы с тегом «data-structure»

Объект для организации данных определенным образом, чтобы их можно было эффективно использовать. Примерами являются массивы, объекты, записи, структуры.

5
Есть ли способ сделать динамический мир, такой как MMORPG, горизонтально масштабируемым?
Представьте себе открытый мир с более чем 500 игроками, данные которых меняются со скоростью 20 обновлений / игрок / секунду. В прошлый раз, когда я работал в похожей MMORPG, он использовал SQL, так что, очевидно, он не мог все время запрашивать БД. Вместо этого он загружал все проигрыватели из БД …

3
Как я могу реализовать быстрое и точное обнаружение столкновений 2D?
Я хорошо знаю, как определять, сталкиваются ли два или более 2D-объекта, но мне интересно, как решить, проверять ли столкновение. В предыдущих проектах я просто проверял каждый объект на предмет любого другого объекта (я знаю, уровень глупости O (n ^ 2)), и это создавало не очень плавный игровой процесс. Различные форумы …

5
Структуры данных для логических игр / Правила дедукции / Достаточный набор подсказок?
Я размышлял о разработке логической игры, похожей на головоломку Эйнштейна , в которой были бы разные наборы подсказок для каждого нового игрового воспроизведения. Какие структуры данных вы бы использовали для обработки различных объектов (домашних животных, цветов домов, национальностей и т. Д.), Правил вычетов и т. Д., Чтобы гарантировать, что предоставленные …

3
Как добавить звук, который слышит вражеский ИИ?
Данный: 2D сверху вниз игра Плитки хранятся только в 2D массиве У каждой плитки есть свойство - гаснет (поэтому кирпичи могут быть -50 дБ, воздух - -1) Отсюда я хочу добавить его, чтобы в точке x1, y1 генерировался звук, и он «выбегает». Изображение ниже как бы обрисовывает в общих чертах …

3
Правильный способ справиться с уничтожением игровых объектов
Представьте себе игровой мир, в котором множество и все сущности загружаются динамически, я мог бы представить это как список сущностей, но как насчет их удаления? Хотя при добавлении я мог отодвигать новую сущность, мне может потребоваться удалить ее в любом месте контейнера. Чтобы избежать поиска элемента, чтобы найти его позицию …

1
Как фигуры (прямоугольники) работают в четырехугольных деревьях?
Мне сказали, что четырехугольное дерево является идеальной структурой данных для моей игры, но у меня возникают проблемы с пониманием того, как именно формы работают в четырехугольных деревьях. Я делаю это в JavaScript, но я думаю, что эти вопросы могут применяться к деревьям квадратов на любом языке. Я думаю, что в …

2
Структуры данных в старых играх
Мне любопытно, какие структуры данных используются при программировании старых игр, таких как Super Mario Brothers для NES и Super Mario World для SNES. Насколько я понимаю, игры этого периода были написаны на сборке. Программисты определяли / использовали какие-либо структуры данных? Например: когда группа монет появляется на экране, как они хранятся? …

1
Почему плитки размером 16 × 16 пикселей так распространены?
Есть ли веская причина, по которой плитки (например, Minecraft ) должны быть 16 × 16? У меня есть ощущение, что это как-то связано с двоичным, потому что 16 10000в двоичном, но это может быть совпадением. Я хочу знать, потому что я хочу сделать игру с генерацией ландшафта, и я хочу …

2
Когда я должен представлять точки и размеры как структуры?
Как часть моей простой среды разработки игр на Ruby 2D, мои игровые объекты имеют положение (значения x и y) и размер (ширина и высота). class MyGameObject attr_accessor :x attr_accessor :y attr_accessor :width attr_accessor :height ... Другой подход, который я видел, рассматривал позицию как Pointструктуру, а размер как Sizeструктуру: Point = …

2
Как я могу определить области, заполненные водой?
Я хотел бы улучшить мой маленький игровой движок с помощью приятной на вид симуляции воды Чтобы начать работать над этим, мне нужно найти правильный способ представления воды в игре. К сожалению, я не знаю много разных представлений, поэтому я спрошу вас. Есть похожий вопрос, который я задал некоторое время назад. …

3
Почему я не могу получить bool, упакованный и выровненный в постоянный буфер D3D?
Хорошо, мне трудно собрать bool и выровнять его в константный буфер hlsl, и я не знаю почему. Вот буфер в hlsl cbuffer MaterialBuffer : register(b1) { float3 materialDiffuseAlbedo; float materialSpecularExponent; float3 materialSpecularAlbedo; bool isTextured; }; И вот это в C ++ struct GeometryBufferPass_MaterialBuffer { XMFLOAT3 diffuse; float specularExponent; XMFLOAT3 specular; …

2
В двухмерной игре на основе плиток, как NPC и плитки должны ссылаться друг на друга?
Я делаю движок плиток для 2D-игр сверху вниз. В основном мир состоит из сетки плиток. Теперь я хочу поставить, например, NPC, которые могут двигаться на карте. Что вы считаете лучшим: каждая плитка имеет указатель на NPC, который находится на ее плитке, или NULL-указатель иметь список NPC, и у них есть …

1
Подходящее представление уровня / структура данных для 2D-платформы игры?
Я собираюсь запрограммировать копию Марио на Java. Я думаю о 2 представлениях / структурах данных для уровней, но я не уверен, какой из них выбрать: 2D целочисленный массив. Quadtree, чтобы разделить уровень на части. Каковы его преимущества и недостатки?

1
Самый эффективный способ нарисовать вершину с OpenGL
Я пишу 3D-игру OpenGL. Там будет множество треугольников для местности и объектов в использовании. Я учусь на официальном руководстве OpenGL, и первым представленным методом является вызов функции glVertexпосле glBeginкаждой вершины, которую вы хотите нарисовать. Однако этот метод звучит довольно антично и неэффективно, когда вам нужно нарисовать тысячи треугольников. Я предполагаю, …

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

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