WinCore долбоору Win32/WGL менен шайкештик катмарын иштеп чыгат, бул кодду компиляциялоого мүмкүндүк берет. Windows- классикалык Win32 API колдонуп C/C++ тилинде жазылган программаларды иштетүү үчүн Linux и macOSWinCore классикалык Win32 иштетүүчүлөрүн тосуп алат жана SDL3 же SDL2 аркылуу рендеринг үчүн платформа аралык серверлерди колдонот. Код C++ тилинде жазылган жана LGPLv3 лицензиясы боюнча таратылат.
Бул долбоор ошол эле автордун LDL китепканасын кайра карап чыгуусунун натыйжасы болгон, ал дагы бир API иштеп чыгуунун ордуна, убакыт сынагынан өткөн Win32 процедуралык APIсин алып, аны ар кандай операциялык тутумдарда жана түзмөктөрдө көчмө кылуу логикалуураак деген тыянакка келген. Идея код Win32 эрежелерине ылайык жазылган, бирок жергиликтүү түрдө компиляцияланат жана иштейт. Windows, Linux и macOS.
Китепкана максималдуу көчмөлүүлүк үчүн катуу C++98 тилинде жазылган, бирок таза C89 баш файлдарын экспорттойт, бул артка шайкештикти камсыздайт жана C FFI аркылуу Rust, Zig, Python жана башка тилдерге оңой байланышууга мүмкүндүк берет. Учурда эки бэкенд бар: SDL2 жана SDL3. XLib жана Wayland үчүн бэкенддер келечекте пландаштырылууда.
Автор бардык мүмкүнчүлүктөрдү туурап көрүү максатын койгон эмес. Windows жана мультимедиа жана кыймылдаткычтын ички системаларына гана көңүл бурат. Учурда 5 Kernel32.dll функциялары (модулду башкаруу, системанын убактысы жана кечигүү), 25 User32.dll функциялары (терезе түзүү, билдирүү циклдери, курсордун абалы жана киргизүүнү иштетүү), 5 Gdi32.dll функциялары (пиксел форматын тандоо, битмап чыгаруу жана буферди которуштуруу) жана 4 Opengl32.dll функциялары (WGL контексттерин түзүү, жок кылуу жана активдештирүү) ишке ашырылган.


Source: opennet.ru
