上一页 1 2 3 4 5 6 7 8 9 ··· 12 下一页
摘要: 1.顶点缓存和索引缓存一个顶点缓存是一个包含顶点数据的连续内存空间;一个索引缓存是一个包含索引数据的连续内存空间。顶点缓存用接口IDirect3DVertexBuffer9表示;索引缓存用接口IDirect3DIndexBuffer9表示。1.1创建顶点缓存和索引缓存HRESULT IDirect3DDevice9::CreateVertexBuffer( UINT Length, //为缓存分配的字节数 DWORD Usage, //指定如何使用缓存的附加属性,0表明无需附加属性 DWORD FVF, //存储在顶点缓存中的灵活顶点格式 D3DPOOL Pool, //容纳缓存的内存池 ID 阅读全文
posted @ 2014-04-08 16:39 hometown 阅读(282) 评论(0) 推荐(0) 编辑
摘要: 绘制流水线的功能是,在给定3D场景和指定观察方向的虚拟摄像机的几何描述时,创建2D图像。1.模型表示1.1场景是物体或模型的集合,任何物体都可以用三角形网格逼近表示。在Direct3D中,顶点除了包含空间信息外,还有其他属性(如颜色,法线等等)。Direct3D赋予了我们定义顶点格式的自由。(1)首先创建顶点数据的结构体;(2)然后用灵活顶点格式(FVF)的组合来描述顶点的结构。【灵活顶点描述中的顺序必须和顶点数据的结构体中顺序一致】struct Vertex { Vertex(); Vertex(float x,float y,float z) { _x=x;_y=y;_z=z; } flo 阅读全文
posted @ 2014-04-08 11:27 hometown 阅读(820) 评论(0) 推荐(0) 编辑
摘要: 1.Direct3D概述Direct3D是一套底层图形API,借助该API,我们能够利用硬件加速功能来绘制3D场景。设备制造商将其产品支持的全部功能都实现到HAL中。1.1 Direct3D提供了参考光栅设备(REF设备),它以软件运算方式完全支持Direct3D API。REF速度缓慢,在测试以外的其他环节都不适用。1.2 D3DDEVTYPE枚举类型 在程序中HAL设备用值D3DDEVTYPE_HAL来表示,REF设备用值D3DDEVTYPE_REF来表示。2.COM:创建COM接口时不可以使用new关键字,使用完用Realease方法释放。COM接口都有一个前缀I。3.预备知识3.1.表 阅读全文
posted @ 2014-04-07 15:51 hometown 阅读(277) 评论(0) 推荐(0) 编辑
摘要: error LNK2019: 无法解析的外部符号 _DirectDrawCreateEx@16,该符号在函数 "int __cdecl DD_Init(int,int,int)" (?DD_Init@@YAHHHH@Z) 中被引用在编译项目时,报错。如上所述。很明显链接时没有找到DirectDrawCreateEx函数所在的位置,少链接文件。执行方法,右键“创建的项目”->“属性”->“VC++目录”。分别对“包含目录”和“库目录”添加所安装DirectX sdk的Include路径。(本人电脑路径为C:\Program Files (x86)\Microsof 阅读全文
posted @ 2014-02-23 20:57 hometown 阅读(1144) 评论(0) 推荐(1) 编辑
摘要: ASCII码字符char,字符指针char*,字符数组char a[];例如:char a='A'; char* pC="beijing"; char aC[]="beijing";Unicode码字符wchar_t,字符指针wchar_t*,字符数组wchar_t a[];例如:wchar_t b='A'; wchar_t* pB=L"beijing"; //L代表long. wchar_t bC[]=L"beijing";通用码:维护单一原始码,既能按ASCII编译又能按Unic 阅读全文
posted @ 2013-12-17 16:33 hometown 阅读(316) 评论(0) 推荐(0) 编辑
摘要: 以上7中方式的代码实现:/* CString t1,t2; int a1,a2,a3; (GetDlgItem(IDC_EDIT1)->GetWindowTextW(t1)); (GetDlgItem(IDC_EDIT2)->GetWindowTextW(t2)); a1=_ttoi(t1); a2=_ttoi(t2); a3=a1+a2; TCHAR t3[10]; _itow_s(a3, t3,10,10); GetDlgItem(IDC_EDIT3)->SetWindowTextW( t3);*/ /*CString t1,... 阅读全文
posted @ 2013-12-17 12:14 hometown 阅读(308) 评论(0) 推荐(0) 编辑
摘要: 指向函数的指针必须包含指向函数的内存地址。声明方式:返回类型 (*Type)(参数)。有三部分组成:指向函数的返回类型;指针名称;指向函数的形参列表。注:赋给指针的函数必须与定义的指针类型相同。我们可以使用初始化语句来初始化函数指针,也可以是这个指针指向另一个函数。函数的指针可以作为参数,指针在不同的情况下指向不同的函数,这样使得具体使用的函数由调用程序决定。#include using namespace std;long sumA(long a,long b);long sumB(long x,long y);long sum(long x,long y,long (*pf)(long . 阅读全文
posted @ 2013-11-14 18:16 hometown 阅读(190) 评论(0) 推荐(0) 编辑
摘要: #include 主要是输入输出控制。Dec 十进制;hex 十六进制;oct 八进制;setw 设置宽度;setfill 设置填充值;setbase 将数字转换为n进制;setprecision 设置输出的位数;setiosflags 设置相关的标志表示(如下)。resetiosflags 清除指定的标志。setiosflags(ios::fixed) 固定的浮点显示setiosflags(ios::scientific) 指数表示setiosflags(ios::left) 左对齐setiosflags(ios::right) 右对齐setiosflags(ios::skipws) 忽略前 阅读全文
posted @ 2013-11-14 11:58 hometown 阅读(219) 评论(0) 推荐(0) 编辑
摘要: 要注意:同返回指针一样,永远不要从函数中返回局部变量的引用。double& lowest(double a[],int len){ int j=0; for(int i=1;ia[i]) { j=i; } } return a[j];}int main(void) { double arrayT[]={2.3,1.2,2.0,2.6,6.3}; int len=sizeof(arrayT)/sizeof(double); for(int i=0;i<len;i++) { cout<<... 阅读全文
posted @ 2013-11-13 17:47 hometown 阅读(317) 评论(0) 推荐(0) 编辑
摘要: stdarg.h 头文件,主要目的是让函数可以接受可变参数。va_list :用来保存宏va_arg与宏va_end所需信息。va_start :使va_list指向起始的参数va_arg :检索参数va_end :释放va_listva_copy : 拷贝va_list的内容double sum(int count,...){ if(count<=0) { return 0; } va_list arg_ptr; va_start(arg_ptr,count); double sum=0; for(double i=0;i<count;... 阅读全文
posted @ 2013-11-13 17:41 hometown 阅读(205) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 ··· 12 下一页