初学者のためJavaでゲームループを作ろうと思っております。
ただ、8年ほど前の個人ブログの記事で「System.nanoTimeは外部から操作されやすいので使用を推奨しない」という言及を見つけました。
(その方に直接聞けばいいのでしょうが、もうブログは更新を終えて何年も経っているようです)
殆どの記事は「正確な時間の取得のためにはnanoTimeを使用すべき」と書いてあり、セキュリティ関係の実装にもnanoTimeが使用されているのを見つけたため、
「nanoTimeよりcurrentTimeMillisをすべき理由」がいまいちよくわかりません。
nanoTimeのdeclarationに「うっかりするとオーバーフローを起こすから気をつけてね(意訳)」的な事が書いてあるのでその意味でしょうか?
わりと最近の記事でもnanotimeではなくcurrentTimeMillisを起用しているゲームループを見かけ、あえてnanotimeのような高い分解能のメソッドを使う理由もないのかもしれないとは思いましたが、
JavaFXのAnimationTimerではhandleがナノ秒を引数として持っているのを考えるとやはりnanoTimeで問題ないのでは、という気がしています。
掴みどころのない質問で申し訳ありません、よろしくおねがいします。

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/02/10 10:49
2019/02/10 10:59