Saya membuat game dan ingin menggunakan grafik vektor. Saya mulai mengkode ulang menggunakan Kairo dan kinerjanya mengerikan. Jadi, saya mencari perpustakaan yang berbeda. Perlu untuk C ++ dan lintas-platform (misalnya tidak ada Direct2D). Ada pertanyaan lain yang diajukan seseorang sebelumnya seperti ini, tetapi tidak ada jawaban yang cocok. Pasti ada sesuatu ...?
9
Jawaban:
Saya khawatir masalah ini cukup rumit, beberapa solusi multi platform tampaknya telah diluncurkan, dan bahkan lebih sedikit yang bertahan dengan sendirinya. Saya mencari ke subjek beberapa bulan yang lalu. Saya memiliki kendala karena saya membutuhkan mesin untuk berjalan di iOS dan Android. Tidak menemukan sesuatu yang cocok untuk saya saat itu.
Tetapi beberapa petunjuk dari apa yang saya ingat: setiap sistem GUI memiliki beberapa bentuk menggambar API. Jadi Anda mungkin menemukan sesuatu yang menarik di dalam platform lintas seperti QT .
Setara dengan Kairo akan menjadi AntiGrain. Anda mungkin ingin membandingkan kinerjanya.
OpenFrameworks memiliki dukungan untuk grafik vektor.
Perpustakaan yang sangat besar yang memiliki beberapa dukungan grafik vektor - dan bahasa yang didedikasikan untuk itu - adalah ImageMagick .
Level yang lebih rendah Anda akan menemukan Libxmi dan Libart dari proyek gnome.
Bukan API tingkat tinggi - dan saya tidak yakin peluang apa yang cocok untuk Anda - tetapi ada OpenVG standar . Ada beberapa port OpenVG melalui software OpenGL dan renderers OpenGL ES. Mesa 3D juga tampaknya memiliki implementasi OpenVG. Tetapi untuk beberapa platform hanya solusi komersial yang akan tersedia.
Ada banyak perpustakaan tingkat tinggi yang mengintegrasikan API untuk grafik vektor. Di antaranya ada satu sumber terbuka bernama Clutter untuk desain GUI dan yang digunakan dalam desain game serius ada scaleform (Not Open Source). Mesin permainan ini memiliki beberapa fungsi untuk menggambar grafik vektor: 2DEngine
EDIT : rupanya menggunakan cairo.
sumber
MonkVG adalah emulasi OpenVG lintas platform di atas OpenGL ES 1.1 dan 2.0. Lihat: https://github.com/micahpearlman/MonkVG
Catatan: Saya penulis asli dan pengelola perpustakaan ini. Ini memiliki lisensi BSD yang sangat liberal.
sumber
Saya akhirnya tidak repot dan hanya pergi dengan gambar beresolusi tinggi dan scaling dengan OpenGL. Ini cukup berhasil untuk situasi saya.
sumber