2012-01-23 13 views
5

निम्नलिखित ट्यूटोरियल बताता है कि ऊंचाई मानचित्रों के साथ मूल बनावट को कैसे विभाजित करना है।जेएमई 3 - तीन से अधिक बनावट छिड़काव

http://jmonkeyengine.org/wiki/doku.php/jme3:beginner:hello_terrain

मैं इस ट्यूटोरियल का पालन करने में सक्षम था और उत्कृष्ट परिणाम के साथ प्रयोग करता है। हालांकि, मैं सोच रहा हूं कि तीन से अधिक बनावट कैसे जोड़ना है। मैं Terrain.j3md फ़ाइल के भौतिक मानकों में देखता हूं, केवल तीन बनावट परतें हैं: Tex1, Tex2, Tex3 इसलिए मुझे विश्वास नहीं है कि आप Terrain.j3md का उपयोग करके ऐसा कर सकते हैं।

यह मेरी धारणा है कि आपको TerrainLighting.j3md का उपयोग करना होगा। हालांकि, यह NormalMap और DiffuseMap जैसे पैरामीटर के साथ बहुत अलग रूप से संरचित है और मुझे यह बताते हुए कोई भी दस्तावेज/ट्यूटोरियल नहीं मिल रहा है कि ये वास्तव में क्या हैं।

उत्तर

2

जेएमई 3 प्रतिपादन के लिए GLSL shaders का उपयोग कर एक ओपनजीएल आधारित लाइब्रेरी है। कस्टम प्रतिपादन करने के लिए आपको अपना कस्टम शेडर लिखना होगा, या किसी मौजूदा को संशोधित करना होगा।

शेडर्स एक उन्नत विषय हैं। आप एसडीके दस्तावेज पर shaders के लिए एक परिचय पा सकते हैं। लेकिन शायद आप "Materials, Light, Shadow" के बारे में पूरा लेख पढ़ना चाहेंगे।

JME3 तीन फ़ाइलों का उपयोग करता उन्हें प्रबंधित करने के:

  • GLSL शिखर शेडर कोड के साथ एक .vert फ़ाइल
  • GLSL टुकड़ा शेडर कोड के साथ एक .frag फ़ाइल
  • शेडर कार्यक्रम परिभाषा के साथ एक .j3md फ़ाइल

दोनों कशेरुक और टुकड़े के शेडर्स जीएलएसएल भाषा का उपयोग कर कोड का टुकड़ा हैं। स्क्रीन निर्देशांक की गणना करने के लिए व्यूटेक्स शेडर को प्रत्येक चरम पर एक बार निष्पादित किया जाता है। रंगों की गणना करने के लिए स्क्रीन पर प्रत्येक पिक्सेल के लिए एक बार फ्रैगमेंट शेडर निष्पादित किया जाता है। .j3md फ़ाइल में इनपुट पैरामीटर (सामग्री), तकनीक (शेडर्स), और इसी तरह के बारे में परिभाषाएं हैं।

पैरामीटर की संख्या और प्रकार निश्चित हैं। लेकिन आप एक नई बनावट पैरामीटर जोड़ने का Terrain.j3m संशोधित कर सकते हैं:

Texture2D tex4 

Terrain.frag के लिए एक नया इनपुट पैरामीटर जोड़ें:

uniform sampler2D m_Tex4; 

और जैसा कि आप की तरह है कि नए बनावट पैरामीटर का उपयोग करने टुकड़ा शेडर कोड को संशोधित।

3

हाल ही में, बनावट स्पैटिंग के लिए एक नई सामग्री परिभाषा जारी की गई है, वैकल्पिक रूप से अतिरिक्त चमक और specular बनावट के साथ, 12 बनावट तक समर्थन।

सामग्री का नाम TerrainLighting.j3md है, और this इसका उपयोग कर एक (बहुत अच्छा) उदाहरण है।

+0

@ रिचर्ड टिंगल thx, लिंक तय किया गया –

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