2013-05-19 3 views

उत्तर

9

वेबजीएल को ओपनजीएल ईएस 2.0 व्यवहार को लागू करना होगा और वेबजीएल ऐप्स को उन डेटा तक पहुंचने से रोकना चाहिए जिनके पास पहुंच नहीं है। ऐसा करने के लिए इस वेबजीएल कार्यान्वयन को कई चीजों को प्रमाणित करना होगा, जिसमें सभी टेक्स्ट जो पढ़े जाएंगे, ओपनजीएल ईएस 2.0 स्पेक के अनुसार कोई एक्सटेंशन नहीं है।

तो, प्रत्येक ड्रॉ में, उन्हें यह जांचना होगा कि क्या सभी बनावट सभी आवश्यक मानदंडों को पूरा करते हैं, जिसमें यह जांचना शामिल है कि प्रत्येक बनावट "बनावट पूर्ण" है, अगर यह एक क्यूबमैप है कि यह "घन पूर्ण" और "मिपमैप" है घन पूर्ण ", यदि यह गैर-शक्ति-के-2 आयाम हैं जो बनावट फ़िल्टरिंग सही ढंग से सेट की गई हैं, आदि ... यदि इनमें से कोई भी स्थिति नहीं मिलती है तो वेबजीएल कार्यान्वयन एक पारदर्शी काला बनावट को प्रतिस्थापित करेगा ताकि व्यवहार विशिष्ट अनुपालनशील हो और उपकरणों में लगातार संगत।

ये चेक महंगी हैं इसलिए एक वेबग्लू कार्यान्वयन एक शॉर्टकट ले सकता है यह ट्रैक करना है कि कोई बनावट असुरक्षित है या नहीं। यदि कोई बनावट असुरक्षित नहीं है तो ड्रा समय पर कोई जांच की आवश्यकता नहीं है। उपरोक्त चेतावनी यह है कि कुछ बनावट असुरक्षित हैं जो मूल रूप से आपको बताती हैं कि वेबजीएल को यह महंगी जांच करना है। यदि आप सुनिश्चित करते हैं कि आपके सभी बनावट प्रस्तुत करने योग्य हैं WebGL इस चेक को छोड़ सकता है और आपका ऐप तेज़ी से चल सकता है।

"बनावट पूरा" की परिभाषा के लिए "घन पूरा", आदि ... देखना OpenGL ES 2.0 spec section 3.7.10

+6

आप Three.js उपयोग कर रहे हैं में ठीक किया गया था, यह THREE.ImageUtils.loadTexture का गलत उपयोग की वजह से हो सकता है। दृश्य में इस बनावट के साथ जाल जोड़ने से पहले, आपको लोडटेक्चर कॉलबैक की प्रतीक्षा करनी चाहिए। – dIsoVi

+0

@ डीआईएसवी ब्रावो! अब तक जो भी उदाहरण मैंने देखा है, वे कॉलबैक का उपयोग नहीं करते हैं, इसलिए मुझे यह भी पता नहीं था कि यह असीमित था। धन्यवाद! – krb686

+0

मुझे तीन.जेएस के विवरण नहीं पता हैं, लेकिन आम तौर पर दृश्य में जाल जोड़ने से पहले एक बनावट को लोड करने की प्रतीक्षा करने के बजाय मैं एक 1x1 पिक्सेल बनावट बनाता हूं और उस बनावट में छवि लोड करता हूं। इस तरह से मैं जाल को तुरंत खींच सकता हूं क्योंकि 1x1 पिक्सेल बनावट सभी प्रतिपादन आवश्यकताओं को पूरा करती है। जब छवि लोड हो जाती है तो मैं छवि डेटा के साथ बनावट को अपडेट करूंगा और फिर फ़िल्टरिंग और/या मिप्स उत्पन्न कर दूंगा। इस तरह मैं तुरंत प्रस्तुत करना शुरू कर सकता हूं। यह आपके ऊपर है यदि वह समाधान आपके ऐप को फिट करता है। – gman

3

यह भी क्रोम 28 में बग का परिणाम हो सकता है: http://code.google.com/p/chromium/issues/detail?id=242321 मैं इस संदेश को जब भी मेरे WebGL स्क्रिप्ट मिल गया किसी भी बनावट का उपयोग नहीं कर रहा था।

यह क्रोम 29.

संबंधित मुद्दे