ইউভি এবং ইউভিডাব্লু ম্যাপিং ঠিক কী?


26

কিছু বেসিক 3 ডি ধারণাটি বোঝার চেষ্টা করছি, এই মুহুর্তে টেক্সচারটি কীভাবে বাস্তবে কাজ করে তা নির্ধারণ করার চেষ্টা করছি। আমি জানি যে ইউভি এবং ইউভিডাব্লু ম্যাপিং এমন কৌশল যা 3 ডি অবজেক্টগুলিতে 2D টেক্সচার ম্যাপ করে - উইকিপিডিয়া আমাকে অনেক কিছু বলেছিল। আমি ব্যাখ্যার জন্য গুগল করেছি তবে কেবল টিউটোরিয়ালগুলি পেয়েছি যা ধরে নিয়েছে যে এটি ইতিমধ্যে আমি জানি।

আমার উপলব্ধি থেকে, প্রতিটি 3 ডি মডেল পয়েন্টগুলি থেকে তৈরি করা হয় এবং বেশ কয়েকটি পয়েন্ট একটি মুখ তৈরি করে? প্রতিটি বিন্দু বা মুখের কোনও গৌণ সমন্বয় আছে যা 2D টেক্সচারে কুঠার / y অবস্থানে মানচিত্র রয়েছে? বা মোড়ক কীভাবে মোড়কে ব্যবহার করে?

এছাড়াও, ইউভিডাব্লু-এ ডাব্লু আসলে কী করে, এটি ইউভি-র উপরে কী প্রস্তাব করে? আমি এটি বুঝতে পারছি, ডাব্লু জেড সমন্বয়কে মানচিত্র করে, তবে কোন পরিস্থিতিতে একই এক্স / ওয়াই এবং বিভিন্ন জেডের জন্য আমার বিভিন্ন টেক্সচার থাকবে, জেড অংশটি অদৃশ্য হবে না? নাকি আমি এটাকে পুরোপুরি ভুল বুঝছি?


1
দুটি প্রশ্ন আলাদাভাবে জিজ্ঞাসা করুন
নুব গেম ডেভেলপার

1
আমি @ নোবগেমডেপল্পারের মতো ছেলেগুলিকে ঘৃণা করি, অন্য প্রত্যেকে প্রশ্নের উত্তর দিচ্ছে এবং তারা যা করছে তারা প্রশ্নের সাথে ভুল জিনিসগুলি অনুসন্ধান করার চেষ্টা করছে। আসুন তাদের প্রশ্ন জিজ্ঞাসা করুন, আমি বলছি না যে কারও নিয়ম অনুসরণ করা উচিত নয় তবে এই জাতীয় প্রশ্নগুলি এখানে পোস্ট করা সম্পূর্ণ ঠিক আছে okay
দানিয়াল আজরাম

উত্তর:


23

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

যখন কোনও বস্তু টেক্সচারযুক্ত হয় তখন এই স্থানাঙ্কগুলি টেক্সচার থেকে কোন টেক্সেল বা পিক্সেলটি প্লট করতে হয় তা সন্ধান করতে ব্যবহৃত হয়। টেক্সচারের বাম প্রান্তের ( ইউ = 0) এবং টেক্সচারের ডান প্রান্তের ( u = 1.0) এবং টেক্সচারের শীর্ষ থেকে ( v = 0) এবং নীচে এর ( v= 1.0)। এগুলি শিখরগুলির মধ্যে ফাঁকে ফাঁকে দেওয়া হয় এবং প্রতিটি অন-স্ক্রিন পিক্সেলের জন্য সন্ধান করা হয় যা রেন্ডার হয়। এগুলি এই ব্যাপ্তির চেয়ে বড় বা ছোট হতে পারে এবং যখন অবজেক্টটি রেন্ডার হয় তখন সেটাকে রেন্ডার স্টেটটি কী ঘটে তা নির্দিষ্ট করে। এর জন্য বিকল্পগুলি হ'ল ক্ল্যাম্প এবং পুনরায়। ক্ল্যাম্পিং স্থানাঙ্কটিকে 0 বা 1 এর মধ্যে সীমাবদ্ধ করে, জমিনটি সীমার বাইরে যেখানে থাকে ত্রষ্টির ফলে। পুনরাবৃত্তি পাঠ্যটি যখন সীমার বাইরে থাকে তখন পুনরাবৃত্তি ঘটায়; এটি কার্যকরভাবে স্থানাঙ্কের দশমিক অংশটি দখল করা এবং এটি তার জায়গায় ব্যবহার করার মতো।

