Среда, 17 Апреля 2024, 02:05

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 2
  • 1
  • 2
  • »
Форум игроделов » Записи участника » SilverOverlord [21]
Результаты поиска
SilverOverlordДата: Вторник, 05 Ноября 2013, 15:31 | Сообщение # 1 | Тема: Вопрос про расширения
был не раз
Сейчас нет на сайте
У меня видеокарта не тянет opengl выше 3.1.
Допустим, я скачаю расширение на геометрические шейдеры (я ещё не знаю, что это такое, но вдруг в будущем понадобится).
Эти шейдеры будут по-человечески выполняться на GPU, или, раз это расширение, они попадут в другое место?
Вообще, opengl с расширениями будет работать с той же скоростью, что и версии opengl, где эти расширения уже зашиты в core?
SilverOverlordДата: Вторник, 05 Ноября 2013, 12:27 | Сообщение # 2 | Тема: VAO и VBO
был не раз
Сейчас нет на сайте
Спасибо, посмотрю.
SilverOverlordДата: Вторник, 05 Ноября 2013, 12:24 | Сообщение # 3 | Тема: VAO и VBO
был не раз
Сейчас нет на сайте
Вернёмся к вопросу темы...
SilverOverlordДата: Вторник, 05 Ноября 2013, 12:23 | Сообщение # 4 | Тема: VAO и VBO
был не раз
Сейчас нет на сайте
Чего?

Сообщение отредактировал SilverOverlord - Вторник, 05 Ноября 2013, 12:25
SilverOverlordДата: Вторник, 05 Ноября 2013, 11:26 | Сообщение # 5 | Тема: VAO и VBO
был не раз
Сейчас нет на сайте
Я начинающий в OpenGL версий больше 3.0, в связи с этим такой вопрос:
Что представляют собой VBO и VAO? Есть ли русскоязычные статьи про это?

Я представляю себе, что VAO и VBO передаются на видеокарту и потом в графический конвейер. В VBO хранятся параметры для вершин
А вот хочется узнать, для чего нужен VAO. По-моему, он как-то объединяет несколько VBO.
Я правильно понимаю, что, например, под каждую загружаемую модель заводится отдельный VAO?

Вообще, насколько крупными объектами являются VAO? То есть, если насоздавать много VAO и в каждый поместить по VBO, будет сильно хуже, чем если создать один VAO и все эти VBO поместить в него?
SilverOverlordДата: Понедельник, 22 Июля 2013, 18:15 | Сообщение # 6 | Тема: Книги о геймдеве
был не раз
Сейчас нет на сайте
Посоветуйте книги о программировании игр на языке c/c++. С учётом того, что в языке я разбираюсь.
При этом книги, не связанные с отрисовкой графики (а таких много) и игровым ИИ. Желательно - что-нибудь из области проектирования классов в программе и повышения быстродействия.
SilverOverlordДата: Четверг, 04 Июля 2013, 16:59 | Сообщение # 7 | Тема: Игровая механика TD
был не раз
Сейчас нет на сайте
Цитата (lentinant)
NightBlaze, очень хорошая статья, только в конкретно моей игре она не особо пригодится (у меня существенно отличается один базовый момент).

Тема ещё активна?
Один базовый момент? Ок, всё понял. Сейчас, навскидку несколько типов врагов:
1) Прозрачный - сквозь него проходит лазер (урон при этом наносится).
2) Танк - живучий, дамаг соседних врагов принимает на себя, пока жив.
3) Летающий - летит над лазерами, для того, чтобы нанести таким урон, нужно перенаправлять лучи на высоту через специальные башни-перископы.
4) Подрывник - может взрывать башни, стоящие рядом с дорожкой.
5) Ледяной - хиляется от синего луча.
6) С щитом - спереди неуязвим, атаковать его можно только сзади.
7) Некромант - воскрешает павших товарищей в виде зомби.
8) Босс. Появляется один, но при этом иногда рожает монстров послабее. Живуч.
SilverOverlordДата: Четверг, 18 Апреля 2013, 16:04 | Сообщение # 8 | Тема: Обнуление указателей
был не раз
Сейчас нет на сайте
И что же хранить в этом списке? Указатели на удалённые объекты или указатели на указатели, которые нужно обнулять? Если первое, то это чушь. Если второе, то всяко понадобится для каждого объекта список указателей, которые на него ссылаются.
SilverOverlordДата: Четверг, 18 Апреля 2013, 15:43 | Сообщение # 9 | Тема: Обнуление указателей
был не раз
Сейчас нет на сайте
Я считаю процесс пробежки по этому массиву N раз в секунду долгим...
SilverOverlordДата: Четверг, 18 Апреля 2013, 15:22 | Сообщение # 10 | Тема: Обнуление указателей
был не раз
Сейчас нет на сайте
Указателей может быть много.

Добавлено (18.04.2013, 15:22)
---------------------------------------------
И находиться они могут много где.

