CodeSampler DX9 Full-screen initialization
D3D新手,请轻拍。
最近在学CodeSampler上的DX9范例。编译环境是VS2012。搭编译环境用了一两天,另行开文吐槽(有时间的话)。
本文讲讲Full-screen initialization里面的一个问题。
程序运行到第288行时报错:
g_pd3dDevice->Clear( , NULL, D3DCLEAR_TARGET | D3DCLEAR_ZBUFFER,
D3DCOLOR_COLORVALUE(0.0f,1.0f,0.0f,1.0f), 1.0f, );
因为g_pd3dDevice此时是空指针。
所以单步调试,发现init中有这样几行:
// Does this adapter mode support a mode of 640 x 480?
if( d3ddm.Width != || d3ddm.Height != )
continue; // Does this adapter mode support a 32-bit RGB pixel format?
if( d3ddm.Format != D3DFMT_X8R8G8B8 )
continue; // Does this adapter mode support a refresh rate of 75 MHz?
if( d3ddm.RefreshRate != )
continue;
d3ddm是显示器支持的模式的枚举,包括分辨率宽高,刷新率和format(暂时不知是啥)。我的显示器上一共有13种。
但是这几行检测强制要求显示器支持640X480,75MHZ的模式。
LZ的显示器没有完全符合的模式
于是在后面的代码里
if( bDesiredAdapterModeFound == false )
{
// TO DO: Handle lack of support for desired adapter mode...
return;
}
init函数直接返回了。而初始化g_pd3dDevice的代码还在后面,于是它就没被初始化了。
o(╯□╰)o这代码居然不报错而是直接return。
解决方案:上面的75改成60(即LZ的显示器支持的一种模式),运行成功。
CodeSampler DX9 Full-screen initialization的更多相关文章
- man screen
http://www.gnu.org/software/screen/manual/screen.html Screen User's Manual Next: Overview, Previous: ...
- 简单的OO ALV小示例
OO ALV即面向对象ALV,是在屏幕上显示的一种可以自定义大小的ALV.它区别普通ALV的优点是可以多个ALV出现在同一个屏幕,也可以同其他屏幕元素同时出现在同一个屏幕. 示例展示: 1. 进入实用 ...
- SAP事件 Event Flow(转载)
1 报表过程事件 报表过程事件是在报表运行过程中由系统自动控制,按照一定次序被触发的事件,其目的是从数据库中选择数据并整理,准备进行列表输出.这些事件从报表程序启动开始就被系统顺序触发,现分述如下: ...
- ALV报表——表头实现
ABAP实现ALV表头的DEMO: 运行效果: 代码: *********************************************************************** ...
- EasyPrtSc sec[1.2] 发布!
//HOMETAG #include<bits/stdc++.h> namespace EasilyPrtSc{ //this namespace is for you to be mor ...
- 列表屏幕(List Screen)
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- 选择屏幕(Selection Screen)
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- What is the Database Initialization Parameter That is Associated to an ORA-32004 Error ?
APPLIES TO: Oracle Database - Enterprise Edition - Version 9.2.0.1 to 11.2.0.3 [Release 9.2 to 11.2] ...
- Windows Forms Application Creation and Initialization
Windows Forms Application Creation and Initialization This topic details the steps performed after a ...
随机推荐
- Day01 -Class类别 精选面试题
30天修炼完成Ruby精选面试题! 我决定从学习Ruby on Rails开始着手!鼓励自己在短期间内专心学习与产出知识,为转职奠定良好的基础. A.首先:找寻方向,决定主题 我想很多人的状况都跟我一 ...
- http缓存策略-nginx只缓存js和css不缓存html
使用缓存,是提升web性能最重要的方式之一. 在开发单页面应用的时候,大量的单静态资源引用都是依赖于html这个文件的.例如: <!doctype html> <html lang= ...
- 从零开始学spring cloud(八) -------- Eureka 高可用机制
一.Eureka高可用机制介绍 Eureka服务器没有后端存储,但注册表中的服务实例都必须发送心跳以使其注册保持最新(因此可以在内存中完成). 客户端还有一个Eureka注册的内存缓存(因此,他们不必 ...
- 20164319 刘蕴哲 Exp2 后门原理与实践
[后门概念] 后门就是不经过正常认证流程而访问系统的通道. 特指潜伏于操作系统中专门做后门的一个程序,而“坏人”可以连接这个程序远程执行各种指令. (概念和木马有重叠) [学习内容] 使用nc实现wi ...
- Django 的认识,面试题
Django 的认识,面试题 1. 对Django的认识? #1.Django是走大而全的方向,它最出名的是其全自动化的管理后台:只需要使用起ORM,做简单的对象定义,它就能自动生成数据库结构.以及全 ...
- handsontable 常用 配置项 笔记
import React, { Component } from 'react'; import HotTable from 'react-handsontable'; import Handsont ...
- mysql group by using filesort优化
原join 连接语句 SELECT SUM(video_flowers.number) AS num, video_flowers.flower_id, flowers.title, flowers. ...
- Python内置的服务器的使用
cd 到某一文件 Python内置的服务器: E:\myObject\office\netObject\new-gcms> python -m SimpleHTTPServer 8888 如果是 ...
- import os, glob, fnmatch--Python os/glob/fnmatch主要函数总结
auther: Lart date: 2019-01-17 update: 2019-01-18 09:55:36 --- import os, glob, fnmatch 针对某些操作, 官方推荐这 ...
- identityserver4 代码系列
链接:https://pan.baidu.com/s/1ePLwUxGpIPObwA8nnfDT9w 提取码:gr0x