পাইথনে অ-তুচ্ছ 2 ডি গেমটি বিকাশ করা কি ভাল ধারণা? [বন্ধ]


10

আমি 2 ডি স্পেস আরপিজি বিকাশের পরিকল্পনা করছি এবং আমি পছন্দটির মুখোমুখি হচ্ছি: এতে লেখার জন্য সেরা ভাষা কোনটি? আমার প্রার্থীরা হলেন সি ++, জাভা এবং পাইথন। স্পষ্টতই, আমি পাইথনে গেমটি লিখতে চাই কারণ এর স্পষ্টতা, বিকাশের গতি এবং স্ক্রিপ্টিং সমর্থন যুক্ত করার সরলতার কারণে। তবে আমি উদ্বিগ্ন:

  • পাইথন খুব ধীর হবে না? গেমটি তুচ্ছ নয় (উদাহরণস্বরূপ টেট্রিসের মতো), এটি মহাবিশ্বের হাজার হাজার জাহাজের জন্য কাজগুলি গণনা করার প্রয়োজন হতে পারে (যদিও তাদের জাহাজগুলি খেলোয়াড়কে না দেখা গেলে তাদের এআই ভারিভাবে সরল করা যেতে পারে)। অবশ্যই আমি সি তে কিছু সমালোচনামূলক অংশ লিখতে পারি তবে এটি তত্ক্ষণাত বিল্ডিং এবং মোতায়েনকে জটিল করে তুলবে।
  • ধরা যাক সেই গেমটি জনপ্রিয় হয়ে উঠেছে, এবং আমি সুপারস্টার হয়েছি। উইন্ডোজ ব্যবহারকারীদের কাছে পাইথন খুব কমই থাকে (সৌভাগ্যক্রমে আমাদের পাইপেক্স রয়েছে)। ম্যাক ওএস এক্সের পাইথনটি পুরানো হতে পারে এবং গেমটি অস্পষ্ট ব্যতিক্রম সহ ক্রাশ হতে পারে। পাইথনে খেলা স্থাপন করা কি কঠিন হবে না?
  • পাইথন 3 এর জন্য লাইব্রেরির অভাবে আমি পাইথন 2-এ গেমটি লিখতে পারি years 2 কয়েক বছরে পাইথন 3 এ স্থানান্তরটি খুব বেদনাদায়ক এবং সময়সাপেক্ষ হবে না?

আপনার দ্বিতীয় প্রশ্নের জন্য, আমি দৃ sure়ভাবে নিশ্চিত যে একটি পাইপ্যাপও রয়েছে যা আপনি ব্যবহারকে মোটামুটি সহজ করতে ব্যবহার করতে পারেন।
থাইডিয়ান

1
যদি আপনি পাইথনে এটি করার সিদ্ধান্ত নেন, আপনি দেখতে চাইতে পারেন যে আপনি আর্কি ব্যবহার করে কোনও "ধীর" অংশ করতে পারেন (তবে এটি প্রয়োজনীয় নয়) n
ব্রেন্ডন লং

উত্তর:


8

পাইথন খুব ধীর হবে না? গেমটি তুচ্ছ নয় (উদাহরণস্বরূপ টেট্রিসের মতো), এটি মহাবিশ্বের হাজার হাজার জাহাজের জন্য কাজগুলি গণনা করার প্রয়োজন হতে পারে (যদিও তাদের জাহাজগুলি খেলোয়াড়কে না দেখা গেলে তাদের এআই ভারিভাবে সরল করা যেতে পারে)। অবশ্যই আমি সি তে কিছু সমালোচনামূলক অংশ লিখতে পারি তবে এটি তত্ক্ষণাত বিল্ডিং এবং মোতায়েনকে জটিল করে তুলবে।

এটি বলা শক্ত, তবে বেশিরভাগ সময় পারফরম্যান্সের সীমাবদ্ধ ফ্যাক্টরটি একজন ভাষা বিকাশকারী হিসাবে একজনের দক্ষতা / অভিজ্ঞতা। নোট করুন যে ইভটি স্ট্যাকলেস পাইথন ব্যবহার করে ( সম্পর্কিত উপস্থাপনার ডাউনলোডের জন্য এখানে এবং এখানে দেখুন )। আমি সঠিক বিশদটি মনে করতে পারি না, তবে দৃশ্যত তাদের সার্ভার ক্লাস্টারের বেশিরভাগই পাইথন চালাচ্ছে । আমি এইভাবে কল্পনা করব যে এটি আপনার স্কেলিবিলিটি প্রয়োজনীয়তাগুলি পরিচালনা করতে পারে, যদিও প্রোটোটাইপিং নিশ্চিত হওয়া ভাল।

উইন্ডোজ ব্যবহারকারীদের কাছে পাইথন খুব কমই থাকে (সৌভাগ্যক্রমে আমাদের পাইপেক্স রয়েছে)। ম্যাক ওএস এক্সের পাইথনটি পুরানো হতে পারে এবং গেমটি অস্পষ্ট ব্যতিক্রম সহ ক্রাশ হতে পারে। পাইথনে খেলা স্থাপন করা কি কঠিন হবে না?