টেক্সচারের স্থানাঙ্কগুলি কোনও বস্তুর উপরে প্রয়োগ করার আগে, তাদের কিছু রূপান্তর প্রয়োগ করার জন্য এগুলি টেক্সচার ম্যাট্রিক্স দ্বারা গুণিত করা হয় (যেমন স্কেলিং, অনুবাদ বা রোটেশন)। এই প্রভাবটি মাঝে মাঝে গেমগুলিতে এনিমেটেড করা হয় যাতে এটি প্রদর্শিত হয় যেন কোনও বস্তু নিজেই সরিয়ে না নিয়ে কোনও জিনিস জুড়ে চলেছে ... টেক্সচারটি কেবল তার চারপাশে স্ক্রোল করছে। টেক্সচার মেট্রিক্স যখন টেক্সচার কোঅর্ডিনেটগুলি দ্বারা বহুগুণ হয়, তখন এটি 2 টি মান তৈরি করে যা টেক্সেলটি প্লট করার জন্য ব্যবহৃত হয় (তাদেরকে এস এবং টি কল করতে দেয় )। টেক্সচার ম্যাট্রিক্স সেট না করা হলেও এগুলি ইউভি থেকে স্বয়ংক্রিয়ভাবে উত্পন্ন হয় ; এটি u এবং v এর গুণকের সমতুল্য একটি পরিচয় ম্যাট্রিক্স দ্বারা ।

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


এটি উল্লেখযোগ্য যে ওপেনজিএল v0 কে নীচের এবং v1.0 শীর্ষ হিসাবে বিবেচনা করে। অতীতে আমার জন্য অনেক সময় ব্যয় হয়েছিল যখন আমার টেক্সচারটি অদ্ভুত লাগছিল তখন আমি বাগটি খুঁজে পাইনি।
tkausl

8

একটি ত্রিভুজ বিবেচনা করুন।

প্রতিটি কোণে একটি UV সমন্বয় থাকে। প্রতিটি পিক্সেলের জন্য ইউভি স্থানাঙ্কের সেট পেতে আপনি এগুলির মধ্যে বিভক্ত হন। (এখানে খেলার ক্ষেত্রেও দৃষ্টিভঙ্গি রয়েছে তবে আসুন মুহূর্তের জন্য তা উপেক্ষা করুন)।

তারপরে, আপনি স্থানাঙ্কগুলি ইউ এবং ভি থেকে টেক্সচারটি আনুন যা বলতে হবে, টেক্সচার সমন্বয় থেকে একটি পিক্সেল x, y - একই জিনিস, যেহেতু আমরা টেক্সচারের বিষয়ে কথা বলছি slightly

যদি আপনার টেক্সচারটি সত্যই ত্রিমাত্রিক হয় তবে আপনার জন্য একটি তৃতীয় স্থানাঙ্ক, ডাব্লু।

এটি ভিজ্যুয়ালাইজ করার একটি উপায় কাঠের একটি ব্লক সম্পর্কে চিন্তা করা। আপনি যদি এটি কোনওভাবে কেটে ফেলেন তবে আপনি দেখতে পাবেন যে ব্লকের অভ্যন্তরে প্রতিটি বিমানের মধ্যে 2d টেক্সচার রয়েছে।

3 ডি টেক্সচার এত বিরল যে আপনি আপাতত তাদের সম্পর্কে ভুলে যেতে পারেন।


বিরল? তারা কি জন্য ব্যবহার করা হয়? আপনি এএএ শিরোনামের প্রসঙ্গে কিছু উদাহরণ প্রদর্শন করতে পারেন?
কাজী ইরফান

না, কারণ তারা সাধারণত কখনও ব্যবহার হয় না বলে কথা বলছেন। সর্বদা একই জিনিস করার কিছু সস্তা উপায় আছে। উইআই স্পোর্টস প্লাসে কাটা আইটেমগুলি সম্পর্কে ভাবুন; আপনি আইটেমগুলি যে কোনওভাবে ভাঙ্গতে পারেন এবং "অভ্যন্তরীণ" দেখতে পারেন। তারা 3 ডি টেক্সচার তৈরি করে বিপুল পরিমাণ স্মৃতি নষ্ট করতে পারে (ধরে নিলে হার্ডওয়্যার এমনকি এটি সমর্থন করে), তবে এর পরিবর্তে 2d টেক্সচারের একটি দম্পতি দিয়ে অনুকরণ করা অনেক সস্তা।
জারি কম্প্পা

