2010-11-29 6 views
13

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

क्या कोई अनुशंसित मार्गदर्शिका/दस्तावेज हैं जिन्हें हमें सामान्य 3 डी गेम प्रोग्रामिंग और शायद पायथन विशिष्ट सामग्री पर पढ़ना चाहिए।

हम संभवतः सी ++ में प्रोग्रामिंग पर विचार कर रहे हैं लेकिन अब मुझे लगता है कि पाइथन का उपयोग करना आसान है क्योंकि हम इस तरह से 3 डी यांत्रिकी पर पूरी तरह ध्यान केंद्रित कर सकते हैं।

+0

के लिए vertexarrays या arrays का उपयोग करें जो कि पाइथन से परिचित नहीं है, लेकिन यदि आप इसे C++ के साथ देखने के लिए जा रहे हैं, तो मुझे लगता है कि ओजीआरई 3 डी काफी आम है। – silent

उत्तर

12

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

PyOpenGL: ओपनजीएल प्रोग्रामिंग के लिए आधिकारिक पायथन रैपर भी है।फिर से क्षेत्र में कई प्रोग्रामिंग उदाहरण और 3 डी मॉडल और पसंदों का उपयोग करने के तरीके पर कोड स्निपेट के टन के साथ। PyGame के साथ एक साथ इस्तेमाल किया जा सकता है।

लेकिन तुम अपने आप को कुछ 3 डी मूल बातें साथ परिचित द्वारा शुरू कर देना चाहिए। GameDev.net साइट पर चारों ओर देखो। एक चीज़ या दो about matrices (and perhaps quaternions) जानें। बहुत सारे beginners tutorials और आरंभ करने के लिए उपलब्ध संदर्भ हैं।

संपादित करें: मैं लगभग भूल गया: Panda3D भी पाइथन के लिए व्यापक स्क्रिप्टिंग संभावनाओं के साथ है। शायद यह खेल के विकास के उच्च स्तर की पेशकश करेगा।

+0

मैं प्री-बिल्ट गेम इंजन पर ओपनजीएल का उपयोग करना पसंद करता हूं , क्योंकि मैं इस परियोजना के साथ जितना संभव हो सीखना चाहता हूं और सब कुछ बनाना खुद को ऐसा करने का तरीका लगता है। मैं ट्यूटोरियल भी देखूंगा, धन्यवाद। –

16

Panda3D एक अच्छा, शक्तिशाली गेम इंजन है जो पायथन में स्क्रिप्टिंग के लिए अनुमति देता है। यह शुरू करने के लिए एक अच्छी जगह की तरह दिखता है।

यदि आप कुछ और निम्न स्तर की तलाश करते हैं, तो अभी भी PyOpenGL या pygame है।

+2

मैं पांडा 3 डी के साथ खेलकर बहुत खुश हूं और पाइथन के साथ उपयोग के लिए दृढ़ता से इसका समर्थन करता हूं। 3 डी के लिए मैं pygame पर विचार नहीं करेंगे। –

5

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

अधिक जानकारी here

2

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

0

मैं समय-महत्वपूर्ण सामग्री को 3 डी और उसके ऑब्जेक्ट के रूप में कार्यान्वित करता हूं कच्चे सी/सी ++ में हैंडलिंग + प्रतिपादन और बाहरी मॉड्यूल के साथ एम्बेडेड पायथन को गेम तर्क (ऑब्जेक्ट मूवमेंट, ऑब्जेक्ट प्रॉपर्टीज, स्क्रिप्टिंग आदि) को संभालते हैं।

+3

आप इस शुरुआत के लिए शुरुआत के रूप में जाना चाहते हैं? :) ओपी के लिए थोड़ा अधिक महत्वाकांक्षी लगता है। –

+0

मैं 3 डी गेम प्रोग्रामिंग की अवधारणाओं और कार्यप्रणालियों को प्राप्त करने के लिए अजगर का उपयोग करने की योजना बना रहा था, एक बार जब मुझे लटका मिल जाए तो इसे सी ++ (एक चीज जिसे मैं पहले से करने की योजना बना रहा था) को बंद करने के लिए काफी छोटा होना चाहिए –

+0

@ sgolo: वह शुरू में सी ++ में ऐसा करने जा रहा था – Robert

1

आप जानते हैं कि 3 डी खेल के होते हैं होना चाहिए

  • एनिमेटेड 3D मॉडल
  • 3 डी
  • पर्यावरण और मॉडल (खेल तर्क और खेल के बीच बातचीत का अनुकरण (NPCs और वस्तुओं सहित) वातावरण यांत्रिकी)
  • यूजर इंटरफेस (, शुरू करने की बचत और खेल सेटिंग्स)

खेल लॉग आईसी और यांत्रिकी आमतौर पर सबसे बड़ा और सबसे जटिल हिस्सा होने जा रहा है और आपको अपने सिर को उस के खिलाफ लपेटने की कोशिश करनी चाहिए।

मॉडलिंग 3 डी ऑब्जेक्ट्स और पर्यावरण उसके बाद बहुत आसान होना चाहिए।

2

पायगैम का एक विकल्प, जिसे मैं व्यक्तिगत रूप से पसंद करता हूं, वह पिगलेट है। http://pyglet.org

0

सरल 3 डी गेम कोड करना आसान है। स्क्रीन पर किसी भी वस्तु की स्थिति हमेशा बस के रूप में के रूप में गणना की जा सकती:

position = (x/z*fov,x/z*fov) 

जहां x और z दोनों क्षैतिज अक्ष और fov हैं, देखने के खिलाड़ी के क्षेत्र है [रेडियंस/डिग्री/पिक्सल/में .. ।]।

जब आप घूमते हैं, तो शब्द आपको घूर्णन नहीं कर रहा है। इसका मतलब है कि आप हमेशा सकारात्मक जेड के खिलाफ देख रहे हैं। Quaternions आपके आस-पास की दुनिया को घुमाने का सबसे अच्छा तरीका है।

Ps। सबसे तेज़ संभव 3 डी ग्राफिक्स

+0

यदि वह वीडियो गेम उद्योग में शुरुआत कर रहा है, तो वह निश्चित रूप से नहीं जानता कि एफओवी क्या है। क्या आप कृपया सटीक चर नामों का उपयोग कर सकते हैं? – MadJlzz

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

  • कोई संबंधित समस्या नहीं^_^