botmaker Опубликовано 19 июня, 2022 Поделиться Опубликовано 19 июня, 2022 Видел тему, в которой используют видовую матрицу для написания ESP: https://gamehacklab.ru/topic/5129-view-matrix/#comments https://github.com/remizovm/keng_esp_hack/blob/master/esp.c Нашел что-то похожее на видовую матрицу, возможно, это она. Немного адаптировал функцию из гитхаба выше под C# Спойлер int world_to_screen(Vector3 target, Matrix4x4 view_matrix, int width, int height, out Vector3 screenPos) { screenPos = new Vector3(); screenPos.X = view_matrix.M11 * target.X + view_matrix.M12 * target.Y + view_matrix.M13 * target.Z + view_matrix.M14; screenPos.Y = view_matrix.M21 * target.X + view_matrix.M22 * target.Y + view_matrix.M23 * target.Z + view_matrix.M24; float w = view_matrix.M31 * target.X + view_matrix.M32 * target.Y + view_matrix.M33 * target.Z + view_matrix.M34; if (w < 0.01f) return 0; float invw = 1.0f / w; screenPos.X *= invw; screenPos.Y *= invw; float x = width / 2; float y = height / 2; x += 0.5f * screenPos.X * width + 0.5f; y -= 0.5f * screenPos.Y * height + 0.5f; return 1; } Возвращает 0 постоянно. Результата, естественно нет. Может быть неправильно нашел матрицу? Вот примеры Спойлер Ссылка на комментарий Поделиться на другие сайты Поделиться
botmaker Опубликовано 21 июня, 2022 Автор Поделиться Опубликовано 21 июня, 2022 В общем неправильно. Надо было на 8 байт подвинуть и транспонировать. 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения