GLSL spec, और other sources about GLSL में, नमूने के प्रकार 3 आयामों में उपलब्ध हैं: sampler1D
, sampler2D
, और sampler3D
।नमूना 1 डी एनवीडिया जीएलएसएल में समर्थित नहीं है?
लेकिन जब मैं (दोनों नियमित रूप से, और भी कैनरी में) क्रोम में WebGL का उपयोग करने GLSL कार्यक्रमों संकलित करने के लिए प्रयास करते हैं, sampler2D
और sampler3D
स्वीकार किए जाते हैं लेकिन sampler1D में सिंटेक्स त्रुटि देता है। कोड:
uniform sampler1D tex1;
त्रुटि:
FS ERROR: ERROR: 0:9: 'sampler1D' : syntax error
यह त्रुटि तब होती है, भले ही मैं कैनरी कमांड लाइन तर्क --use-gl=desktop
दे।
मैं क्रोम 12.0.742.68 बीटा-एम, और कैनरी 13.0.782.1 चला रहा हूं। मेरे पास चिपसेट एनवीडिया क्वाड्रो एनवीएस 160 एम है।
क्या यह संभव है कि Nvidia 2- और 3-आयामी बनावट नमूने की अनुमति देता है, लेकिन 1 डी नहीं? मैंने उस प्रभाव को जानकारी खोजने की कोशिश की है, लेकिन कुछ भी नहीं मिला है।
निश्चित रूप से, आप सही हैं। रुचि रखने वाले अन्य लोगों के लिए, जीएलएसएल ईएस 2.0 स्पेक यहां है: http://www.khronos.org/registry/gles/specs/2.0/GLSL_ES_Specification_1.0.17.pdf इससे पता चलता है कि 'नमूना 1 डी' और' नमूना 3 डी 'दोनों कीवर्ड हैं "भविष्य के उपयोग के लिए आरक्षित। उनका उपयोग करने से एक त्रुटि होगी।" – LarsH
पीएस जवाब के लिए धन्यवाद। – LarsH
2 डी बनावट वर्ग हैं, इसलिए 1 की ऊंचाई के साथ 1 की चौड़ाई भी है। आपको 2 डी बनावट बनावट की आवश्यकता है, जैसे कि 1 डी बनावट, डेस्कटॉप जीएल में उपलब्ध हैं लेकिन विस्तार के बिना जीएलएस में नहीं –