সরাসরি এক্সএনএতে এসভিজি আর্ট রেন্ডারিং


36

মনে করুন আমার কাছে কিছু ভেক্টরাইজড ফর্ম্যাটে যেমন এসভিজিতে 2 ডি আর্টের একগুচ্ছ রয়েছে। একটি সম্পূর্ণ এসভিজি রেন্ডারার নিজেই প্রয়োগ না করে সরাসরি রেন্ডার করার কি সহজ উপায় আছে?

অবশ্যই আমি বিভিন্ন রেজোলিউশন / জুম স্তরের জন্য অফ-লাইনটিকে (যেমন কনটেন্ট পাইপলাইনে) রাস্টারাইজ করতে পারি তবে আমি ভেক্টর গ্রাফিক্স অফার করে এমন ক্রমাগত জুম স্তরে খাস্তা ভিজ্যুয়ালগুলি বজায় রাখতে চাই।

উত্তর:


24

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


সবার আগে জিপিইউ রত্ন 3 এর একটি নিবন্ধ রয়েছে: জিপিইউতে ভেক্টর আর্ট রেন্ডারিং (এবং সম্পর্কিত লুপ-ব্লিন পেপার )।

সবচেয়ে কঠিন অংশটি হ'ল চতুষ্কোণ বক্ররেখা অঙ্কন করা সহজ, ঘনকীয় বক্ররেখাগুলি (আপনার সাধারণ এসভিজির মতো এটি) বেশ শক্ত। নিবন্ধটি এই সম্পর্কে বিস্তারিতভাবে যায়, তবে আপনাকে আপনার গণিতের টুপি আনতে হবে।

কিউবিক কার্ভগুলি রেন্ডারিংয়ের বিকল্প হ'ল কিউবিক রেখাচিত্রকে চতুষ্কোণ রূপান্তর করা। এছাড়াও একটি তুচ্ছ সমস্যা।

একবার আপনি জিপিইউতে ভেক্টর কার্ভগুলি রেন্ডার করতে পারলে আপনার কন্টেন্ট পাইপলাইনে এসভিজিকে পার্স করা এবং আপনি যে রেন্ডার করতে পারেন তা জাল করে তোলা এটি সাধারণ বিষয়। এসভিজিকে পার্সিং করা সহজ , উপায় দ্বারা।

আরেকটি, সম্ভাব্য সহজ বিকল্প হ'ল সমস্ত একসাথে বক্ররেখাগুলি ফোরগো এবং সহজেই আপনার এসভিজির একটি লিনিয়ার অনুমানের ত্রিভুজ করা।

এই উভয় সমাধানের জন্য ত্রিভঙ্গীকরণ প্রয়োজন - এখানে একটি যুক্তিসঙ্গত ত্রিভুজযন্ত্রটি XNA- র সাথে উপযুক্ত


সম্পূর্ণ ভিন্ন বিকল্প হিসাবে, আপনি প্রায়-ভেক্টরের মতো তীক্ষ্ণ প্রান্তের সাথে স্প্রিট সরবরাহ করতে একটি "দূরত্বের ক্ষেত্র" ব্যবহার করতে পারেন।

এটি কীভাবে করবেন সে সম্পর্কে সাইনগ্রাফ 2007 থেকে ভালভের একটি কাগজ এখানে রয়েছে: ভেক্টর টেক্সচার এবং বিশেষ প্রভাবগুলির জন্য উন্নত আলফা-পরীক্ষিত ম্যাগনি ation পরিচয় (পিডিএফ)

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


এখন যে আমি সমস্ত বলেছি - আমার বলতে হবে, আমার অভিজ্ঞতায়, এখানে সমস্ত প্রচেষ্টা মূল্যহীন নয়!

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

(মনে মনে আসে প্রথম কৌশলগুলির মধ্যে একটি হ'ল মাইপম্যাপিং ( উইকি ) আপনার স্প্রাইটসের উচ্চ-রেজোলিউশন সংস্করণ, যাতে আপনার সর্বাধিক স্প্রাইট আকার না হওয়া পর্যন্ত আপনাকে রেজোলিউশনের স্বাধীনতা দেওয়া হয়))

আপনার এক্সএনএ কনটেন্ট পাইপলাইনে এসভিজি রেন্ডারিং সমর্থন যোগ করার জন্য এই ব্লগ পোস্টটি সম্ভবত শুরু করার জন্য ভাল জায়গা।


দুর্দান্ত উত্তর, ধন্যবাদ! নিজেকে ফাঁসানোর জন্য যথেষ্ট দড়ি ছাড়াও এটি way শেষ পর্যন্ত, আমি সম্ভবত বিটম্যাপ রুটে যেতে আপনার পরামর্শ নেব। এর মধ্যে, আমি কিছু পড়তে পেয়েছি! : পি
drxzcl

এই উত্তর এখনও সঠিক?
lochok

হ্যাঁ আমার উত্তরে এমন কিছু নেই যা হঠাৎ করে কাজ করা বন্ধ করে দেবে। ভবিষ্যতে ভেক্টরগুলি করার একটি আরও ভাল উপায় বিকশিত হতে পারে - তবে, লেখার সময়, আমি নতুন কিছু শুনিনি।
অ্যান্ড্রু রাসেল

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