বেশিরভাগ ব্যবহারকারীরই খুব কমই গেমসের জন্য যথাযথ বাইনারি নির্ভরতা থাকে, সেই প্রযুক্তিগুলিতে এই গেমগুলি কী লেখা হয়েছিল তা নির্বিশেষে (এমনকি সি-র জন্য একটি রানটাইম উপাদান বিতরণ করতে হবে)। পাইপেক্স বা সমমানের মাধ্যমে মোতায়েন করা বা যথাযথ নির্ভরতা মোতায়েন করা জীবনের সত্য বিষয়। যদিও এটি কখনই সহজতম জিনিস নয় (বেশিরভাগ ইনস্টলার প্রযুক্তিগুলি বেদনাদায়ক) তবে এটি কার্যকর এবং ভাষা রোধ করার কারণ হওয়া উচিত নয় - যেমনটি আমি বলেছিলাম, সম্ভবত আপনাকে নির্বিশেষে অনুরূপ কিছু পরিচালনা করতে হবে need

পাইথন 3 এর জন্য লাইব্রেরির অভাবে আমি পাইথন 2-এ গেমটি লিখতে পারি years 2 কয়েক বছরে পাইথন 3 এ স্থানান্তরটি খুব বেদনাদায়ক এবং সময়সাপেক্ষ হবে না?

এটি আমি খুব বেশি জানি না, সত্যই পাইথন 3 কখনও ব্যবহার করি নি I আমি আশা করি না পাইথন ২ এক্স এক্স খুব শীঘ্রই যে কোনও সময় নিখোঁজ হবে, তবে আমি এমনকি আপনার গেমটির জীবদ্দশায় এমন সন্দেহ হতে পারে না যে আপনি 'ঘ প্রয়োজন যদি তুমি না উপর রূপান্তর যা একটি অ-সংখ্যার এই উদ্বেগ কিছু করে তোলে, করতে চাই।

অন্যরা যেমন বলেছে, আপনি আপনার প্রকল্পের ভাষা নির্বাচনের দিকটি সম্পর্কে খুব বেশি চিন্তিত হচ্ছেন। পাইথন গেমস বিকাশের জন্য একটি শক্তিশালী, দরকারী সরঞ্জাম এবং যদি আপনি এটি জানেন এবং পছন্দ করেন তবে এটির সাথে আপনার বিকাশ করা উচিত। আপনার গেমটি কখনই শেষ না হয়ে গেলে কত দ্রুত চলে তা আপনার বিবেচ্য বিষয় নয় কারণ আপনি ভাষা সম্পর্কে খুব বেশি চিন্তিত।


মোটামুটিভাবে পাইথন ২.7 ব্যবহার করার পরে, পাইথন ৩.২++ আপনি যা করতে পারবেন না তেমন তেমন কিছু করতে পারবেন না 2. এটি সময়ের সাথে সাথে পরিবর্তিত হবে, তবে গ্রন্থাগার সমর্থনও করবে। =)
কেন

14

আপনার প্রথম বিন্দুতে, আপনাকে কেবল একটি প্রোটোটাইপ তৈরি করতে হবে এবং দেখতে হবে। এমনকি আপনি যদি আমাদের সমস্ত বিবরণ জানান যা সত্যই জিনিসগুলিকে পরিবর্তন করে না।

অন্য দুটি পয়েন্ট হিসাবে, আমি দয়া করে মনে হচ্ছে আপনি ঘোড়া আগে গাড়ীটি রাখছেন। আপনার প্রশ্ন থেকে দেখে মনে হচ্ছে আপনি গেম বিকাশে নতুন, এমন ক্ষেত্রে আপনার কেবল একটি সরঞ্জাম বাছাই করা উচিত এবং এটির সাথে চলতে হবে। বেশিরভাগই সমান উপকারী সরঞ্জামগুলির উপকারিতা এবং বিপরীতে নিটপিক করা আপনার আসল চ্যালেঞ্জ থেকে বিচ্যুতি: গেম ডেভেলপমেন্ট শিখতে।


0

পুনরায় # 3, পাইথন 2.x কমপক্ষে আরও 5-10 বছর ধরে পরিবেশকের সহায়তা দেখতে পাবে। আপনি যদি সাম্প্রতিক সংস্করণটি (২.7, বা সম্ভবত ২.6) ব্যবহার করেন তবে আপনি যদি ভবিষ্যত-প্রমাণিত কোড (নতুন স্টাইলের অবজেক্ট, সর্বত্র ইউনিকোড ইত্যাদি) লিখে থাকেন তবে মাইগ্রেশন পাথটি মোটামুটি সহজ। ব্যথা বেশিরভাগ সেই জিনিসগুলির জন্য যা পুরানো, ভাঙ্গা আচরণগুলির উপর নির্ভর করে।


আপনাকে দংশন করবে এমন পুরানো আচরণগুলি সনাক্ত করতে, আপনার খেলাটি চালান python -3 filename.py, যা পাইথন 3-এ সমর্থিত নয় এমন জিনিসগুলির জন্য সতর্কতাগুলি ছাপিয়ে দেবে
স্পিফাইফেটেক
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.