SilverOverlordДата: Четверг, 18 Апреля 2013, 15:16 | Сообщение # 11 | Тема: Обнуление указателей
был не раз
Сейчас нет на сайте
Привет всем! Опишу проблему:
В игре есть разные объекты: человечки, деревья, и всё такое. В общем, всё как обычно.
Несомненно, должны существовать переменные, содержащие адрес какого-то объекта (например, "в этой переменной хранится, какое дерево рубит этот человек"). Это может быть просто указатель или индекс в каком-нибудь массиве для всех объектов - не важно.
Суть проблемы в том, что когда объект удаляется, то на его место в памяти может создаться какой-нибудь другой объект. И тогда этот указатель на удалённый объект станет устаревшим, обращение по нему приведёт к действиям над новым объектом, а это не есть хорошо.
Вариант "запретить занимать память, в которой был старый объект" не катит по разумным причинам - такие "могилки" в памяти приводят к утечкам.

Хочу знать, насколько разумен такой вариант:
В каждом объекте находится список всех указателей, которые на него ссылаются. При удалении объекта они все обнуляются.
При этом указатель - это особый объект, который при изменении значения записывает в список объекта себя и всё такое.
SilverOverlordДата: Суббота, 30 Марта 2013, 19:39 | Сообщение # 12 | Тема: Параметры объекта
был не раз
Сейчас нет на сайте
Это собственно и есть первый способ.
Попробую описать вам, что за "страшные системы" я хотел сделать, для которых удобен второй.
Некоторые параметры (как сила атаки, скорость, защита и т.п.) могут меняться под действием разных факторов, как, например, ношение брони, оружия, различные заклинания...
Я хочу это реализовать так: к каждому параметру, который может так изменяться, пристраивается массив модификаторов. Модификатор представляет из себя структуру типа "+4 к этому параметру". При этом итоговое значение параметра есть начальное значение плюс сочетание модификаторов.
И если параметры лежат в массиве, пристраивать к ним модификаторы удобнее.
SilverOverlordДата: Суббота, 30 Марта 2013, 15:59 | Сообщение # 13 | Тема: Параметры объекта
был не раз
Сейчас нет на сайте
Переформулирую свой пост:
Я не вижу смысла тратить время на то, чтобы разбираться в этом. Насколько я понял, вы в этом разбираетесь. Не могли бы вы описать мне, в чём суть этого.
SilverOverlordДата: Суббота, 30 Марта 2013, 15:48 | Сообщение # 14 | Тема: Параметры объекта
был не раз
Сейчас нет на сайте
Лень качать, можно это описать в двух словах?
SilverOverlordДата: Суббота, 30 Марта 2013, 15:42 | Сообщение # 15 | Тема: Параметры объекта
был не раз
Сейчас нет на сайте
Не буду описывать их, это связано с некоторыми страшными системами...
SilverOverlordДата: Суббота, 30 Марта 2013, 15:11 | Сообщение # 16 | Тема: Параметры объекта
был не раз
Сейчас нет на сайте
Выражайтесь конкретнее.
SilverOverlordДата: Суббота, 30 Марта 2013, 15:06 | Сообщение # 17 | Тема: Параметры объекта
был не раз
Сейчас нет на сайте
Почему же?
Обращение к переменной-члену - это "найти объект в памяти", "отыскать в нём переменную".
Обращение к элементу массива-члена - это "найти объект в памяти", "отыскать в нём массив", "взять из него элемент".
SilverOverlordДата: Суббота, 30 Марта 2013, 14:35 | Сообщение # 18 | Тема: Параметры объекта
был не раз
Сейчас нет на сайте
Делаю то, что необходимо в любой игре - параметры объектов.
То есть есть, например, человек (щенок, инопланетянин, Уроборос). У него есть какие-то параметры (жизни, скорость...).. У меня есть два варианта реализовать это:
1) Банальный:
Код

class Human
{
     float HP;
     float speed;
     ...
};

И обращение ко всему этому настолько же банально:
Код

hum.HP-=d;
speed=5;

Но у этого варианта есть некоторые геммороички для меня, не буду их описывать.
2) Есть у меня альтернативный вариант, в котором этих геммороичек нет. Но я боюсь, что он может ударить по быстродействию:
Код

class Human
{
     float params[NUMBER_OF_PARAMS];
};

И обращение ко всему этому:
Код

hum.params[PARAM_HP]-=d;
hum.params[PARAM_SPEED]=5;


Насколько этот вариант убивает быстродействие?
SilverOverlordДата: Пятница, 29 Марта 2013, 08:48 | Сообщение # 19 | Тема: Физический движок
был не раз
Сейчас нет на сайте
"Механизм обработки столкновений"...
То, что происходит при столкновении - я описал в первом посте.
Как обработать столкновения и насколько глубоко они проникли друг в друга - это вообще отдельный вопрос, он тут не рассматривается.
SilverOverlordДата: Четверг, 28 Марта 2013, 19:11 | Сообщение # 20 | Тема: Физический движок
был не раз
Сейчас нет на сайте
Цитата (EchoIT)
Эмм... Это вроде зависит от системы коллизий...

Что такое "система коллизий"?
Форум игроделов » Записи участника » SilverOverlord [21]
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг