| کانال توسعهدهندگان بازی |
Photo
click to show
click to show
در کد زیر حرکت کاراکتر بر اساس frame rate محاسبه شده و نه بر اساس delta time، که میتواند روی سیستمهای مختلف باعث تفاوت سرعت حرکت شود.
سؤال:
چه تغییری باید در منطق بهروزرسانی سرعت/موقعیت داده شود تا سرعت حرکت کاراکتر مستقل از تعداد فریم و فقط وابسته به زمان واقعی (delta time) باشد؟
public class PlayerController : MonoBehaviour
{
public float speed = 5f;
private Vector3 direction;
void Update()
{
float horizontal = Input.GetAxis("Horizontal");
float vertical = Input.GetAxis("Vertical");
direction = new Vector3(horizontal, 0f, vertical);
// Anti Pattern: وابسته به frame rate
transform.position += direction * speed;
}
}
🔖 #GameDev #بازیسازی
👤 Developix
💎 Channel: @DevelopixGame
1 · 342 ·