Не знаю актуальна эта ветка или уже нет.
Дело в том, что в разных виндовых темах высота заголовка окна SM_CYCAPTION разная,
но Irrlicht в CIrrDeviceWin32.c при созднии окна не учитывает этой высоты.
Этот важный параметр учтен лишь в CursorControl.
Затем везде в движке фигурирует высота созданного таким образом окна.
Подобный код в приложении возможно решил бы проблему:
#define WINDOZE defined(_WIN32)||defined(_WIN64)||defined(WIN32)||defined(WIN64)
bool Init_Irr(core::dimension2d<s32> Resolution,bool fullscreen)
{
if(!device)
{
s32 Real_resY=Resolution.Y;
#if WINDOZЕ
int FSCRDBG = GetSystemMetrics(SM_CYCAPTION)
if(!fullscreen) Real_resY-=FSCRDBG%2? FSCRDBG+1:FSCRDBG;
#endif //WINDOZE
core::dimension2d<s32> dim=core::dimension2d<s32>(Resolution.X,Real_resY);
device=createDevice(
Driver_Type,
dim,
.........
);
}
if(!device) return false;
return true;
}
Далее в приложении считаем конечно :) реальную высоту окна
driver->getScreenSize().Height
Тема в архиве.