मैं अपने खिलाड़ी को दीवारों के अंदर खड़े होने में सक्षम होना चाहता हूं। प्रत्येक गेम टिकता है मेरे खिलाड़ी कुछ छोटी दूरी और/या घूमता है।एक लोकी जाल के साथ टकराने
टी एल; डॉ क्लासिक लाइन खंड का एक संस्करण प्रदान करें -> - त्रिकोण चौराहे एल्गोरिथ्म जो पास-चूक भी देता है, या किसी अन्य तरीके से रेखा खंड काटती है अगर यह एक के भीतर से गुजरता में समस्या का समाधान त्रिभुज की दूरी दी गई। समस्या के लिए बहुत सारी सूक्ष्मता है, जैसे त्रिभुज के लोकस कोनों को गोल किया जा रहा है और यदि रेखा खंड त्रिभुज के लिए स्पर्शिक है।
मेरे पास सामान्य किरण/त्रिभुज चौराहे कोड है।
हालांकि, एक किरण एक चलती खिलाड़ी का बहुत खराब अनुमान है! मुझे खिलाड़ी के केंद्र में लापता किनारों के साथ समस्याएं हैं, लेकिन खिलाड़ी जाल उनके माध्यम से गुज़र रहा है।
आप कैसे कुशलता से निर्धारित करते हैं कि एक खिलाड़ी 3 डी वातावरण में दीवारों और बाधाओं के साथ कब और कहाँ टकराता है?
एक सामान्य दृष्टिकोण पास-मिस त्रिकोण कोड होगा, जहां किरण एक बॉल-कैप्ड सिलेंडर है।
सामान्य समाधान मैंने कोशिश करने की कोशिश की है कि खिलाड़ी एक क्षेत्र है; इस अंदर से बाहर निकलने के बाद, मैंने एक जाल बनाने की कोशिश की है जो वास्तविक दीवारों की तुलना में त्रिज्या बड़ा है और उस पर टकराव किरण करता है। मैं एक जाल की गणना करना चाहता हूं जो कि इस जाल के सामने कुछ निश्चित दूरी है, यानी एक घन गोलाकार किनारों और कोनों के साथ थोड़ा बड़ा घन बनने के लिए विस्तारित होगा। (मेरे मेहेस घन की तुलना में कम नियमित होते हैं। बॉयलर रूम के अंदर एक जाल का प्रतिनिधित्व करें, और कल्पना करें कि एक जाल की गणना करने की कोशिश करें जो कि सभी दीवारों और बॉयलर और दरवाजे के फ्रेम से 20 सेमी है और इस तरह के कमरे में।) यहाँ प्रति बैरल के आसपास एक सरल जाल है:
प्रत्येक चेहरे मैं सतह गणना कर सकता है सामान्य के लिए; इस तरह मैं जानता हूं कि किस तरह से 'बाहर' है।
मेरा दिमागी तूफान मुझे प्रत्येक दूरी के सामान्य दूरी को निश्चित दूरी से गुणा करने और फिर संबंधित ऑफसेट के साथ त्रिकोण को उत्सर्जित करने की कल्पना करता है।
हालांकि यह किनारों पर छेद छोड़ देगा और शायद (?) कुछ किनारों को बहुत तंग तीव्र कोनों से गुज़रने का कारण बनता है?
मैं भी प्रत्येक किनारे में बॉल-एंड सिलेंडरों के रूप में शामिल होने की कल्पना कर सकता हूं।
उपरोक्त बैरल के लिए उपयोग किया जाने वाला दृष्टिकोण एक चरम साझा करने वाले सभी चेहरों के औसत सामान्य की गणना करना है और फिर टकराव त्रिज्या से गुणा करना है। यह तीव्र कोणों से अच्छी तरह से सामना नहीं करता है, और क्या करना है यदि वर्टेक्स विपरीत पक्षों के चेहरे के बीच गलत तरीके से साझा किया जाता है?
मैं जावक्रिप्ट में, इस जाल की गणना कर रहा हूं और फिर रे चौराहे का प्रदर्शन करूँगा। तो प्रदर्शन भी एक विचार है। टकराव का पता लगाने के लिए एक बहुत बढ़िया विस्तृत जाल महंगा होगा।
आप प्रभावी रूप से एक अच्छी तरह से पर्याप्त लोकी जाल की गणना कैसे कर सकते हैं? या लोकी-जागरूक अस्पष्ट त्रिभुज चौराहे करते हैं? या टकराव करने का कोई बेहतर तरीका है, और क्या यह किसी भी तरह मॉडल कर सकता है कि चीजें सीधे रेखाओं की बजाय आर्क में चली जाती हैं?
क्या आपको वास्तव में विस्तारित जाल की आवश्यकता है? क्या आप मूल जाल का उपयोग नहीं कर सकते हैं, और टकराव से कम दूरी पर विचार कर सकते हैं (चौराहे के बजाय) टक्कर? –
@ एनी-मूस मुझे त्रिकोण किनारों को याद करने वाली किरणों के साथ परेशानी थी लेकिन खिलाड़ी उनके माध्यम से गुज़र रहा था। आप पथ पर खिलाड़ी जाल और दीवार चौराहे कैसे कर सकते हैं? यह सब दुखद लगता है, दुख की बात है। – Will
दृष्टिकोण जो मुझे पता है बस कंप्यूटिंग दूरी से काम करते हैं। यदि आपके मेहेस उत्तल हैं तो यह ऊर्ध्वाधर त्रिभुज दूरी की गणना करने के लिए ठीक होना चाहिए। और यदि आप खिलाड़ी को गोलाकार होने का मानते हैं, तो आपको केवल प्लेयरपॉइंट-त्रिकोण दूरी की गणना करने की आवश्यकता होगी, और दूरी से खिलाड़ी के आकार को घटाएं। –