ব্লিজার্ড কীভাবে তাদের গেমগুলিতে ম্যাক ওএস এবং উইন্ডোজ সমর্থন করতে পরিচালনা করে? [বন্ধ]


22

আমি সবসময়ই ভেবেছিলাম যে আজকাল উইন্ডোজের জন্য ডাইরেক্ট এক্স ব্যবহার করা আধুনিক গ্রাফিক্সের সাহায্যে গেম তৈরি করা সবচেয়ে শক্তিশালী, সহজ এবং আধুনিক পদ্ধতি। এটি কেবল উইন্ডোজই জেনে আমি অন্য প্ল্যাটফর্মগুলিতে কিছু অনুরূপ তৈরি করা বেশ কঠিন বলে মনে করি; ম্যাক ওএস, সঠিক হতে। যাইহোক, ব্লিজার্ড কোনওভাবে ম্যাক ওএসের জন্য স্টারক্রাফ্ট 2 সরবরাহ করতে সক্ষম হয়েছিল এবং ডায়াবলো 3 ম্যাকের জন্যও উপলব্ধ থাকবে।

সুতরাং আমি যা সম্পর্কে আগ্রহী তা হ'ল সম্পর্কিত তথ্য:

  • তারা তাদের গেম ইঞ্জিনগুলির জন্য কোন প্রযুক্তি ব্যবহার করছে?
  • তারা উভয় গেমের জন্য একটি ইঞ্জিন ব্যবহার করছে (স্টারক্র্যাফট 2 এবং ডায়াবলো 3), বা তারা প্রতিটি গেমের জন্য কাস্টম ইঞ্জিনগুলি বিকাশ করে?
  • তারা ম্যাক ওএস সহায়তার জন্য সময় এবং অর্থের দিক দিয়ে কী দিচ্ছে?

সম্পর্কিত: gamedev.stackexchange.com/questions/195/...
Tetrad

1
আমি এই প্রশ্নটিকে অফ-টপিক হিসাবে বন্ধ করার পক্ষে ভোট দিচ্ছি কারণ "" এই গেমটি কীভাবে তৈরি হয়েছিল "বা" এই গেমটি কীভাবে এটি করেছে "এমন প্রশ্ন জিজ্ঞাসা সমর্থন করি না। এ জাতীয় প্রশ্নগুলি বেশিরভাগই অনুমানমূলক এবং গঠনমূলক নয়; "আমি কীভাবে এই বৈশিষ্ট্যটি করতে পারি তা জিজ্ঞাসা করার জন্য আমরা সাধারণত প্রশ্নটি সম্পাদনা করি তবে এই জাতীয় সম্পাদনাগুলি গঠনমূলক হওয়ার জন্য এই প্রশ্নটি অনেক পুরানো
জেনমলক

উত্তর:


17

ব্লিজার্ড খুব কাস্টম-টেক চালিত। আমার নিবন্ধগুলির লিঙ্ক নেই, তবে আমার মনে আছে যে তারা মাল্টিপ্লাটফর্মের সামঞ্জস্য এবং পিছনের দিকের সামঞ্জস্য উভয় জন্য গেম প্রতি হাজার হাজার কাস্টম শেডার বিকাশ করে।

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

যে কোনও সমসাময়িক গেম ইঞ্জিন মাল্টিপ্লাটফর্ম পরিচালনা করে এবং অনেকগুলি প্ল্যাটফর্মের উপর নির্ভর করে ওপেনজিএল এবং ডাইরেক্টএক্সের মধ্যে স্যুইচ করতে পারে।

বেশিরভাগ পেশাদার বৃহত আকারের বিকাশকারীদের মতো হিমশৈল একটি সি ++ ঘর। তবে, যেমন এস.এফ.এফ.এক্স দ্বারা উল্লিখিত ছিল, আপনি যদি সহজ সমাধানের সন্ধান করেন তবে প্রচুর নন-সি ++ সমাধান রয়েছে - জেমনকিইঙ্গাইন বা এলডাব্লুজেজিএল সহ।

সি ++ দিক থেকে, আপনি ওপেনএলএল ব্যবহার করার সময় সহজেই বিভিন্ন অপারেটিং সিস্টেমগুলি পরিচালনা করতে গ্লুট এবং গ্লু ব্যবহার করতে পারেন বা নির্দিষ্ট ওএস কলের জন্য আপনার নিজের বিমূর্ততা লিখতে পারেন।

