मकसद
मैं WebGL का उपयोग करने के लिए एक छोटा सा डेमो आवेदन बनाने के लिए कोशिश कर रहा हूँ सहित SceneJS JSON में कनवर्ट 3 डी मॉडल। मैंने SceneJS का उपयोग करना चुना, क्योंकि यह एक आसान ढांचा लग रहा था और इस उद्देश्य के लिए पर्याप्त से अधिक होगा।बनावट
मैंने कुछ .blend मॉडल (Amy Rose, दूसरों के बीच) डाउनलोड किए हैं और उन्हें ब्लेंडर का उपयोग करके कोलाडा (.dae) फ़ाइल के रूप में निर्यात किया है। तब मैंने उन्हें एक जेसन मॉडल में बदलने के लिए scenejs-pycollada का उपयोग किया।
मैंने scenejs-pycollada कनवर्टर को काम करने में कुछ घंटे बिताए। जाहिर है कि विंडोज़ में काम करने के लिए उन पायथन निर्भरताओं को प्राप्त करना इतना आसान नहीं है अगर आपने पहले कभी पाइथन का उपयोग नहीं किया है। ;)
समस्या
लेकिन अब मैं अटक गया हूं (फिर से)। मेरी समस्या यह है कि मॉडल में कोई बनावट या सामग्री नहीं है।
मैंने SceneJS के Seymour Plane Example का उपयोग किया। मेरे द्वारा परिवर्तित मॉडल शायद ही दिखाई दे रहा है। यह काला है और दृश्य में प्रकाश के जवाब में प्रतीत नहीं होता है। यदि मैं विमान और मॉडल को एक साथ लोड करता हूं, तो मैं देख सकता हूं कि मॉडल लोड हो गया है, क्योंकि इसकी बाहों और पैर विमान से चिपके हुए हैं।
अब मैंने कुछ ट्यूटोरियल का पालन किया जो मुझे बनावट को पीएनजी छवि के रूप में निर्यात करने देगी। मैंने फ़ाइल नाम से मेल खाने के लिए जेएसओएन मॉडल में बनावट फ़ाइल नाम को संशोधित किया, लेकिन इससे मदद नहीं मिलती है।
तो मुझे उम्मीद है कि कोई भी मुझे ब्लेंडर मॉडल (या अन्य सामान्य 3 डी मॉडल) निर्यात करने के लिए दृश्यों सहित दृश्य जेएसओएन प्रारूप में जेएसओएन प्रारूप में निर्यात करने में मदद कर सकता है।
दृश्यजेएस में मॉडलों को लोड करने की कोई अन्य विधि भी तब तक करेगी जब तक यह काम करता है।
यदि किसी को शरीर/आकृति जेएसओएन मॉडल के मुफ्त डाउनलोड करने का लिंक मिला है, जो अब मदद करेगा, लेकिन मैं सीखता हूं कि यह कैसे काम करता है। :)
मैं
- विंडोज 7 होम प्रीमियम 64 बिट का उपयोग कर रहा
- अजगर 2.7 (विंडोज 32 बिट)
मैं पुस्तकालयों के लिए उचित रूप में बेहतर समर्थन की वजह से, 32 बिट संस्करण चुना है, और अधिक उपलब्ध इंस्टॉलर। सबसे पहले मैंने 32 और 64 बिट मिश्रित किया और इससे मुझे परेशानी हुई, लेकिन अब सबकुछ काम करता है (बनावट को छोड़कर)। - ब्लेंडर 2.59
- SceneJS 0.8.0
मेरे कार्यप्रवाह
ब्लेंडर में मैं कोलाडा (* .dae) फ़ाइलों के लिए मॉडल का निर्यात, और फिर उन्हें कच्चे JSON में बदलने का scenejs- का उपयोग कर pycollada। यह मुझे दो वस्तुओं के साथ एक JSON फ़ाइल देता है। पहला दृश्य है, दूसरा मॉडल। मैं दूसरा रखता हूं और इसे जावास्क्रिप्ट चर में डालता हूं जिसका उपयोग सीनजेएस उदाहरण के कोड में किया जाता है। मॉडल , "type": "library", "parent": "Scene"
गुणों के साथ समाप्त होता है जिसे मुझे कोड से हटाने की आवश्यकता होती है ताकि इसे लोड किया जा सके।
धन्यवाद! ऐसा लगता है कि आपके संस्करण scenejs-pycollada और SceneJS 2.0 के साथ काम करता है। किसी भी चीज को फिर से सम्मिलित करने की आवश्यकता नहीं थी, इसलिए यह अच्छा है। ;) मैं नुकीले लोगों को बहुत ज्यादा दोष नहीं देता, यह विभिन्न पुस्तकालयों के असंगत संस्करणों को स्थापित करने के लिए अपनी खुद की गलती का एक बड़ा सौदा था। इस समय मैं जीएलजीई की कोशिश कर रहा हूं, जिसकी सिफारिश की गई है। (यह उन्हें परिवर्तित करने के बिना .dae फ़ाइलों को लोड करता है)। अभी के लिए मुझे अपना डेमो काम करने की ज़रूरत है, लेकिन मुझे आशा है कि मुझे जल्द ही सीनियरजेस को फिर से जांचने के लिए समय मिलेगा। एक बार फिर धन्यवाद। – GolezTrol
कोई समस्या नहीं, कोई और बग मुझे बताएं :) –