সত্যিই, উচ্চ-রেজোলিউশন প্রদর্শন অ্যারের জন্য কোডিং


17

60+ ইঞ্চি এলইডি টিভিগুলির 5x2 অ্যারে চালানোর জন্য আমাকে একটি রিয়েল টাইম "পূর্ণ স্ক্রিন" ডেমো তৈরির কাজ দেওয়া হয়েছে: বা, অন্য কথায়, একটি 20 মেগাপিক্সেল ডিসপ্লে।

আমরা একটি মেশিন তৈরি করেছি যা পুরো রেজোলিউশনে ডিসপ্লে জুড়ে ছড়িয়ে থাকা একক উইন 7 ডেস্কটপ এবং কিছু সুন্দর শালীন ভিডিও কার্ড চালাতে পারে।

আমার প্রশ্নটি হ'ল: আমার পিক্সেল শেডাররা যে হাস্যকর কাজ করতে চলেছে তা বাদ দিয়ে, ডিএক্স 10 এর অন্য কোনও সীমাবদ্ধতা রয়েছে কি? * যা এখানে খুব বেশি বুদ্ধিমান আকারের ভিউপোর্টে না আসে? আমার পরের সপ্তাহ পর্যন্ত হার্ডওয়্যারটিতে অ্যাক্সেস থাকবে না তবে আমি এমন কিছু লিখে রাখতে চাই যাতে আমি সিস্টেমটিকে বেনমার্ক করতে পারি।

হালনাগাদ

এএমডি আইফিনিটি (output টি আউটপুট) কার্ডের গুচ্ছ সহ একক মেশিনে এই কাজটি চালানোর জন্য পরিচালিত হওয়ার সময় - জিনিসগুলি সুচারুভাবে চালিয়ে যেতে, "উইন্ডো স্প্যানের প্রদর্শন হিসাবে ডিসপ্লেতে একটি ডিএক্স উইন্ডো তৈরি করা" সবচেয়ে সহজ "উপায় হয়ে উঠল কিছু পারফরম্যান্সের সমস্যা সৃষ্টি করেছিল - আমি একদল মেশিনে টাস্কটি বিতরণ করে এটি বেশ ভালভাবে কাজ করতে পেরেছি, যার প্রত্যেকে দুটি করে প্রদর্শন চালায়।

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

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

আরেকটি ঝরঝরে সুবিধা: আমি একটি কনসোল অ্যাপ্লিকেশন তৈরি করেছি যা কীফ্রেমের রাজ্য সংজ্ঞা - অবস্থান, সময় ইত্যাদির ধারাবাহিকভাবে প্রক্রিয়া করে - প্রয়োজন অনুসারে ইন্টারপোলেট করে এবং গেম ইঞ্জিনে ব্যবহৃত একই কোড ব্যবহার করে তাদের প্রেরণ করে। এটি আমাকে সহজেই চলাচলের স্ক্রিপ্ট করতে, ওয়েব ব্রাউজার থেকে রূপান্তরগুলি জমা দিতে দেয় etc.

সব মিলিয়ে অ্যাপের একাধিক কপি সিঙ্কে চলতে রাখতে প্রায় 50 টি লাইন কোড লেগেছে। কিছু অতিরিক্ত জটিলতা প্রতিটি মেশিনের জন্য ক্যামেরা অবস্থান নির্ধারণ করে এবং কিছু দৃষ্টিভঙ্গি / প্রজেকশন বিরক্তি সংশোধন করে আসে তবে বেশিরভাগটি নোড কনফিগারেশন ফাইলে নেমে আসে।


2
এটি সত্যিই একটি মজাদার প্রকল্পের মতো শোনাচ্ছে।
সাইফার

1
হাঁ। আমি প্রায় cackled এবং Muah-হা-হাড।
ডিভে

3
আমি এটি ময়লা পণ্য মেশিন হিসাবে 10 সস্তা দিয়ে সম্পন্ন করেছি, প্রত্যেকে কেবল এটি বিশ্বের দৃষ্টিভঙ্গির সামান্য টুকরো রেন্ডারিং সম্পর্কে উদ্বিগ্ন এবং কিছু মাস্টার বক্স থেকে সময় সমন্বয় এবং নিয়ন্ত্রণ বজায় রাখতে নেটওয়ার্কযুক্ত। কোনও রক্তপাতের প্রান্তের পরিবর্তে, এক টন আর অ্যান্ড ডি ঝুঁকির সাথে অনির্ধারিত মেশিন কনফিগারেশন এটি খুব কম ঝুঁকিতে একটি ডাবযুক্ত সমাধান হবে। এটি কেবল আমি, যদিও, ওয়াইএমএমভি।
প্যাট্রিক হিউজেস