আপনার বুলেটগুলির আরও নির্দিষ্টভাবে উত্তর দিতে:

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

তারা উভয় গেমের জন্য একটি ইঞ্জিন ব্যবহার করছে (স্টারক্র্যাফট 2 এবং ডায়াবলো 3)? বা প্রতিটি গেমের জন্য কাস্টম বিকাশ? একাধিক ইঞ্জিন বজায় রাখার জন্য বরফখণ্ড পরিচিত। আমার বিশ্বাস, ডায়াবলো 3, ওয়াও কোডের একটি কাঁটাচামচ ছিল I তবে, আপনি নিশ্চিত হয়ে উঠতে পারেন যে প্রকল্পটি শেষ করার পরে এটি ওউ-এর মতো কিছুই হবে না। ব্লিজার্ড কোনও প্রকল্পে প্রচুর কোড লিখতে ভয় পাচ্ছে না।

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


ধন্যবাদ, আমি মনে করি আপনার উত্তরটি একটির নিকটতম, যা আমি খুঁজছিলাম। আমি সাধারণ মাল্টিপ্লাটফর্ম বিকাশের সাথে বেশ পরিচিত, ব্লিজার্ড কীভাবে এটি করে তার কিছু তথ্য চেয়েছিল। আমি তাদের কৃতজ্ঞ, যদি আপনি তাদের বিকাশের প্রক্রিয়া সম্পর্কে অতিরিক্ত তথ্যের লিঙ্ক পোস্ট করেন।
311

9

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

আমার ধারনাটি হ'ল যে, ব্লিঞ্জার্ড ইঞ্জিনটি ব্যবহার করে (তারা তাদের নিজস্ব লিখেছিল) এছাড়াও একটি বিমূর্ত স্তর সরবরাহ করে যা অন্তর্নিহিত গ্রাফিক্স এপিআই সোয়াপ করা সহজ করে তোলে, যাতে তাদের কোনও ম্যাক পোর্টের জন্য তাদের সমস্ত গ্রাফিক্স কোডটি আবার লিখতে না হয়।


2

তারা আসলে কী ব্যবহার করে সে সম্পর্কে আমি নিশ্চিত নই (প্রত্যেকেরই অবশ্যই একটি শক্তিশালী সমাধান হবে)। সম্ভবত ইতিমধ্যে প্রমাণিত এবং ব্যবহৃত গেম ইঞ্জিনগুলি সফলভাবে সেই প্ল্যাটফর্মে গেমগুলি মুক্তি দেয় বা তাদের নিজস্ব কাস্টম সমাধানটি ঘূর্ণায়মান। তবে আমার কাছে এটি বেশিরভাগ ক্ষেত্রে ওপেনগল, শেডার, ইত্যাদি হতে পারে। আপনি যদি কোনও ইনডি বিকাশকারী হন, বা বাণিজ্যিক গেমগুলি করার পরিকল্পনাও করেন (কেবল কোনও এএএ নয়) jMonkeyEngine 3 এটি একটি দুর্দান্ত মুক্ত সমাধান। এটি জাভা ভিত্তিক, সুতরাং সম্ভবত আপনি ওএসএক্সের অন্তর্ভুক্ত জেআরই (সম্ভবত কোনও আধুনিক জেআর ব্যবহার না করে এমন বৈশিষ্ট্যগুলি কাটানোর বৈশিষ্ট্যগুলি) উপর নির্ভর করে স্থাপন করতে পারেন, বা উপলভ্য যে কোনও বিনামূল্যে ব্যবহার করে কোনও বাইনারি এম্বেড / মোড়ানো (উইন্ডোজের জন্য আমরা এটি করেছিলাম) made বাণিজ্যিক সমাধান। ওএসএক্স এবং অন্যান্য প্ল্যাটফর্মগুলিতে সংকলিত অন্যান্য ইঞ্জিনগুলির একটি গুচ্ছ রয়েছে তবে সম্পূর্ণ 'এএএ' নয়, যা ওএসএক্স এবং অন্যান্য প্ল্যাটফর্মগুলির জন্য আউটপুট দেয়:, সি 4 ইঞ্জিন ইত্যাদি বা অন্য ওপেন সোর্স বা বাণিজ্যিক মাল্টিপ্লাটফর্ম ইঞ্জিন ব্যবহার করা থাকলে আপনার ইনস্টলবিল্ডারের মতো ক্রস প্ল্যাটফর্ম ইনস্টলার ব্যবহার করার প্রয়োজন হতে পারে ।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.