সুতরাং, তারা একচেটিয়া না? বা গেম ইঞ্জিনের কোনও পরিচিত জিনিসগুলির জন্য এটি খুব বেশি প্রয়োজনীয় বৈশিষ্ট্য নয়?
কাজী ইরফান

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

3 ডি টেক্সচারের একটি অ্যাপ্লিকেশন হ'ল দূরত্ব ম্যাপিং, যদিও জারি যেমনটি বলেছেন, তাদের জটিলতার কারণে তারা একটি খেলায় খুব অস্বাভাবিক। [লিংক] http.developer.nvidia.com/GPUGems2/gpugems2_chapter08.html
জ্যাকালোপ

7

অরিগামি ভাবুন।

একটি ইউভি মানচিত্র আপনার 3 ডি জাল (শেল) এর চ্যাপ্টা (মোড়কযুক্ত) 2D ত্বকের মতো।

আপনি যদি মানচিত্রটি কেটে ফেলেন এবং জাল লাইনগুলি দিয়ে এটি ভাঁজ করেন তবে ফলাফলটি আপনার 3 ডি মডেল হবে।

(ইউ, ভি) ভাসমান পয়েন্টের মানগুলি (0,0) থেকে শুরু করে (1,1) ইউভি মানচিত্রের উপরের বাম কোণটি (0,0) নীচের ডান কোণটি (1,1)

বহুভুজের জাল (ট্রিস / কোয়াডস) এর প্রতিটি ভার্টেক্সের একটি (ইউ, ভি) মান রয়েছে যা রেন্ডারকে ম্যাপের কোন অংশটি ব্যবহার করতে হবে তা বলে।

জিপিইউ পাইপলাইনে, ভার্টেক্স শেডারগুলি এই 3 ডি বহুভুজগুলিতে প্রতিটি পিক্সেলের 2D অনুমান গণনা করে এবং তারপরে টুকরা ছায়াগুলি ইউভি মানচিত্রটি ব্যবহার করে তাদের রঙিন করে।

এর মতো ছবি ছাড়া এটি পুরোপুরি প্রশংসা করা যায় না যা এটি সমস্ত স্পষ্ট করে তোলে:

ইউভি জাল

যেমন অন্যান্য মন্তব্যকারীরা উল্লেখ করেছেন, ডাব্লু উপাদানটি ছায়া ম্যাপিংয়ের মতো ফ্যানসিয়ার ইফেক্টের জন্য রেন্ডারার দ্বারা ব্যবহৃত হয় তবে ইউভি মানচিত্রটি বোঝার ভিত্তি।

মনে রাখবেন যে একটি ভার্টেক্স শ্যাডারের প্রতিটি পিক্সেল রঙিন হওয়া দরকার এবং তার জন্য কমপক্ষে একবার একবার ফ্রেগমেন্ট শেডারকে কল করতে হবে That এজন্য জিপিইউগুলি কয়েক ডজন কোর সহ সমান্তরাল প্রসেসর - শেডার পাইপলাইনটি খুব দাবী করছে।

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

ইউভি-ম্যাপিং কয়েক বিলিয়ন পিক্সেল প্রতি সেকেন্ডে 240+ ফ্রেমে সত্যিকারের উত্তপ্ত গণ্ডগোলের কারণ হতে পারে!


0

একটি UV মানচিত্র টেক্সচার ইমেজের জালটিতে একটি বিন্দু (x, y, z) ম্যাপ করে (ইউ, ভি)। যেহেতু কোনও চিত্রের মানচিত্র (ইউ, ভি) কোনও রঙের জন্য, দুটি মানচিত্র শৃঙ্খলাবদ্ধ হতে পারে, জাল স্থান থেকে রঙের স্থান পর্যন্ত একটি মানচিত্র উত্পন্ন করে।

         uv map       color map
 (x,y,z)   ->   (u,v)    ->     color
 mesh           Texture
 space          space
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.