スポンサードリンク


検索
スポンサードリンク
プロフィール
ピノまっちゃさんの画像
ピノまっちゃ
どうも、ピノまっちゃ(PinoMatcha)です!
ゲーム開発をちょこまか頑張ってます!
僕はまだ高校生で、プログラミングも独学です。
ですので実力は全然ですが、最善を尽くして頑張っております!

勉強や部活で忙しいので更新は不定期ですが、時間があるときに更新しようと思っているので、1日に2記事更新したりあるかもです。

名前の由来はピノ抹茶が好きだからじゃなくて、ピノと抹茶が好きだからです!


定期更新 : 月曜日と金曜日
(もちろん他の日も書く!)
プロフィール
うちの子
IMG_-5rr9p5.jpg
フィリアナ
名前は、由来らしい由来は無いですね…。
なんとなくのフィーリングで付けました
ちゃんと意味を込めて改名するかも知れないです。
多分します。
公開済みアプリ

中々にくだらないアプリたち

Cubefalls
Icon (512x512).png
Google Play で手に入れよう


Shoot through the target
icon high.png
Google Play で手に入れよう
最新の記事
最新のコメント
更新事項
2018/8/2 定期更新への変更の報告に追記しました。

2018/5/10 「続きを読む」機能の使い方がやっと分かりました。

2017/9/14 プレイヤーを動かす:関数の解説の一部を書き直しました。

2017/8/1 【unity5】カメラ移動・回転させる方法に多数の画像を追加しました。
カテゴリーアーカイブ
ファン
YouTubeチャンネル
Pixivアカウント
現在、調整中です…


プログラミングを仕事に

2018年10月27日

【Unity】FPS(フレームレート)を取得する

【Unity】FPSを取得する - FPS表示(Statsから).png



FPSとは


FPSとは、

「Frame Per Second」

の頭文字から取ったもので、

一秒間に呼び出すフレーム数

のことです。



分かり易いのが、

「パラパラ漫画」

とかですかね?


1秒間に100枚パラパラ出来るのか、

1秒間に1000枚パラパラ出来るのか


で「表示の細かさ」が変わってきます。


後者の方が動きを上手く捉えられそうじゃないですか?

まぁ、FPSについてはそんなものです。




「FPS自体」については、
こちらで丁寧に解説している方がいるので
参考にどうぞ。

『フレームレート(FPS)って何?どのくらいの値にすればいいの?』




UnityでFPSを取得しよう


さてさて、本題の

「FPSの取得」

です。

取り敢えずFPSを表示する


まぁ、表示するだけなら

Gameウィンドウの上の「Stats」から見れます。

【Unity】FPSを取得する - FPS表示(Statsから).png


スクリプトでテキトーに計算する


スクリプトを使って頑張って

FPSを算出します。

using UnityEngine;
using System.Collections;

public class SampleScript : MonoBehaviour {
 void Update() {
  float fps = 1f / Time.deltaTime;
 }
}


これでFPSを算出できます。

FPSの算出には、Time.deltaTimeの逆数を用いています。
※Time.deltaTimeは1つ前のフレームからの経過時間(秒)を表します。



1秒間に何回フレームが呼ばれたのかを

計算するので、1fをTime.deltaTimeで割っています。

一応、「fps」という変数に

突っ込んでありますのでそのまま使えます。



まぁしかし、

このままだとUpdate毎にFPSを

計算していますので

ズバズバ数値が変わっていきます。

ズバズババッ


安定した、かつ正確なFPSを算出する


Update毎に数値が変わるとめまぐるしい。

ならば一定秒数ごとに計算すれば良かろう?


using UnityEngine;
using System.Collections;

public class Re_SampleScript : MonoBehaviour {

 float fps;
 int frameCount;
 float nextTime;

 void Start () {
  nextTime = Time.time + 1;
 }

 void Update () {
  frameCount++;

  if ( Time.time >= nextTime ) {
   fps = frameCount;
   frameCount = 0;
   nextTime += 1;
  }
 }
}



一秒ごとに「fps」変数に

算出したfps値を代入しているので

変数をそのまま使えます。


終わりに



今回はここまでです!

どうにかしてちゃんとしたFPSを

割り出したかったのでメモりました。


ではまた次回
投稿コメント
* 気軽にコメントくださいー *

お名前:

メールアドレス:


ホームページアドレス:

コメント: 必須項目

※ブログオーナーが承認したコメントのみ表示されます。

この記事へのトラックバックURL
http://fanblogs.jp/tb/8240904
※ブログオーナーが承認したトラックバックのみ表示されます。

この記事へのトラックバック