HiDPI / Retina و مقیاس بافتها
نمایشگرهای مدرن (مثل Retina اپل) دارای Pixel Density بالا هستند و بدون تنظیم مناسب، صحنهها کدر یا تار نمایش داده میشوند.
۱️⃣ تنظیم Pixel Ratio در Renderer
-
Pixel Ratio تعداد پیکسلهای واقعی روی صفحه را مشخص میکند
-
با افزایش آن، صحنه روی نمایشگرهای HiDPI شفافتر میشود
📌 window.devicePixelRatio
معمولا 2 برای Retina و 1 برای نمایشگر معمولی است
۲️⃣ تاثیر روی Texture ها
-
Textures با رزولوشن پایین روی نمایشگرهای HiDPI تار دیده میشوند
-
راهکارها:
-
استفاده از Textures با رزولوشن بالاتر
-
تنظیم minFilter و magFilter برای کیفیت بهتر
-
🔹 مثال Texture
۳️⃣ مراقبت از Performance
-
افزایش Pixel Ratio باعث افزایش GPU Load میشود
-
معمولاً برای موبایل میتوان Pixel Ratio را محدود کرد:
۴️⃣ مثال کامل
📌 این مثال تضمین میکند که:
-
صحنه و Texture روی نمایشگرهای HiDPI واضح باشند
-
صحنه Responsive و بدون تار شدن نمایش داده شود
۵️⃣ نکات مهم
-
Pixel Ratio بالا → کیفیت بهتر، مصرف GPU بیشتر
-
Textures با رزولوشن کافی انتخاب شوند
-
فیلترهای مناسب (Linear, Mipmap) برای جلوگیری از Aliasing
-
میتوان روی موبایل Pixel Ratio محدود کرد تا Performance حفظ شود