Как самому написать функцию для создания окна?

Как самому написать функции создания окна в C++ без использования библиотек windows.h, winAPI. Как вообще это происходит?
Например я хочу создать свой 2д движок на чистом C++ без создания окна и отрисовки сторонними библиотеками, а сделать абсолютно всё с нуля, что для этого нужно? Возможно ли это вообще, или же без этих библиотек никак?


Ответы (2 шт):

Автор решения: HolyBlackCat

Сомневаюсь, что на Windows можно опуститься ниже уровня WinAPI.

На линуксе есть linux framebuffer - можно рисовать напрямую на экран, без окон и т. п.


Кроме того, если не хотите, чтобы ваш "движок" работал быстро, нужно рисовать на GPU, а не на CPU. Для этого придется использовать одно из API, предоставляемых драйверами видеокарт - OpenGL, Vulkan, ... Свою замену для них вы сделать не сможете, ведь для этого нужно написать свой драйвер и убедить игроков поставить его.


Если хотите мое мнение: вы только потратите время впустую.

Вам хватит проблем с движком и без самодельной графики.

Лучше возьмите кросс-платформенную графическую библиотеку, например SDL2. Она достаточно низкоуровневая, чтобы не было скучно, и при этом работает на всех крупных ОС.

→ Ссылка
Автор решения: Илья К

Можно, если ты готов написать порядка 100.000 строк хардкорного кода самостоятельно, притом часть из него будет на ассемблере, потому что многие действия связанные с системным программированием просто нельзя написать иначе.

→ Ссылка