संदर्भ textureWrap()

textureWrap()

जब किसी आकृति का यूवी निर्देशांक बनावट से परे चला जाता है तो बनावट के व्यवहार का तरीका बदल जाता है।

texture() को काम करने के लिए, किसी आकृति को उसकी सतह पर बिंदुओं को छवि में पिक्सेल पर मैप करने के तरीके की आवश्यकता होती है। rect() और box() जैसी अंतर्निहित आकृतियाँ पहले से ही मौजूद हैं बनावट मानचित्रण उनके शीर्षों के आधार पर। vertex() के साथ बनाई गई कस्टम आकृतियों को यूवी निर्देशांक के रूप में पारित होने के लिए बनावट मैपिंग की आवश्यकता होती है।

प्रत्येक कॉल vertex() में 5 तर्क शामिल होने चाहिए, जैसे vertex(x, y, z, u, v)<!-- कोड-->, एक छवि के भीतर निर्देशांक <code>(x, y, z)</code> पर शीर्ष को निर्देशांक <code>(u, v)</code> पर पिक्सेल पर मैप करने के लिए। उदाहरण के लिए, एक आयताकार छवि के कोनों को डिफ़ॉल्ट रूप से एक आयत के कोनों पर मैप किया जाता है:

<code> // Apply the image as a texture. texture(img); <p>// Draw the rectangle. rect(0, 0, 30, 50); </p></code> <p>यदि उपरोक्त कोड स्निपेट में छवि का आयाम 300 x 500 पिक्सेल है, वही परिणाम इस प्रकार प्राप्त किया जा सकता है:</p> <code> // Apply the image as a texture. texture(img); <p>// Draw the rectangle. beginShape();</p> <p>// Top-left. // u: 0, v: 0 vertex(0, 0, 0, 0, 0);</p> <p>// Top-right. // u: 300, v: 0 vertex(30, 0, 0, 300, 0);</p> <p>// Bottom-right. // u: 300, v: 500 vertex(30, 50, 0, 300, 500);</p> <p>// Bottom-left. // u: 0, v: 500 vertex(0, 50, 0, 0, 500);</p> <p>endShape(); </p></code> <p><code>textureWrap()</code> नियंत्रित करता है कि बनावट कैसे व्यवहार करती है जब उनकी यूवी बनावट से परे जाती है। ऐसा करने से टाइलिंग जैसे दिलचस्प दृश्य प्रभाव उत्पन्न हो सकते हैं। उदाहरण के लिए, ऊपर दिए गए कस्टम आकार में यू-निर्देशांक छवि की चौड़ाई से अधिक हो सकते हैं:</p> <code> // Apply the image as a texture. texture(img); <p>// Draw the rectangle. beginShape(); vertex(0, 0, 0, 0, 0);</p> <p>// Top-right. // u: 600 vertex(30, 0, 0, 600, 0);</p> <p>// Bottom-right. // u: 600 vertex(30, 50, 0, 600, 500);</p> <p>vertex(0, 50, 0, 0, 500); endShape(); </p></code> <p>600 के यू-निर्देशांक बनावट छवि की चौड़ाई 300 से अधिक हैं। यह दिलचस्प संभावनाएं पैदा करता है।</p> <p>पहला पैरामीटर, <code>wrapX</code>, तीन संभावित स्थिरांक स्वीकार करता है। यदि <code>CLAMP</code> पास हो जाता है, जैसा कि <code>textureWrap(CLAMP)</code> में होता है, तो बनावट के किनारे पर मौजूद पिक्सेल आकृति के किनारों तक विस्तारित हो जाएंगे। यदि <code>REPEAT</code> पास हो जाता है, जैसे कि <code>textureWrap(REPEAT)</code> में, बनावट आकृति के किनारों तक पहुंचने तक बार-बार टाइल होगी। यदि <code>MIRROR</code> पास हो जाता है, जैसा कि <code>textureWrap(MIRROR)</code> में होता है, तो बनावट बार-बार टाइल करेगी जब तक कि वह आकृति के किनारों तक नहीं पहुंच जाती, और टाइलों के बीच उसका अभिविन्यास बदल जाता है। डिफ़ॉल्ट रूप से, बनावट <code>CLAMP</code>.</p> <p>दूसरा पैरामीटर, <code>wrapY</code>, वैकल्पिक है। यह समान तीन स्थिरांक स्वीकार करता है, <code>CLAMP</code>, <code>REPEAT</code>, और<code>MIRROR</code>। यदि इनमें से एक स्थिरांक पारित हो जाता है, जैसे कि <code>textureWRAP(MIRROR, REPEAT)</code>, तो बनावट <code>MIRROR</code> क्षैतिज रूप से और <code>दोहराया जाएगा</code> लंबवत रूप से होगी। डिफ़ॉल्ट रूप से, <code>wrapY</code> को <code>wrapX</code> के समान मान पर सेट किया जाएगा।</p> <p>ध्यान दें: <code>textureWrap()</code> का उपयोग केवल WebGL मोड में किया जा सकता है।</p>

उदाहरण

सिंटैक्स

textureWrap(wrapX, [wrapY])

पैरामीटर्स

wrapX
Constant:

या तो क्लैंप, रिपीट, या मिरर

wrapY
Constant:

या तो क्लैंप, रिपीट, या मिरर

Notice any errors or typos? Please let us know. Please feel free to edit src/webgl/material.js and open a pull request!

संबंधित संदर्भ