कैमरे के लिए एक परिप्रेक्ष्य प्रोजेक्शन सेट करता है।
परिप्रेक्ष्य प्रोजेक्शन में, कैमरे से दूर की चीजें कैमरे के पास की चीजों की तुलना में छोटी दिखाई देती हैं। इस तकनीक को "अग्रपरिक्षेपण" कहा जाता है, जो वास्तविक 3D दृश्य बनाता है। यह नए p5.Camera ऑब्जेक्ट्स में डिफ़ॉल्ट रूप से लागू किया जाता है।
myCamera.perspective() कैमरे के दृश्य फ्रस्टम को बदलकर कैमरे की परिप्रेक्ष्य को बदलता है। फ्रस्टम वह खाली स्थान है जो कैमरे के लिए दृश्यमान है। फ्रस्टम की आकृति एक पिरामिड होती है जिसका शीर्ष काट दिया गया है। कैमरा पिरामिड के शीर्ष पर स्थित होता है और पिरामिड के आधार की ओर देखता है। यह फ्रस्टम के भीतर की सब कुछ देखता है।
पहला पैरामीटर, fovy, कैमरे का लंबाई-क्षैतिज क्षेत्र दृश्य है। यह एक कोण है जो यह बताता है कि कैमरे का दृश्य कितना ऊंचा या संकीर्ण है। उदाहरण के लिए, myCamera.perspective(0.5) कॉल करने से कैमरे का लंबाई-क्षैतिज क्षेत्र दृश्य 0.5 रेडियन हो जाता है। डिफ़ॉल्ट रूप से, fovy को स्केच की ऊंचाई और कैमरे की डिफ़ॉल्ट z-निर्देशांक, जो 800 है, के आधार पर गणना किया जाता है। डिफ़ॉल्ट fovy की सूत्र 2 * atan(height / 2 / 800) है।
दूसरा पैरामीटर, aspect, कैमरे का आस्पेक्ट अनुपात है। यह एक संख्या है जो शीर्ष प्लेन की चौड़ाई का उसकी ऊंचाई से अनुपात बताती है। उदाहरण के लिए, myCamera.perspective(0.5, 1.5) कॉल करने से कैमरे का क्षेत्र दृश्य 0.5 रेडियन और आस्पेक्ट अनुपात 1.5 हो जाता है, जिससे आकृतियां वर्गाकार कैनवास पर पतली दिखाई देंगी। डिफ़ॉल्ट रूप से, aspect को width / height पर सेट किया जाता है।
तीसरा पैरामीटर, near, कैमरे से नजदीकी प्लेन की दूरी है। उदाहरण के लिए, myCamera.perspective(0.5, 1.5, 100) कॉल करने से कैमरे का क्षेत्र दृश्य 0.5 रेडियन, उसका आस्पेक्ट अनुपात 1.5 और नजदीकी प्लेन कैमरे से 100 पिक्सेल दूर होती है। कैमरे से 100 पिक्सेल से कम दूर खींची गई कोई भी आकृतियां दृश्य में नहीं होंगी। डिफ़ॉल्ट रूप से, near को 0.1 * 800 पर सेट किया जाता है, जो मूल से कैमरे की दूरी का 1/10वां भाग है।
चौथा पैरामीटर, far, कैमरे से दूरी प्लेन की दूरी है। उदाहरण के लिए, myCamera.perspective(0.5, 1.5, 100, 10000) कॉल करने से कैमरे का क्षेत्र दृश्य 0.5 रेडियन, उसका आस्पेक्ट अनुपात 1.5, नजदीकी प्लेन कैमरे से 100 पिक्सेल और दूरी प्लेन कैमरे से 10,000 पिक्सेल दूर होती है। कैमरे से 10,000 पिक्सेल से अधिक दूर खींची गई कोई भी आकृतियां दृश्य में नहीं होंगी। डिफ़ॉल्ट रूप से, far को 10 * 800 पर सेट किया जाता है, जो मूल से कैमरे की दूरी का 10 गुना है।
उदाहरण
सिंटैक्स
perspective([fovy], [aspect], [near], [far])
पैरामीटर्स
कैमरा फ्रुम ऊर्ध्वाधर दृश्य क्षेत्र। डिफ़ॉल्ट 2 * atan(height / 2 / 800).
कैमरा फ्रस्टम पहलू अनुपात। डिफ़ॉल्ट width / height.
कैमरे से निकटतम क्लिपिंग तल तक की दूरी। डिफ़ॉल्ट 0.1 * 800.
कैमरे से सुदूर क्लिपिंग तल तक की दूरी। डिफ़ॉल्ट 10 * 800.
संबंधित संदर्भ
camera
3D स्केच में वर्तमान कैमरा की स्थिति और उन्मुखीकरण को सेट करता है.
createCamera
एक नया p5.Camera ऑब्जेक्ट बनाता है और इसे वर्तमान (सक्रिय) कैमरा के रूप में सेट करता है.
frustum
3D स्केच में वर्तमान कैमरा के फ्रस्टम को सेट करता है.
linePerspective
3D स्केच में लाइनों के लिए पर्स्पेक्टिव को सक्षम या अक्षम करता है.