Изометрические координаты, ромбовидная форма, нежелательное пространство между плиткамиC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Изометрические координаты, ромбовидная форма, нежелательное пространство между плитками

Сообщение Anonymous »

Я работаю с SMFL/C++ над созданием 2D-изометрического игрового движка. Я получил это, когда выполнял изометрические расчеты:
Изображение

Вот моя формула для расчета изометрических координат в моем 2D-движке:
Для координат IJ у меня есть:

Код: Выделить всё

x = (I - J) * (tileWidth / 2);
y = (J + I) * (tileHeight / 2);

//Totally working with classics tiles
РЕДАКТИРОВАТЬ: Моя проблема связана с формой моих плиток, которая представляет собой куб, но я понятия не имею, как это исправить. Действительно ли мне нужно выполнять какие-то сложные математические вычисления для обработки трехмерных объектов (я бы предпочел избежать этого) или я могу просто немного изменить формулу?
РЕДАКТИРОВАТЬ 2: Решение: int isoY = (x + y) * (height / 4);

Подробнее здесь: https://stackoverflow.com/questions/336 ... ween-tiles
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»