Допустим, я хочу написать свой WM с блекджеком и шлюхами. В какую сторону мне копать?
Насколько я понимаю, композитный WM это обычное полноэкранное приложение. Оно перехватывает битмапы окон остальных приложений и рисует на своём как хочет. Это обеспечивается путём специальной регистрации в иксах при старте. Я прав? Если да, то можно сначала написать просто приложение, которое рисует воображаемые окошки внутри себя и даёт их таскать и т. д., отладить всю работу, а потом уже превратить это в WM, получая список окошек и битмапы для их у иксов, а не создавая самому.
Также насколько я понимаю, композитный WM использует для всего OpenGL. Содержимое окошек, битмапы из темы оформления - всё это грузится в текстуры, а затем натягивается на треугольники.
Реально ли использовать для создания окна WM и работы с OpenGL SDL?