मैं JOGL के साथ इस class का उपयोग करने का प्रयास कर रहा हूं। यह बफररिल का संदर्भ देता है, जिसे मैं कहीं भी नहीं ढूंढ सकता। मुझे documentation मिला, लेकिन कोई वास्तविक कोड नहीं मिला। ग्रहण कहीं भी इसे आयात करने का सुझाव नहीं देता है। इस कोड का उपयोग करने में सक्षम होने के लिए मुझे क्या करना है?जावा: बफर यूट?
उत्तर
मुझे लगता है कि वे BufferUtil
खींच लिया एक समय पहले (जैसे कि यह कभी नहीं सुपर उपयोगी कुछ भी किया था वैसे भी यह लग रहा है) लेकिन जब से कोड बस एक नई ByteBuffer
आबंटित करता है, आप इसकी आवश्यकता नहीं है। इसके बजाय बस ByteBuffer unpackedPixels = ByteBuffer.allocate(packedPixels.length * bytesPerPixel);
करें।
एक नया जॉग क्लास भी है जो कुछ com.jogamp.opengl.util.texture.TextureIO
नामक कुछ newTexture(...)
विधियों के साथ कुछ करता है।
बनावटियो बिल्कुल बिल्कुल बदलता है कि यह वर्ग क्या करने की कोशिश कर रहा है। बस इस वर्ग को अनदेखा करें और अंतर्निहित TextureIO का उपयोग करें। – Ricket
आपका सुझाव गलत है क्योंकि आप अप्रत्यक्ष बाइट बफर को मूल रूप से मूल आदेश का सम्मान नहीं करते हैं। ऐसा करने से बचने के लिए हमें हमेशा सहायक वर्ग बफर का उपयोग करना चाहिए। खराब आवंटित बफर समस्याएं पैदा कर सकते हैं, कुछ विधियां केवल प्रत्यक्ष एनआईओ बफर का समर्थन करती हैं। – gouessej
जबकि JOGL 2 करने के लिए एक JOGL 1.x एप्लिकेशन पोर्टिंग और पाया नया gluegen पुस्तकालय में BufferUtil बराबर तरीकों मैं एक ही समस्या में पड़ गए: com.jogamp.common.nio.Buffers
JavaDoc: http://jogamp.org/deployment/jogamp-next/javadoc/gluegen/javadoc/com/jogamp/common/nio/Buffers.html
JOGL के लिए NeHe ट्यूटोरियल में, वहाँ बफ़र्स बनाने के लिए BufferUtil
का उपयोग कर कई स्थानों रहे हैं। JOGL 2.0 के साथ हम इसके बजाय com.jogamp.common.nio.Buffers
का उपयोग कर सकते हैं।
उदाहरण के लिए,
BufferUtil.newIntBuffer(BUFSIZE)
हो जाता है Buffers.newDirectIntBuffer(BUFSIZE)
BufferUtil.newByteBuffer(BUFSIZE)
हो जाता है Buffers.newDirectByteBuffer(BUFSIZE)
इसके बजाय com.jogamp.common.nio.Buffers का उपयोग करने के लिए इसका उपयोग करें। जीएलबफर ज्यादातर आंतरिक उपयोग के लिए हैं, यह सार्वजनिक एपीआई में भी नहीं होना चाहिए। – gouessej
मैंने @ gouessej की टिप्पणी के अनुसार यह उत्तर अपडेट किया है कि हमें 'com.jogamp.opengl.util.GLBuffers' क्लास का उपयोग नहीं करना चाहिए। –
आप अपने प्रोजेक्ट के लिए 'jogl.jar' फ़ाइल का संदर्भ जोड़ दिया है? –
हां। जीएल 2 की तरह अन्य जॉगएल वर्ग, ठीक काम करते हैं। –
जॉग 2.0 में कोई jogl.jar नहीं है, इसका नाम jogl.all.jar है। एडब्ल्यूटी निर्भरता के साथ एक और जार है। – gouessej