Viewport
اعلان
public class Strawberry.Graphics.Viewport
نمایانگر یک نما (Viewport) برای موتور بازی، تعریفکنندهی مختصات صفحه و صحنه.
نکات: این کلاس serializable است تا ذخیره و بارگذاری پیکربندی نما پشتیبانی شود. هنگامی که UsePercent برابر true باشد از موقعیتدهی مبتنی بر درصد استفاده میشود.
سازندهها
Viewport
یک نمای جدید با مختصات صفحه و صحنهی مشخصشده میسازد.
void Viewport(string name, Vector2 screenPos, Vector2 screenSize, Vector2 scenePos, Vector2 sceneSize)
پارامترها:
| نام | نوع | توضیحات |
|---|---|---|
name |
System.String |
شناسهی یکتا برای نما |
screenPos |
Strawberry.Math.Vector2 |
موقعیت روی صفحه در مختصات پیکسلی |
screenSize |
Strawberry.Math.Vector2 |
اندازهی ناحیهی نما روی صفحه |
scenePos |
Strawberry.Math.Vector2 |
موقعیت در مختصات صحنه/جهان |
sceneSize |
Strawberry.Math.Vector2 |
اندازهی ناحیهی نما در واحدهای جهانی |
ویژگیها
ScreenPos
موقعیت روی صفحه در مختصات پیکسلی را دریافت یا تنظیم میکند.
Vector2 ScreenPos { get set }
ScreenSize
اندازهی ناحیهی نما روی صفحه را به واحد پیکسل دریافت یا تنظیم میکند.
Vector2 ScreenSize { get set }
ScenePos
موقعیت در مختصات صحنه/جهان را دریافت یا تنظیم میکند (مثلاً برای اهداف دوربین).
Vector2 ScenePos { get set }
SceneSize
اندازهی ناحیهی نما را در واحدهای صحنه/جهان دریافت یا تنظیم میکند.
Vector2 SceneSize { get set }
UsePercent
تنظیم میکند که آیا باید از موقعیتدهی مبتنی بر درصد بهجای پیکسل مطلق استفاده شود.
bool UsePercent { get set }
PercentPos
انحراف موقعیت هنگام استفاده از مختصات مبتنی بر درصد را دریافت یا تنظیم میکند (0 تا 100% صفحه).
Vector2 PercentPos { get set }
PercentSize
درصد اندازه را هنگام استفاده از مختصات مبتنی بر درصد دریافت یا تنظیم میکند (0 تا 100% صفحه).
Vector2 PercentSize { get set }
Bounds
کرانهای صحنهی نما را دریافت میکند.
Rectangle Bounds { get }
Name
نام شناسهی یکتا برای این نما را دریافت یا تنظیم میکند.
string Name { get set }
متدها
Center
نما را روی صفحه مرکز میکند.
void Center(Vector2 displaySize)
پارامترها:
| نام | نوع | توضیحات |
|---|---|---|
displaySize |
Strawberry.Math.Vector2 |
ScreenToScene
یک موقعیت پیکسلی در فضای صفحه را به مختصات صحنه تبدیل میکند.
Vector2 ScreenToScene(Vector2 screenPos)
پارامترها:
| نام | نوع | توضیحات |
|---|---|---|
screenPos |
Strawberry.Math.Vector2 |
SceneToScreen
یک موقعیت صحنه را به مختصات پیکسلی فضای صفحه تبدیل میکند.
Vector2 SceneToScreen(Vector2 scenePos)
پارامترها:
| نام | نوع | توضیحات |
|---|---|---|
scenePos |
Strawberry.Math.Vector2 |
ApplyPercent
موقعیتدهی مبتنی بر درصد را به مختصات پیکسلی واقعی حل میکند. این متد را هنگامی که اندازهی نمایشگر تغییر میکند یا پیش از رندر فراخوانی کنید.
void ApplyPercent(Vector2 displaySize)
پارامترها:
| نام | نوع | توضیحات |
|---|---|---|
displaySize |
Strawberry.Math.Vector2 |
FitWidth
نما را به عرض دادهشده میچرخاند. نسبت ابعاد را حفظ میکند. اگر بازی شما در حالت landscape اجرا میشود، این را فراخوانی کنید.
void FitWidth(Vector2 displaySize)
پارامترها:
| نام | نوع | توضیحات |
|---|---|---|
displaySize |
Strawberry.Math.Vector2 |
FitHeight
نما را به ارتفاع دادهشده میچرخاند. نسبت ابعاد را حفظ میکند. اگر بازی شما در حالت portrait اجرا میشود، این را فراخوانی کنید.
void FitHeight(Vector2 displaySize)
پارامترها:
| نام | نوع | توضیحات |
|---|---|---|
displaySize |
Strawberry.Math.Vector2 |