2010-10-29 13 views
7

के लिए 2 डी वेक्टर ग्राफ़िक रेंडरर मैं ओपनजीएल गेम में वेक्टर ग्राफिक्स का उपयोग करना चाहता हूं। मैं वेक्टर ग्राफिक्स का उपयोग करना चाहता हूं क्योंकि उन्हें गुणवत्ता के नुकसान के बिना सस्ती रूप से स्केल किया जा सकता है।ओपनजीएल

बेशक, ड्राइंग हार्डवेयर तेज होनी चाहिए, इसलिए मैं एक बनावट में सॉफ़्टवेयर में आकर्षित नहीं करना चाहता हूं।

अब मुझे आश्चर्य है कि क्या पुस्तकालय ऐसा पहले से मौजूद है या नहीं। क्या कोई पुस्तकालय है, जो कुछ वेक्टर ग्राफ़िक प्रारूप लोड कर सकता है और इसे OpenGL का उपयोग करके प्रदर्शित कर सकता है?

+0

जब तक कि लेखक एक ही समय में OpenGL + 2D वेक्टर ग्राफिक्स नहीं चाहता। – tibur

+0

मुझे जो कुछ चाहिए वो स्पष्ट करने की कोशिश करें। मैं एक वेक्टर ग्राफ़िक फ़ाइल (i.E. SVG) लोड करना चाहता हूं, वेक्टर ग्राफ़िक फ़ाइल को आकर्षित करने के लिए कॉल के साथ मिश्रित मेरे सामान्य ओपनजीएल कॉल करें। मैं मानता हूं, दूसरा धागा इन आंशिक रूप से जवाब देता है। – Nathan

+0

जोश ली द्वारा लिंक किया गया प्रश्न आईएमएचओ तरीका इस के डुप्लिकेट के लिए बहुत व्यापक है या यहां तक ​​कि एक ऐसा जवाब भी है जो बुकलेट आकार का नहीं होगा ... – Fizz

उत्तर

2

मैं ओपनवीजी के साथ भी परेशान नहीं होगा, यहां तक ​​कि मोंकवीजी के साथ भी नहीं, जो शायद सबसे आधुनिक है, यद्यपि अधूरा कार्यान्वयन है। ओपनवीजी कमेटी 2011 में तब्दील हो गई है और अधिकतर यदि सभी कार्यान्वयन नहीं छोड़ रहे हैं या सर्वश्रेष्ठ विरासत सॉफ्टवेयर पर हैं।

2011 के बाद से, कला के राज्य मार्क किल्गार्ड के बच्चे, NV_path_rendering, जो वर्तमान में केवल एक विक्रेता (Nvidia) विस्तार आप पहले से ही अपने नाम से समझ गए होंगे के रूप में है। उस पर सामग्री का एक बहुत कुछ कर रहे हैं:

NV_path_rendering अब दृश्य, जब उपलब्ध पीछे गूगल के Skia पुस्तकालय द्वारा किया जाता है।

और एक अधिक विशेष टिप्पणी में उठाया बिंदु जवाब देने के लिए (Nvidia देर 2013 और 2014 में कोड योगदान), आप, पथ मिश्रण अन्य ओपन (3 डी) सामान के साथ प्रतिपादन कर सकते हैं के रूप में पर डेमो:

आप कर सकते हैं पाठ्यक्रम लोड SVGs और इस तरह के https://www.youtube.com/watch?v=bCrohG6PJQE की। वे पथ के लिए पोस्टस्क्रिप्ट वाक्यविन्यास का भी समर्थन करते हैं।

एक अपस्टार्ट भी कम (या नीचे दाएं) विक्रेता समर्थन या अकादमिक ग्लिट्ज नैनोवीजी है, जो वर्तमान में विकसित और बनाए रखा गया है।(https://github.com/memononen/nanovg) ओपनजीएल पर 2 डी पुस्तकालयों की संख्या को देखते हुए जो समय के साथ आते हैं और चले गए हैं, आप मेरी विनम्र राय में किसी प्रमुख विक्रेता द्वारा समर्थित कुछ का उपयोग करके एक बड़ी शर्त ले रहे हैं।

1

OpenVG पर एक नज़र डालें।

+0

धन्यवाद। ओपनवीजी अच्छा लगता है। लेकिन मैं थोड़ा उलझन में हूँ। यह केवल एक मानक है, पुस्तकालय नहीं, है ना? क्या लिनक्स और विंडोज़ के लिए एक (ओपन सोर्स) हार्डवर त्वरित कार्यान्वयन मौजूद है? – Nathan

+0

ठीक है। मैंने सोचा कि एक एनवीडिया कार्यान्वयन था। इस धागे को देखें: [सर्वश्रेष्ठ ओपनवीजी कार्यान्वयन?] (Http://stackoverflow.com/questions/401422/best-openvg- कार्यान्वयन)। – tibur

1

एसवीजी के लिए प्रस्तुतकर्ताओं के बारे में बहुत सारी चर्चा in this Slashdot post। मुझे नहीं पता कि उनमें से कौन सा ओपनजीएल का उपयोग कर रहा है, यदि कोई हो।

This SO question में कई सुझाव हैं, जिनमें sauvage शामिल है जो पायथन में किया जाता है। Cairo भी स्पष्ट रूप से एक संभावना है।

कई शक्तिशाली पुस्तकालय हैं जो ओपनजीएल के बिना एसवीजी प्रस्तुत करते हैं। मुझे आश्चर्य है कि यह वास्तव में आवश्यक नहीं है: शायद अधिकांश सिस्टम के ग्राफिक्स कार्ड पर ड्राइंग लाइनें पहले से ही तेज हो चुकी हैं।