গ্রাফিক্স ছাড়াই এক্সএনএ গেমটি চালান


11

কিছু প্রদর্শন করেই যদি কোনও এক্সএনএ গেম চালাতে হয় তবে ভাবছেন।

আমার একটি ওয়ার্কিং গেম রয়েছে যা একটি ক্লায়েন্ট সার্ভার সেটআপে চলে যেখানে এক খেলোয়াড় হোস্ট এবং অন্যান্য লোকেরা তার গেমের সাথে সংযোগ করতে পারে।

আমি এখন কোনও গ্রাফিক্স কার্ড ছাড়াই একটি নির্ধারিত সার্ভারে হোস্ট হিসাবে গেমটি চালাতে সক্ষম হতে চাই, মূলত আমি কোনও ড্র () যুক্তি মোটেও চালাতে চাই না।

আমার কি সত্যই পুরো গেমটি পেরিয়ে এক্সএনএ-র সমস্ত উল্লেখ মুছে ফেলা দরকার?

মানুষ কীভাবে এটি করেছে?

সম্পাদনা : আমি এটি করতে চাই কারণ হ'ল খেলায় আমার একটি ক্লায়েন্ট সার্ভার সেটআপ আছে এবং আমি একটি পৃথক "হেডলেস" সার্ভার প্রোগ্রাম করতে চাই না।


কেন আপনি ঠিক Drawমত কোড লিখতে পারবেন না if (headless) { return; }?
ashes999

1
@ আশের৯৯৯ নিশ্চিত না যে এটি খেলা থেকে সমস্ত ড্র এবং গ্রাফিক্স যুক্তিটিকে পুরোপুরি সরিয়ে ফেলবে কিনা। ভার্চুয়াল সার্ভারে কোনও বাস্তব গ্রাফিক্স অ্যাডাপ্টার নাও থাকতে পারে।
জেনসবি

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

উত্তর:


10

কেবলমাত্র একটি সাধারণ সি # প্রকল্প তৈরি করুন এবং এক্সএনএ বাইনারিগুলি অন্তর্ভুক্ত করুন। এটি আপনাকে এক্সএনএ ডেটা ধরণের এবং ফ্রেমওয়ার্ক পদ্ধতিতে অ্যাক্সেস অর্জন করবে। আমার গেমটি এটি করে এবং এটি নির্বিঘ্নে কাজ করে।


1
আমি অনুমান করছি আপনি একটি মোড়ক লিখেছেন যা XNA এর মতো কাজ করে যা আপনার জন্য আপডেটের মতো প্রয়োজনীয় পদ্ধতিগুলি কল করে? ধন্যবাদ, আমি এই যেতে হবে।
জেনসবি

2

উত্তরটি: এটি করবেন না। আপনার যদি গেম তৈরি করার দরকার না হয় - যেমন; আপনি এক্সএনএ অফার করে এমন জিনিসগুলির সদ্ব্যবহার করতে চান না, কেন এটি করবেন? আপনার সত্যিকারের এমন একটি কাস্টম টুকরা সফ্টওয়্যার তৈরি করা উচিত যা আপনি যে গেমটি খেলতে চান তা সফলভাবে অনুকরণ করতে পারে - সাধারণত কোনও ধরণের কনসোল সিস্টেম system আপনি যদি আরও বিশদ দেন তবে আমি আমার জবাবটি কম জেনেরিক প্রতিক্রিয়া দিয়ে আপডেট করব।


1
আমি আপনাকে একটি কারণ দিতে পারি: ইউনিট টেস্টিং। প্রায়শই আপনি লোড বা অঙ্কন এবং গ্রাফিক্স ছাড়াই কোডের কোনও অংশ বা বিভাগের পরীক্ষা করতে চান।
স্টিফেন টিয়ার্নি

3
@ স্টেফেনটিয়ার্নি আমি আপনাকে আর একটি কারণ দিতে পারি: সে চেষ্টা করছে না, সে গেম সার্ভার চালানোর চেষ্টা করছে (একটি উত্সর্গীকৃত মেশিনে)। দয়া করে প্রশ্নটি পুনরায় পড়ুন এবং আপনার ডাউনটোটটি ফিরিয়ে নেওয়ার বিষয়টি বিবেচনা করুন।
ভন হিল্টস


1

শিরোনামহীন পরামর্শ অনুযায়ী, আপনি কেবল ডিএলএল-এর উল্লেখগুলি অন্তর্ভুক্ত করতে পারেন এবং কোনও ডিফল্ট গেম লুপগুলি ব্যবহার না করে সেগুলি ব্যবহার করতে পারেন। এর উদাহরণগুলির জন্য আপনি নির্মাতারা ক্লাবে উইনফর্মস টিউটোরিয়াল সিরিজটি দেখতে পারেন: http://xbox.create.msdn.com/en-us/education/catolog/sample/winforms_series_2

এছাড়াও যদি আপনি আরও অভিনবতা পেতে চান তবে আপনি নিজের কাস্টমগুলির সাথে পুরো এক্সএনএ গেম লুপটি প্রতিস্থাপন করতে পারেন এবং পুরো প্রক্রিয়াটি নিয়ন্ত্রণ করতে পারেন। এই বর্ণনটি সম্পর্কে আরও তথ্যের জন্য /programming/6361691/custom-xna-game-loop-in-windows


1

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


1

আপনি আপডেটটিকে ওভারাইডিং বিবেচনা করতে এবং কলগুলি আঁকতে এবং কেবল ফিরে আসতে পারেন।

এছাড়াও, আপনার প্রধান গেম ক্লাসে গ্রাফিক্স ডিভাইসগুলিতে কল করবেন না, যা আপনার সার্ভার হিসাবে অভিনয় করে গেমটিতে এক্সএনএ উইন্ডোকে থামানো উচিত।

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