मैं एक समानांतर कर्नेल एल्गोरिदम का उपयोग करने की कोशिश कर रहा हूं, लेकिन इसे कर्नेल से ओपनजीएल फ़ंक्शंस [जैसे रेखा खींचना] को कॉल करने की आवश्यकता है, क्या यह संभव है? एक बनावट वस्तु के लिए चित्रण। सुराग के लिए thx
उत्तर:
उत्तर № 1 के लिए 1नहीं वास्तव में नहीं।
सबसे पहले, ओपनजीएल ड्राइंग कमांड CPU पक्ष पर जारी किए जाते हैं (उदाहरण के लिए glDrawArrays)। ओपनसीएल कर्नेल में आप जीपीयू पर काम कर रहे हैं और इन तरीकों को कॉल नहीं कर सकते हैं।
इसके अतिरिक्त, ओपनसीएल में आपको टीसीयू रेंडरिंग पाइपलाइन के फिक्स्ड-फ़ंक्शन पार्ट्स तक पहुंच नहीं है जैसे टेस्सेलेशन यूनिट या रास्टरराइज़र।
आप निश्चित रूप से क्या कर सकते हैं ओपनसीएल में 2 डी बफर बनाते हैं, अपने आप को लाइन प्रतिपादन लागू करते हैं और वहां "पिक्सेल" पेंट करते हैं, लेकिन संभवत: वह नहीं है जो आप चाहते हैं।
ओपनजीएल-ओपनसीएल इंटरऑपरेबिलिटी के लिए एक्सटेंशन भी हैं, एक ट्यूटोरियल यहां है: https://software.intel.com/en-us/articles/opencl-and-opengl-interoperability-tutorial
हो सकता है कि अगर आप हमें बताएं कि आप क्या हासिल करना चाहते हैं तो हम आपको बेहतर विकल्प दे सकते हैं :)