Так ты рисуешь external или internal?Когда врубаю свои боксы, фпс падает с 300 до 40. Созрел вопрос почему и должно ли так быть?
Рисую с помощью directx9.
InternalТак ты рисуешь external или internal?
Эндсцену как хукаешь? Через киеро?Internal
ДаЭндсцену как хукаешь? Через киеро?
Эндсцену как хукаешь? Через киеро?
Вызов отрисовки как происходит?
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++: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); }
Код вроде без рофлов, но ты же вроде должен еще найти координаты кости, конвертировать их уже непосредственно отрисовать бокс вокруг игрока. Мб в этом дело? Попробуй отрисовать просто бокс с статичными координатами и посмотри на фпс, так же запусти дебаг и посмотри,что конкретно жрет фпс
Почему vs в релизе не видит d3dx9.h? Он там есть и я его подключил, но он его не видит, в чём рофл?Посмотри какие функции сколько жрут ресурсов -Пожалуйста, авторизуйтесь для просмотра ссылки.
Это лучший способ оптимизации программы
Также в дебаге фпс может быть в десятки раз ниже, чем в релизе, это нормально, поэтому если смотрел в дебаге, также проверь какой в релизе будет фпс
в свойствах проекта для дебага и релиза отдельные настройки, подключи все в релизеПочему vs в релизе не видит d3dx9.h? Он там есть и я его подключил, но он его не видит, в чём рофл?
Проект предоставляет различный материал, относящийся к сфере киберспорта, программирования, ПО для игр, а также позволяет его участникам общаться на многие другие темы. Почта для жалоб: admin@yougame.biz