2013-08-08 7 views
8

के माध्यम से 3 डी मॉडल जेनरेट करना मैं वीडियो गेम में उपयोग के लिए 3 डी मॉडल उत्पन्न करने के लिए एक तरीका ढूंढ रहा हूं। विचार वर्चुअल प्राइमेटिव है जो आकार, आकार, सामग्री और रोटेशन के लिए संबंधित डेटा के साथ बस बिंदुओं को इंगित करता है।आदिम स्किनिंग

उदाहरण के लिए एक क्षुद्रग्रह दो सरल क्षेत्रों के रूप में शुरू हो सकता है जो छेड़छाड़ करते हैं। धूलदार चट्टान की सामग्री जो स्किनिंग एल्गोरिदम को चिकनी रेतीले वक्र और कभी-कभी जंजीर बोल्डर प्रदान करने के लिए बताएगी। शायद एक प्रकार के गंदे मूंगफली के आकार के साथ खत्म हो।

उसके बाद ऑब्जेक्ट के चारों ओर काली मिर्च या क्रेटर की सामग्री के साथ छोटे गोले जोड़ें। ये मूंगफली की सतह में क्षेत्रों की तरह क्रेटर का उत्पादन करेंगे और त्वचा सूट के लिए समायोजित होगी। अंत में आप एक क्षुद्रग्रह का अर्द्ध व्यावहारिक प्रतिनिधित्व होगा।

अब यह ध्यान में रखते हुए, मेरा सवाल यह है कि, क्या कोई सभ्य ओपन सोर्स या स्किनिंग एल्गोरिदम के सार्वजनिक डोमेन उदाहरण हैं जो मॉडल की सतह पा सकते हैं और एक चिकनी, समान रूप से वितरित क्वाड-स्ट्रिप जाल उत्पन्न कर सकते हैं जो तब हो सकता है बनावट?

कुछ और जानकारी; मैं अंतर्निहित मॉडल (वॉल्यूम जोड़ने और घटाने) के लिए सीएसजी विधियों को देख रहा हूं, फिर पूरी चीज को रीमेश करने के लिए अन्य तरीकों को देख रहा हूं।

+2

क्या आपने [CGAL] (http://www.cgal.org/) देखा है। [जाल पीढ़ी] (http://www.cgal.org/Manual/latest/doc_html/cgal_manual/contents.html#part_XI) के लिए उनके पास एकाधिक खुले स्रोत ज्यामिति एल्गोरिदम हैं, [प्रसंस्करण] (http: //www.cgal। संगठन/मैनुअल/नवीनतम/doc_html/cgal_manual/content.html # part_XII) और [पॉलीहेड्रा] (http://www.cgal.org/Manual/latest/doc_html/cgal_manual/contents.html#part_VII)। [एनईएफ पॉलीहेड्रा सेक्शन] (http://www.cgal.org/Manual/latest/doc_html/cgal_manual/Nef_3/Chapter_main.html) विशेष रूप से उस चीज़ के करीब दिखता है जिसके बारे में आप बात कर रहे थे। –

+0

यह दिलचस्प है, मुझे इसके बारे में अधिक शोध करना होगा। अभी स्पैस वोक्सेल ऑक्टिस के माध्यम से देख रहे हैं। –

+1

यदि आप ऐसी स्क्रिप्ट चाहते हैं जो सीएसजी तकनीकों का उपयोग करके 3 डी मॉडल उत्पन्न करते हैं, तो [OpenSCAD] (http://www.openscad.org/) से बेहतर सॉफ्टवेयर नहीं है। यह पिछली छोर पर उपरोक्त सीजीएएल का उपयोग करता है, लेकिन पैरामीट्रिक मॉडल पीढ़ी के लिए एक स्क्रिप्ट-आधारित इंटरफ़ेस प्रदान करता है। मैं इसे 3 डी प्रिंटिंग के लिए वर्षों से उपयोग कर रहा हूं, और इसे प्यार करता हूं। इसमें एक कमांड लाइन इंटरफ़ेस भी है ताकि आप इसे यूनिक्स शैल या command.exe से स्क्रिप्ट कर सकें। हालांकि, यह रीयलटाइम में आपके गेम में एकीकृत करने में सक्षम नहीं होगा। इसके लिए आपको समय से पहले अपने मॉडल बनाने की आवश्यकता होगी, जो मुझे यकीन नहीं है कि आप क्या खोज रहे हैं। – Jestin

उत्तर

2

स्किनिंग एक वैज्ञानिक प्रक्रिया से अधिक कला है (और स्वचालित रूप से स्वचालित करना लगभग असंभव है) क्योंकि स्किनिंग आंदोलन का दृश्य अनुमान है। कुछ पूरी तरह से स्वचालित करने के लिए, आपको या तो हड्डी के प्लेसमेंट को मानना ​​होगा या बस मान लें कि कोई भी नहीं है।

यहां एक उदाहरण है। यह एक ओपन-सोर्स प्रोजेक्ट है जो स्वचालित रूप से इस तथ्य के आधार पर खाल जाता है कि प्रदान किया जाल एक humanoid है। http://igl.ethz.ch/projects/fast/

संपादित करें: रुको, आपका मतलब दूसरी तरफ है? क्या यह क्यूब्स मार्चिंग के समान नहीं है? http://en.wikipedia.org/wiki/Marching_cubes

+0

वास्तव में ब्लेंडर या बीयर प्राणी निर्माता में "मीटबॉल" के करीब कुछ। मैं उनके अंतर्निहित डेटा द्रव्यमान के कारण voxels का उपयोग करने से बचने की कोशिश कर रहा हूँ। बड़े पैमाने पर, एक यथार्थवादी ग्रह पूरी तरह से पागलपन, voxel जानकारी के टेराबाइट होगा। लेकिन कुछ अंतरंग वर्चुअल प्राइमेटिव्स बहुत आसान होंगे। –

1

यह एक रोमांचक सवाल है और इसमें कोई संदेह नहीं है कि इसे कई तरीके से किया जा सकता है। व्यक्तिगत रूप से मैं शायद .obj प्रारूप पर मूल आकार प्राप्त करना शुरू कर दूंगा, जो दोनों पार्स के लिए आसान है और प्रोग्रामेटिक रूप से बना है, और उसके बाद मेरे कोड में ठीक है: मॉडलिंग प्रोग्राम से निर्यात किए गए शीर्षकों को ट्विक या यादृच्छिक बनाएं क्षुद्रग्रहों की तरह समान लेकिन थोड़ी अलग वस्तुओं की विविधता। बेशक अगर आपको क्षुद्रग्रहों से अधिक की आवश्यकता है, तो आप एक अलग .obj फ़ाइल पर वापस जाएंगे। आपके मामले के लिए सबसे अच्छी तकनीक कहना मुश्किल है क्योंकि मुझे लगता है कि कुछ प्रयोगों की आवश्यकता होगी चाहे आप जो भी प्रयास करें।

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