C#游戏开发中精确的时间调配
2015-06-05 07:55
519 查看
方法一:参考《精通C#游戏编程》一书。根据学习WorldWind源码可知,WorldWind中采用的方法与该方法基本一致。
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Runtime.InteropServices; namespace GameLoop//根据需要修改名称空间 { public class PreciseTimer { [System.Security.SuppressUnmanagedCodeSecurity] [DllImport("kernel32")] private static extern bool QueryPerformanceFrequency(ref long PerformanceFrequency); [System.Security.SuppressUnmanagedCodeSecurity] [DllImport("kernel32")] private static extern bool QueryPerformanceCounter(ref long PerformanceCount); long _ticksPerSecond = 0; long _previousElapsedTime = 0; public PreciseTimer() { QueryPerformanceFrequency(ref _ticksPerSecond); GetElapsedTime(); // Get rid of first rubbish result } public double GetElapsedTime() { long time = 0; QueryPerformanceCounter(ref time); double elapsedTime = (double)(time - _previousElapsedTime) / (double)_ticksPerSecond; _previousElapsedTime = time; return elapsedTime; } } }
相关文章推荐
- Some practices to write better C#/.NET code(译)
- 反射 C#
- c# C(m,n) 排列组合算法
- CLR.via.C#第三版 读书笔记
- C#中XmlSerializer实现序列化浅析
- C#代码实现邮箱验证C#中及一些常用的正则表达式
- 系列文章——关于C#,你应该知道的2000件事情(002)
- c#自动更新+安装程序的制作
- C#进阶 WPF基础二 布局嵌套、菜单、工具栏、多窗口
- 【EmguCV】C#实现HOG与SVM的几个问题
- C#操作XML小结
- C# 字符串md5加密
- [C#] 汉字转拼音,支持多音字
- [C#] 汉字转拼音,支持多音字
- C#中调用SAPI实现语音合成的2种方法
- 偶尔在网上看到的,相对比较好的c#端订单号生成规则
- C#中调用SAPI实现语音识别的2种方法
- C#利用Renci.SshNet类库实现SFTP协议操作文件
- C# 透明背景Panel, 透明图像, PitureBox透明效果
- C#判断某个软件是否已安装实现代码分享