এভাবেই আমি চলে যেতাম, তবে থ্র হার্ডওয়ার কিনিনি। = /
ডিভে

প্রকৃতপক্ষে, নেটওয়ার্ক, সিঙ্কযুক্ত রেন্ডারিং দিকটি দুর্দান্ত লাগে। চ্যালেঞ্জিং, তবে আমি কীভাবে এটি করব তা ইতিমধ্যে পরিবেশন করতে পারি। এবং কিছু নমনীয়তা পুনরায় সরবরাহ করে: আপনি অ্যারে বিভক্ত করতে চাইলে একটি বাক্স থেকে একাধিক স্ট্রিম সরবরাহ করতে হবে না। "সমান্তরাল" আমার প্রিয় একটি শব্দ!
ডিভে

উত্তর:


5

আমি সফ্টওয়্যার হিসাবে হার্ডওয়্যার কনফিগারেশন সম্পর্কে ঠিক তত উদ্বিগ্ন হবে। আপনাকে প্রতিটি টিভি এর নেটিভ রেজোলিউশনে চালাতে হবে না এবং পর্দার আকার রেজোলিউশনের থেকে আলাদা। আমি ধরে নিই 60 টি টিভিগুলি প্রতিটি 1920x1080, যদিও এর মধ্যে সমস্তর মধ্যে স্থানীয় রেজোলিউশন হয় 9600x2160 হয় যদি আপনি 5 টি সারি x 2 কলামের টিভি ব্যবহার করেন বা 3840x5400 আপনি 5 টি কলাম x 2 সারি বোঝাতে চাইছেন।

আপনি যদি ভিডিও ট্রান্সফার করতে ডিসপ্লেপোর্ট ১.২ ব্যবহার করেন তবে সর্বাধিক নতুন এএমডি রেডিয়ন কার্ড, একটি 7970 প্রতি প্রদর্শন প্রতি 4096x2160 অবধি একটি রেজোলিউশন সমর্থন করে। সুতরাং এটি আপনাকে দেশীয় রেজোলিউশনের কাছাকাছি পেতে পারে, তবে এটি 5 টি পর্যন্ত টিভিতে কাজ করবে না।

এএমডি রেডিয়ন 6870 আইফিনিটি 6 একবারে 6 টি আউটপুট সমর্থন করে তবে কেবল 5760x2160 এর সর্বোচ্চ রেজোলিউশনে। এটি ক্রসফায়ার কনফিগারেশনকেও সমর্থন করে যা আপনার পারফরম্যান্সকে কিছুটা সহায়তা করবে। অতিরিক্ত জিপিইউগুলি মনে রাখবেন যে এর চেয়ে আরও বেশি রেজোলিউশন পাওয়া যাবে না।

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


হার্ডওয়ারটি 1920x1080 এ প্রতিটি স্বতন্ত্র প্রদর্শন সহ ইতিমধ্যে পুরো অ্যারে চালায় runs এটির দুটি সারি দ্বারা 5 টি কলাম। আর একজন লোক একটি ঘূর্ণিত তারের ফ্রেম চলমান সহ একটি পূর্ণ-রেজোলিউশন ওপেনজিএল উইন্ডো পেয়েছে। কেবল এমন কোনও ডিএক্স সীমাবদ্ধতা সম্পর্কে ভাবছি যা ফিরে এসে আমাকে পরে কামড়াত b
ডিভে

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

6

পারফরম্যান্স পরীক্ষার জন্য আপনি সহজেই সমমানের আকারের রেন্ডার লক্ষ্য তৈরি করতে পারেন। আপনি আসল হার্ডওয়্যার না পাওয়া পর্যন্ত আপনাকে এটি ডাউনস্কেল করতে হবে বা ব্যাক বাফারে অনুলিপি করার সময় এটি জুম করতে হবে।

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