DirectX Sample-ConfigSystem中采用配置文件进行游戏设置
2013-07-09 22:02
246 查看
这个例子是一个撞球系统,碰撞部分也值得学习,不过最重要的还是其配置部分,配置文件为config.txt,其中包括:
Requirements:所需配置
propertyset:预定义的设置,通过名字引用,例子文件中没有
AudioVendor:音频设置
DisplayVendor:视频设置,也是这个例子中最主要的部分,根据不同的显卡制造商(VendorId),不同的设备号(DeviceId),然后根据驱动版本号、操作系统版本等信息做一些设置。
上面提到的设置通过调用游戏中的相应接口设置,保存在CONFIGTABLE ConfigTable中
比如
例1
3DFX
DisplayVendor = 0x121a "3dfx"
0x8626 = "Rush (Macronix)"
UnsupportedCard
break
其含义为
3DFX制作的显卡,如果设备号为0x8626,则不支持当前游戏
例2
DisplayVendor = 0x8086 "Intel"
Unknown = "Unknown"
UMA
这个是我电脑上所用显卡,intel集成显卡,根据系统内存计算显存。
这个例子在超过4G内存电脑上的问题:
例子在我的电脑上跑有如下提示:
This system does not meet the following minimum requirements:
Minimum memory of 128 megabytes
Minimum video memory of 64 megabytes
其原因是我电脑为win7(64位),内存为8G,内存计算有问题,如下修改即可
INT64 SysMemory;//DWORD SysMemory;
INT64 tmpMemSize = (INT64)ms.dwTotalPhys+(16*1024*1024-1);
SysMemory = ((tmpMemSize & ~(16*1024*1024-1) ) >> 20);
//SysMemory = (((ms.dwTotalPhys+(16*1024*1024-1)) & ~(16*1024*1024-1) ) >> 20);
Requirements:所需配置
propertyset:预定义的设置,通过名字引用,例子文件中没有
AudioVendor:音频设置
DisplayVendor:视频设置,也是这个例子中最主要的部分,根据不同的显卡制造商(VendorId),不同的设备号(DeviceId),然后根据驱动版本号、操作系统版本等信息做一些设置。
上面提到的设置通过调用游戏中的相应接口设置,保存在CONFIGTABLE ConfigTable中
比如
例1
3DFX
DisplayVendor = 0x121a "3dfx"
0x8626 = "Rush (Macronix)"
UnsupportedCard
break
其含义为
3DFX制作的显卡,如果设备号为0x8626,则不支持当前游戏
例2
DisplayVendor = 0x8086 "Intel"
Unknown = "Unknown"
UMA
这个是我电脑上所用显卡,intel集成显卡,根据系统内存计算显存。
这个例子在超过4G内存电脑上的问题:
例子在我的电脑上跑有如下提示:
This system does not meet the following minimum requirements:
Minimum memory of 128 megabytes
Minimum video memory of 64 megabytes
其原因是我电脑为win7(64位),内存为8G,内存计算有问题,如下修改即可
INT64 SysMemory;//DWORD SysMemory;
INT64 tmpMemSize = (INT64)ms.dwTotalPhys+(16*1024*1024-1);
SysMemory = ((tmpMemSize & ~(16*1024*1024-1) ) >> 20);
//SysMemory = (((ms.dwTotalPhys+(16*1024*1024-1)) & ~(16*1024*1024-1) ) >> 20);
相关文章推荐
- DirectX Sample-ConfigSystem中采用配置文件进行游戏设置
- 配置maven下载jar包源码文件、拷贝依赖jar到lib包、设置编译时jdk版本、根据不同环境采用不同配置
- php的默认配置文件在 /usr/local/apache2/conf/php.ini,通过为了使你的web更安全,我们需要对php.ini进行一些设置!
- unity中使用配置文件进行参数设置
- linux下 pppoe通过直接设置配置文件方式进行拨号
- cocos2d-x-3.2塔防游戏开发3:动态的从配置文件中设置怪物的关卡,总波数,初始化钱数
- 对vim配置文件/etc/vimrc进行简单设置
- 通过xml配置文件方式来进行输入校验
- java IO 使用Properties设置键值对配置信息 写入文件和从文件中读取
- 文件服务器的详细配置之共享权限与NTFS权限的设置
- 在STS(SpringSource Tool Suite )工具中,设置maven的配置文件
- haproxy代理设置及配置文件详解
- unbuntu 12.04 英文版本下 fcitx 配置文件--无图形界面 改为 有图形界面 参数设置
- hbase进行osgi bundle化以后配置文件加载问题
- openFileOutput 文件属性设置、主动配置文件的可读写属性及其实现方式
- IIS部署ASP.NET网站后提示只有在配置文件或 Page 指令中将 enableSessionState 设置为 true 时,才能使用会话状态...
- nginx 流媒体 flv 播放 以及上传大小 配置文件设置
- php 配置文件php.ini文件的动态设置与获取
- log日志文件 关于mm.cfg日志配置文件的设置
- MySQL配置文件my.cnf设置