یکی از تکنیک های مهم رندر و بهینه سازی بازی های بزرگ و بهبود فریم ریت frame rate در یونیتی و سایر انجین ها
سه شنبه, ۱۱ اسفند ۱۳۹۴، ۰۴:۴۳ ق.ظ
gameover.blog.ir
یکی از تنظیمات occlusion culling و یکی از تنظیمات دیگه گزینه ی near
دوربین هست. near پارامتر نزدیک بودن هست.مثلا اگه بهش عدد 10 بدیم اشیا تا
10 متری رندر میشه و باقی رندر نمیشه مگه اینکه پلیر حرکت کنه و تا مرز ده
متر اشیا رندر میشه.
تکنیک دیگه اینه که بیایم خودمون اسکریپت بنویسیم ابتدا آرایه ای بسازیم که کل اشیای صحنه داخلش باشه.(یعنی از نوع GameObject باشه)
سپس Tag هر گیم ابجکت رو چک کنیم اگه غیر از tag زمین و خودمون بود شرط دوم رو اجرا کنیم و اون اینه :
با تابع Vector3.Distance به الگوی
کد:
public static float Distance(Vector3 a, Vector3 b);
اگر فاصله کمتر از میزان دلخواه بود گیم ابجکت رو setActive(true یا فعال وگرنه setActive(false یا غیر فعال کنه.
با استفاده از این تکنیک هر چقدر بازی شما بزرگ باشه به شدت افزایش کارایی و بهینه سازی رو خواهیم داشت.
این یکی از حقه های بسیار مهمی هست که اکثر بازی ساز های بزرگ ازش بهره می برن.
با تشکر از علی
۹۴/۱۲/۱۱