Tốc độ khung hình của người khác là gì


7

Ai đó có thể cho tôi một lời giải thích chi tiết về các khái niệm tốc độ khung hình và khung hình / giây không?


7
Trong bối cảnh này, "tốc độ khung hình" và "khung hình / giây" là đồng nghĩa. Tuy nhiên, bạn cũng có thể thấy thuật ngữ "fps" liên quan đến thể loại của trò chơi - First Person Shooter.
ChrisF

Và một số tin tức liên quan gần đây: techreport.com/articles.x/21516
MichaelHouse

Câu trả lời:


38

"Tốc độ khung hình" và "FPS" (khung hình trên giây) thường giống nhau. "Khung" thường là một hình ảnh duy nhất trong chuỗi hình ảnh được hiển thị trên màn hình của bạn một cách nhanh chóng để tạo ảo giác về chuyển động trong trò chơi của bạn và do đó, các thuật ngữ thường đề cập đến số lượng hình ảnh mà trò chơi của bạn có thể mô phỏng và tạo ra trong đó một giây.

FPS thường được sử dụng như một phép đo hiệu suất thô, nhưng điều quan trọng cần nhớ là đó là phép đo phi tuyến tính : sự khác biệt giữa 30 và 60 FPS lớn hơn nhiều so với 60 và 90 FPS.

Đôi khi, bạn sẽ thấy thuật ngữ được áp dụng trong ngữ cảnh trong đó "khung" không đề cập trực tiếp đến một đơn vị xử lý đồ họa / mô phỏng tổng thể, mà là một phạm vi hẹp hơn trong phạm vi. Mặc dù vậy, ý tưởng là như nhau: chương trình tạo ra bao nhiêu bước trong vòng một giây.


3
Một lợi thế để đạt được và duy trì FPS cao hơn mắt có thể tiêu thụ một cách hợp lý là nó bảo vệ bạn khỏi sự tăng vọt thỉnh thoảng trong FPS đưa bạn đến một điểm có thể phát hiện các tạo tác thị giác. Điểm hợp nhất nhấp nháy của mắt người có xu hướng khoảng 60 FPS, trong mọi trường hợp.

1
@bane: Đúng là mắt ngừng phát hiện nhấp nháy trong khoảng từ 50 đến 75Hz, nhưng mắt người có thể nhìn xa hơn nhiều so với "hình ảnh mỗi giây". Nghiên cứu của quân đội Hoa Kỳ đã chỉ ra rằng các phi công có thể xác định các máy bay tốt hơn cơ hội chỉ nhìn thấy chúng trong 1/220 giây. Tuy nhiên, bộ giới hạn trong bất kỳ môi trường thực tế nào sẽ là công nghệ hiển thị của bạn - thường là 60Hz.

1
@ashes: Một cách tầm thường, đó là ay = 1 / x đường cong.

3
@bane: ms / frame là phép đo đầu tiên bạn nên xem xét cho mục đích tối ưu hóa. Đây là đối ứng của khung / giây; bạn không nên nhìn vào khung hình / giây cho mục đích tối ưu hóa trừ khi bạn nhớ rằng nó thực sự có mối quan hệ phi tuyến tính này với mức độ tối ưu hóa của bạn tốt như thế nào. Liên kết của Josh đi vào chi tiết tuyệt vời.

1
Tôi đang chơi trò chơi ở đây, nhưng tốc độ khung hình và khung hình / giây không phải là "điều tương tự". Theo nghĩa đen, khung hình / giây là một đơn vị để đo tốc độ khung hình. Cũng như mét là một đơn vị để đo chiều dài.
Laurent Couvidou

0

FPS = khung hình mỗi giây. Một khung hình về cơ bản là màn hình của bạn với một cái gì đó được vẽ trên đó. 60FPS có nghĩa là một cái gì đó vẽ trên màn hình của bạn 60 lần trong một giây. Bởi vì mắt của chúng ta (hoặc tôi nên nói vỏ não xử lý hình ảnh trong não) bị hạn chế, nếu bạn vẽ một thứ gì đó rất nhanh và di chuyển nó mỗi lần - nó sẽ giống như nó di chuyển đến não của chúng ta. Đó là cách phim hoạt hình được thực hiện.


0

Một "khung" là một lần xung quanh vòng lặp trò chơi:

while( game_running ):
    update()
    draw()

update () liên quan đến những thứ như

  • Đọc đầu vào của người dùng
  • Tính toán bước tiếp theo của kẻ thù

draw () chỉ là vẽ trạng thái hiện tại của trò chơi, như được tính bằng update () .

Vì vậy, ở đây một "khung" là CẢ HAI một chu kỳ cập nhật / vẽ. FPS (khung hình trên giây) là thước đo sơ bộ về số lần bạn có thể thực hiện vòng lặp trò chơi cơ bản mỗi giây, do đó, đó là thước đo sơ bộ về hiệu suất trò chơi .

Bất kỳ số lượng của những thứ có thể là cổ chai trong tốc độ khung hình của bạn . Nó có thể là mã AI chuyên sâu của CPU. Nó có thể là thói quen phát hiện va chạm của bạn trước khi bạn thêm một sơ đồ phân vùng không gian hợp lý. Nó có thể là chính GPU .

Nếu nó chứa một bộ giải vật lý chính xác, bộ giải vật lý của bạn sẽ cần thực hiện nhiều hơn một bước lặp trên mỗi "khung" được hiển thị (ví dụ CarSim yêu cầu khoảng 1000 lần lặp mỗi 1/60 giây, chỉ đơn giản là để duy trì sự ổn định trong giải pháp).


2
-1 cho tốc độ làm mới hiển thị khớp nối nhất thiết với tốc độ làm mới logic trò chơi. Định nghĩa của bạn cần làm việc. Xin vui lòng, thông báo cho chính mình trước , hoặc bạn có khả năng thông tin sai cho người khác. Điều này nói chung là rất tệ cho hiệu suất, và ngay lập tức loại trừ việc sử dụng bất kỳ đặc điểm mô phỏng xác định nào, tức là tính toán vật lý thời gian thực phù hợp và khả năng nhiều người chơi dựa trên cùng. Đây là những nguyên tắc cơ bản không khó hiểu và cũng không thực hiện được.
Kỹ sư

Thật thú vị tôi sẽ bao gồm một cái gì đó về điều này, nhưng với mục đích giải thích khung là gì, tôi nghĩ rằng điều này là đủ. Tôi sẽ thêm một cái gì đó vào VIRTUAL SECONDsau.
bobobobo

Tôi sẽ vui lòng loại bỏ tiêu cực một khi bạn có.
Kỹ sư

Tôi không hoàn toàn đồng ý với câu trả lời của bạn. Để sử dụng ví dụ của riêng bạn, các công cụ vật lý thường chạy nhanh hơn nhiều như 1000 lần mỗi giây. Điều này thường được gọi là 'động cơ vật lý chạy ở 1000 khung hình / giây'. Tôi sẽ xác định các khung hình mỗi giây là: 'bao nhiêu lần tất cả công việc được thực hiện bởi một hệ thống nhất định trên mỗi khung hình'. Điều này giữ cho định nghĩa đủ rộng để áp dụng cho các động cơ vật lý và các hệ thống con khác chạy theo tốc độ của riêng chúng trong các trò chơi. Hy vọng nó không quá mơ hồ.
Roy T.

-1, đoạn thứ ba của Josh bao gồm cùng một nền tảng với toàn bộ câu trả lời của bạn mà không bị sa lầy vào các chi tiết không liên quan.
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.