এক্সএনএ-তে আমি কীভাবে সুন্দর ছোট পাঠ্যটি বাইরের লাইব্রেরি ব্যবহার না করে পেতে পারি?


13

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

সানসেশন বা কুইকস্যান্ডের মতো ফন্টগুলি ব্যবহার করার সময়, এটি হরফ আকারের ফন্টগুলিতে ভয়ানক দেখায়। এটা খুব খারাপ!

এটির জন্য কি কোনও পরিচিত কাজ আছে? আমি ফন্টসাইজগুলি অত্যন্ত উঁচুতে স্থাপন করার চেষ্টা করেছি এবং তারপরে কোনও ভাগ্য ছাড়াই স্প্রিটব্যাচে সেগুলি কমিয়ে দিচ্ছি।


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

বিভিন্ন রিয়েল ডিভাইস এবং লোকের উপর আপনার ছোট ফন্ট পরীক্ষা করতে ভুলবেন না। যদি এটি একটি 360 শিরোনাম এবং এভাবে টিভিগুলিকে লক্ষ্য করে তোলে তবে সমস্ত ভিজ্যুয়াল উপাদানের আকারগুলি পিসি স্ক্রিনের চেয়ে মোটামুটি বড় হতে হবে।
লার্স ভিক্লুন্ড ২১ শে

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

1
পাঠ্য স্কেল করবেন না, আপনার প্রয়োজন প্রতিটি আকারের জন্য একটি স্প্রিটফন্ট তৈরি করুন।
ওয়াউটার

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

উত্তর:


11

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


13

এক্সএনএ স্প্রাইট ফন্ট প্রসেসরটি এক্সএএনএস ৪.০-তে নতুন প্রিমিপ্লিটপ্লাইড আলফার সাথে ভালভাবে কাজ করে না এমন ডিএক্সটি 3 সংক্ষেপণ ব্যবহার করে। সুতরাং লেখার ব্লক চেহারা।

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

নিউক্লিক্স প্রসেসরের ডেটা একই ফর্ম্যাটে থাকার কারণে, এক্সএনএ SpriteFontপাঠক এটি পড়তে পারেন এবং আপনার গেমের সাথে বিতরণের জন্য কোনও নিউক্লেক্স লাইব্রেরি অন্তর্ভুক্ত করার দরকার নেই।

(এটি আপনাকে সুবিধামত XNA- এর নেটিভ স্প্রাইট ফন্ট সংজ্ঞা হিসাবে একই এক্সএমএল ফর্ম্যাটটি ব্যবহার করার অনুমতি দেয়))

এটি বলা হচ্ছে: আপনার গেমের সাথে বাহ্যিক লাইব্রেরিগুলি বান্ডিল করার ক্ষেত্রে কোনও ভুল নেই। এটি আপনার সিস্টেমে বা যে কোনও কিছুতে ইনস্টল হওয়ার মতো নয়। (আপনি দুটি সমাবেশকে একীভূত করতে এতদূর যেতে পারতেন)।

এবং কোডটি একই জিনিসটি (উদাহরণস্বরূপ, যদি আপনি সংস্করণ নিয়ন্ত্রণ সম্পর্কে উদ্বিগ্ন হন)। আপনি কেবল Nuclex.Fonts.Content.TrueTypeImporter.dllআপনার উত্স কোডটি রেখে দিতে পারেন। আসলে এটি কোনও বড় বিষয় নয়।


9

আপনি পিক্সেল হরফ ব্যবহার করতে পারেন :

পিএফ টেম্পস্টা ভেরিয়েন্ট

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

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