ユニティで構築されたマルチプレイヤーゲームでは、データのパケットがいつ入ってきたかを知るために、多くの時間を記録する必要があります。Unity、Time.time、DateTime.UtcNow.Millisecondのパフォーマンスはどうでしょうか?パフォーマンスの違いはどれくらい違いますか?Unity.3DのTime.timeとDateTime.UtcNow.Millisecondのパフォーマンス?
4
A
答えて
2
自分でテストするのが最善です。あなたはあなたのアプリケーションを最もよく知っており、特定の条件で最適な解決策が何であるかを知ることができます。これは簡単なテストスクリプトです。現在のタイムスタンプをunity/c#メソッドで保存し、その操作に必要な時間を記録します。
public class TimeTest : MonoBehaviour
{
public bool UseUnityFuntion;
private string msg;
void Update()
{
var stopwatch = Stopwatch.StartNew();
msg = UseUnityFuntion
? Time.time.ToString()
: DateTime.UtcNow.Millisecond.ToString();
stopwatch.Stop();
UnityEngine.Debug.Log(stopwatch.ElapsedTicks);
}
void OnGUI()
{
if (msg != null) GUILayout.Label(msg);
}
}
ほとんどの場合と同様に、今回は非ユニティ機能が高速であるようです。少なくとも私のPC上で。どのようにアプリケーションが動作するのか分かりませんが、Miliseconds値を使用するときに衝突する可能性があることに注意してください。 Time.timeを使用することの欠点も1つあります。これはメインスレッドでのみ実行できます。ネットワークアプリケーションを使用している場合は、タイムスタンプをバックグラウンドスレッドに保存する可能性が高くなります。
関連する問題
- 1. Unity 3D Androidとファイル
- 2. Unity 3D。
- 3. Unity 3Dゲームのスプライト
- 4. Unity 3d - CLOTHオブジェクト
- 5. Unity 3Dゲームパッチツール?
- 6. Unity 3D FPSキャラクターエラー
- 7. Unity 3Dパッケージマネージャエラー
- 8. unet Unity 3d
- 9. Microsoft Unity Containerのパフォーマンス
- 10. Unity 3D - オブジェクトの位置とサイズ
- 11. Vuforia + Unityの動的3Dモデルとトリガー
- 12. アニメーションの問題Unity 3D
- 13. Unity 3D iOSビルドビットコードの問題
- 14. Unity 3Dの共有変数
- 15. Unity 3D Sandboxゲームの問題
- 16. time.timeとtimeit.timeit
- 17. Unity 3D C#Strings.XMLメソッド
- 18. Unity用Photoshop 3Dエクスポート
- 19. Samsung Gear controlls - Unity 3D
- 20. Unity 3D「自動」リップシンク?
- 21. UNITY 3D C#XML MERGE
- 22. time.time()とfile.getmtime()の関係は?
- 23. Unity Render.TransparentGeometryパフォーマンスの問題
- 24. Unity 3Dでペイパルエクスプレスチェックアウトをレンダリング
- 25. Unity 3Dのプロセスの時間遅延
- 26. Unityの3Dゲームオブジェクトでの描画方法
- 27. 地形上の3D Unityオブジェクトの配置
- 28. Unity 3DのMixamo Proの文字3.4
- 29. FPSControllerの子オブジェクトのOnMouseUp [Unity 3d]
- 30. Unity 3D AppStoreリンク公開の問題
https://ericlippert.com/2012/12/17/performance-rant/ – DavidG
Uuuh ...これらの2つの値は異なるものを意味します。 ['Time.time'](https://docs.unity3d.com/ScriptReference/Time-time.html)は、ゲームが始まってから**秒単位の時間を与えます**。これは 'DateTime.UtcNow.Millisecond'とはまったく異なります。これは、システム時刻をUTCで示しています。あなたはおそらく後者が欲しい。 – Serlite
@Serlite私はOPがこれを知っていると思います。それらの値を減算することで、両方の値をタイマーに使用できます。私はOPがどちらが速いか、または推奨されているかを知りたいと思う。 – Programmer