Пользователь
- Статус
- Оффлайн
- Регистрация
- 5 Фев 2018
- Сообщения
- 134
- Реакции
- 33
крч, у меня трабл.
Боксы уходят вниз при отдалении.
Сам код выше, сделал высоту по формуле нахождения длины вектора ( от ноги до головы), но , увы, не работает. Еще был вариант с разницой позиции головы и высоты, но что-то тоже не робит. Долблюсь с этим 2-й день, объясните мат.часть (((( В шкале прогуливал матешу
Код:
D3DXVECTOR3 enemyPos3D = BoxEspTools->getPos(pEntity);
D3DXVECTOR3 headPosition3D;
D3DXVECTOR3 myPosition3D = BoxEspTools->getPos(BoxEspTools->getLocalPlayer());
D3DXVECTOR3 enemyleg3D;
D3DXVECTOR2 enemyleg2D;
D3DXVECTOR2 enemyPos2D;
D3DXVECTOR2 enemyHeadposition2D;
D3DXVECTOR2 myPos2D;
DWORD thisBones = *(DWORD*)(pEntity + BoxEspTools->offset.m_dwBoneMatrix);
getBonePos(thisBones, head, &headPosition3D);
getBonePos(thisBones, leftLeg, &enemyleg3D);
// getBonePos(thisBones, leftLeg, &myPosition3D);
//getBonePos(thisBones, leftLeg, &headPos);
if (WorldToScreen(headPosition3D, enemyHeadposition2D, *(matrix*)getViewMatrix(), rect.right - rect.left, rect.bottom - rect.top) )
{
if (WorldToScreen(enemyleg3D, enemyleg2D, *(matrix*)getViewMatrix(), rect.right - rect.left, rect.bottom - rect.top))
{
renderLine((rect.right - rect.left)/2, (rect.bottom - rect.top), enemyHeadposition2D.x, enemyHeadposition2D.y, 1, colors.Turquoise);
float height = sqrt( (enemyHeadposition2D.y - enemyleg2D.y) * (enemyHeadposition2D.y - enemyleg2D.y) + ((enemyHeadposition2D.x - enemyleg2D.x) * (enemyHeadposition2D.x - enemyleg2D.x)) );
float width = height / 2;
drawBox(enemyHeadposition2D.x -( width/2), enemyHeadposition2D.y, width, height, colors.Green);
}
// renderLine((rect.right - rect.left) / 2, (rect.bottom - rect.top) / 2, enemyHeadposition2D.x, enemyHeadposition2D.y, 5, colors.Red);