Перейти к содержанию

Рекомендуемые сообщения

Увидел видео http://www.youtube.com/watch?v=CTHB3TX-gSI и стало интересно как это реализовано и работает.

У нас есть координаты свой и врагов в формате Пример "-234.45 45.56 -7.67",и есть изображение карты размером 1024 1024.

И возник вопрос как перевести координаты "-234.45 45.56 -7.67" в "15 85" и правильно привязать к карте изображения.

Пробовал так "(position_x / ширину миникарты) * на любое число + (ширину миникарты/2)" но точки не совпадают с картой и не удается подогнать правильно, то террористы верху то спецназ внизу.

Не подскажите как правильно реализовать?

Ссылка на комментарий
Поделиться на другие сайты

Привет!

Тебе нужны координаты только двум осям (карта ведь двухмерная), а так же уметь проецировать эти координаты на картинку. Для этого нужно почитать про видовую матрицу (view matrix) и зачем она нужна. Почитать можно, например, [тут]. Суть в том, что тебе нужно перевести координаты игрового объекта в Y-проекции (вид сверху) на плоскость, плюс учесть масштаб. Последнее, думаю, подбирается экспериментально - или можно взять размер объекта и отношение его к размеру карты.

Ссылка на комментарий
Поделиться на другие сайты

  • 1 месяц спустя...

keng, как я понял, мне надо найти viewmatrix персонажа и умножить на координаты врага, и сделать наподобие ESP, только Y надо заменить на Z и подогнать параметры?

А если, я захочу отображать на карте себя, как мне это сделать, какую viewmatrix искать или умножать на свой координаты?

Ссылка на комментарий
Поделиться на другие сайты

ViewMatrix нужна для того, чтобы переводить координаты из 3D в 2D, то есть проекцировать игровое пространство на твой монитор. Эта самая видовая матрица обычно есть только у игрока, так как игрок в общем и целом - просто камера, которая передвигается по карте, со своим полем и углами обзора.

 

Тебе же нужно сделать "вид сверху", то есть найти изображение карты, отобразить его на картинке и проецировать нужные тебе объекты так, как если бы камера смотрела на эту карту, то есть вдоль плоскости Y. Попробуй самостоятельно сделать окно, в нем - точки или кубики, а в углу - эту самую карту. Поймешь, как это работает - сможешь и в чужой игре сделать.

Ссылка на комментарий
Поделиться на другие сайты

Пробовал так "(position_x / ширину миникарты) * на любое число + (ширину миникарты/2)" но точки не совпадают с картой и не удается подогнать правильно, то террористы верху то спецназ внизу.Не подскажите как правильно реализовать?

 

 

Судя по всему код уже написан с ошибками и его только надо немного поправить. Поэтому логично опубликовать код и возможно получить быстрый ответ.

Ссылка на комментарий
Поделиться на другие сайты

MasterGH, жесткий накрылся не смогу дать(((

Я с час разбираю с AssaultCube нашел координаты свой и врага и осталось найти viewmatrix и FOV, и буду пробовать сначала ESP сделать, а потом свою миникарту.

Ссылка на комментарий
Поделиться на другие сайты

Чтобы сделать мини карту в чужой игре можно сначала сделать её в своем приложении, отладить, заточить,  проверить на ошибки. А потом уже встраивать в игру.

 

offtopic.gif Хук и рисование миникарты это наверно кода на строк 200, если не меньше. У меня мои проекты на C# на несколько десятков тысяч строк. Вот если у меня жесткий сломается и данные не восстановить, то будет грустно. Это я так, для примера тем, у кого жесткий "ломается" и "не восстановить 200 строк" через шесть дней после создания темы. :)  
Ссылка на комментарий
Поделиться на другие сайты

  • 2 месяца спустя...
  • 2 недели спустя...

Точно такая же. То, что камера не меняет угол, не значит, что математику отменили. Рисование происходит все равно с использованием матриц - в 3D-графике без них никуда.

Ссылка на комментарий
Поделиться на другие сайты

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.