Рисование в беспорядке текстуры с Каиром
У меня есть коллекция объектов, которые я использую для рисования и всегда использовал Каир для этого. Я решил переключиться на Clutter с Cogl для рисования, но Cogl, кажется, несколько ограничен для 2D. Пока я уже скучаю по тому, как установить черту для линии, а также ширину линии. Я прочитал две вещи: вы можете использовать необработанные вызовы GL в Cogl и использовать ClutterCairoTexture. К сожалению, я не могу найти никакой документации по использованию вызовов GL внутри cogl_begin_gl/cogl_end_gl и ClutterCairoTexture, по-видимому, устарела.
Было бы невероятно полезно узнать, как использовать Каирский контекст с текстурой Clutter, или как 2D-рисование теперь выполняется в Cogl. Я не могу понять, почему вам не дали возможность изменять ширину линии в Cogl, но, похоже, этого нет в документации, которую я читал. С чертой, с которой я могу справиться, если бы мне пришлось, но было бы лучше, если бы я мог либо продолжать использовать Cairo в Actor/Texture, либо если у Cogl был какой-то способ сделать это.
Благодарю.
1 ответ
Оказывается, ответ - продолжать использовать Cairo, но создать ClutterCanvas и добавить его в любой объект ClutterActor, на который вы рисуете. После этого вам просто нужно подключить функцию к сигналу отрисовки, который дает CairoContext в качестве параметра.