Подведи собственные итоги года совместно с YOUGAME и забери ценные призы! Перейти

Вопрос Сколько должен жрать fps нормальный esp boxes?

  • Автор темы Автор темы Kuiresu
  • Дата начала Дата начала
Начинающий
Начинающий
Статус
Оффлайн
Регистрация
23 Мар 2021
Сообщения
29
Реакции
1
Когда врубаю свои боксы, фпс падает с 300 до 40. Созрел вопрос почему и должно ли так быть?
Рисую с помощью directx9.
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Эндсцену как хукаешь? Через киеро?
Вызов отрисовки как происходит?
C++:
Expand Collapse Copy
void DrawLine(int x1, int y1, int x2, int y2, int thickness, bool antialias, D3DCOLOR col) {
    ID3DXLine* lineL;
    D3DXCreateLine(ExternalDevice, &lineL);

    D3DXVECTOR2 Line[2];
    Line[0] = D3DXVECTOR2(x1, y1);
    Line[1] = D3DXVECTOR2(x2, y2);

    lineL->SetWidth(thickness);
    lineL->SetAntialias(antialias);
    lineL->Draw(Line, 2, col);
    lineL->Release();
}
void DrawEspBox(int x, int y, int w, int h, int thickness, bool antialias, D3DCOLOR col) {
    DrawLine(x, y, x + w, y, thickness, antialias, col);
    DrawLine(x, y + h, x + w, y + h, thickness, antialias, col);
    DrawLine(x, y, x, y + h, thickness, antialias, col);
    DrawLine(x + w, y, x + w, y + h, thickness, antialias, col);
}
Далее в EndScene под imgui нахожу нужные координаты и от них использую код выше.
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
C++:
Expand Collapse Copy
void DrawLine(int x1, int y1, int x2, int y2, int thickness, bool antialias, D3DCOLOR col) {
    ID3DXLine* lineL;
    D3DXCreateLine(ExternalDevice, &lineL);

    D3DXVECTOR2 Line[2];
    Line[0] = D3DXVECTOR2(x1, y1);
    Line[1] = D3DXVECTOR2(x2, y2);

    lineL->SetWidth(thickness);
    lineL->SetAntialias(antialias);
    lineL->Draw(Line, 2, col);
    lineL->Release();
}
void DrawEspBox(int x, int y, int w, int h, int thickness, bool antialias, D3DCOLOR col) {
    DrawLine(x, y, x + w, y, thickness, antialias, col);
    DrawLine(x, y + h, x + w, y + h, thickness, antialias, col);
    DrawLine(x, y, x, y + h, thickness, antialias, col);
    DrawLine(x + w, y, x + w, y + h, thickness, antialias, col);
}
Далее в EndScene под imgui нахожу нужные координаты и от них использую код выше.
Код вроде без рофлов, но ты же вроде должен еще найти координаты кости, конвертировать их уже непосредственно отрисовать бокс вокруг игрока. Мб в этом дело? Попробуй отрисовать просто бокс с статичными координатами и посмотри на фпс, так же запусти дебаг и посмотри,что конкретно жрет фпс
 
Посмотри какие функции сколько жрут ресурсов -
Пожалуйста, авторизуйтесь для просмотра ссылки.

Это лучший способ оптимизации программы

Также в дебаге фпс может быть в десятки раз ниже, чем в релизе, это нормально, поэтому если смотрел в дебаге, также проверь какой в релизе будет фпс
 
Код вроде без рофлов, но ты же вроде должен еще найти координаты кости, конвертировать их уже непосредственно отрисовать бокс вокруг игрока. Мб в этом дело? Попробуй отрисовать просто бокс с статичными координатами и посмотри на фпс, так же запусти дебаг и посмотри,что конкретно жрет фпс
Посмотри какие функции сколько жрут ресурсов -
Пожалуйста, авторизуйтесь для просмотра ссылки.

Это лучший способ оптимизации программы

Также в дебаге фпс может быть в десятки раз ниже, чем в релизе, это нормально, поэтому если смотрел в дебаге, также проверь какой в релизе будет фпс
Почему vs в релизе не видит d3dx9.h? Он там есть и я его подключил, но он его не видит, в чём рофл?
 
Почему vs в релизе не видит d3dx9.h? Он там есть и я его подключил, но он его не видит, в чём рофл?
в свойствах проекта для дебага и релиза отдельные настройки, подключи все в релизе
 
Назад
Сверху Снизу