direct3d-Direct3D中 lpd3dDevice 的问题

问题描述

Direct3D中 lpd3dDevice 的问题
lpd3dDevice->CreateVertexBuffer

里面定义的顶点为神马必须是浮点类型

整型为什么没有作用啊??

typedef struct _customvertex
{
float x;
float y;
float z;
float rhw;
DWORD color;
}CUSTOMVER; //自定义一个顶点类型

CUSTOMVER CustomVertex[6] = {0};

int i;for(i=0;i<6;i++){    CustomVertex[i].x = rand() % 800;//(800.0*rand()/(RAND_MAX+1.0));    CustomVertex[i].y = rand() % 600;//(600.0*rand()/(RAND_MAX+1.0));    CustomVertex[i].z = 0;    CustomVertex[i].rhw = 1;    CustomVertex[i].color = D3DCOLOR_XRGB(rand() % 256 rand() % 256 rand() % 256);}如果将结构体中浮点型改为int型就不起作用了为什么??
时间: 2025-01-28 09:25:16

direct3d-Direct3D中 lpd3dDevice 的问题的相关文章

最简单的视音频播放示例3:Direct3D播放YUV,RGB(通过Surface)

上一篇文章记录了GDI播放视频的技术.打算接下来写两篇文章记录Direct3D(简称D3D)播放视频的技术.Direct3D应该Windows下最常用的播放视频的技术.实际上视频播放只是Direct3D的"副业",它主要用于3D游戏制作.当前主流的游戏几乎都是使用Direct3D制作的,例如<地下城与勇士>,<穿越火线>,<英雄联盟>,<魔兽世界>,<QQ飞车>等等.使用Direct3D可以用两种方式渲染视频:Surface和

Direct3D 9.0 SDK 文档(中文版)

版权声明: 此处提供的所有Direct3D 9.0 SDK 文档(中文版)的版权属于www.gesoftfactory.com及其所有人.在保持文档原貌(即:不对文档的内容做任何更改)的前提下,任何人可以免费下载和使用本文档,但不得以任何形式转载本文档的内容.在未经许可的情况下,禁止任何人/实体将本文档用于商业或赢利目的.如果需要在别处提供指向本站的链接,请事先用电子邮件联系并获得许可.www.gesoftfactory.com及其所有人保留对本文档的所有权利. 本页面(http://www.g

Direct3D9初级教程

前言: 这篇教程是为初学者准备的,只要会简单的VC++编程以及一点立体几何的基础知识即可.通过它,可以了解到Direct3D的基本概念,学会绘制简单的几何图形,并掌握光源.材质和纹理的基本用法. 3D绘图的实质就是在二维计算机屏幕上创建三维幻觉,为此要用到一些数学变换来建模和处理几何图形.我将尽可能用通俗易懂的语言来解释这些变换及其用法,避免涉及复杂的数学知识. 1 开发环境 本文选用VC++ 6.0做语言环境,建议安装Service Pack5补丁包.为了创建Direct3D程序,需要从微软网

Cocos2d-JS坐标系

在图形图像和游戏应用开发中坐标系是非常重要的,我们在Android和iOS等平台应用开发的时候使用的二维坐标系它的原点是在左上角的.而在Cocos2d-JS坐标系中它原点是在左下角的,而且Cocos2d-JS坐标系又可以分为:世界坐标和模型坐标.UI坐标UI坐标就是Android和iOS等应用开发的时候使用的二维坐标系.它的原点是在左上角的. UI坐标 UI坐标原点是在左上角,x轴向右为正,y轴向下为正.我们在Android和iOS等平台使用的视图.控件等都是遵守这个坐标系.然而在Cocos2d

三维图形概述

原文 三维图形概述 通过 Windows Presentation Foundation (WPF) 中的三维功能,开发人员可以使用标记代码和程序代码对三维图形进行绘制.转换和动画处理. 开发人员可以合并二维和三维图形以创建丰富的控件,提供复杂的数据图解,或者增强用户对应用程序界面的体验.WPF 中的三维支持并非旨在提供功能齐全的游戏开发平台.本主题概述了 WPF 图形系统中的三维功能.     本主题包括下列各节. 二维容器中的三维 三维坐标空间 照相机和投影 模型和网格基元 向模型应用 Ma

direct3d-Hook Direct3D 中的Present函数时的同步问题

问题描述 Hook Direct3D 中的Present函数时的同步问题 我通过修改Present函数的前5个字节Hook该函数,但是要怎么保证在修改这5个字节的时间内,其他线程不会执行到这里? 解决方案 直接启动D3D的时候Hook,也就是说先Hook他创建D3DSurface等之类的设备函数,然后再Hook,直接前置Hook,一般D3D初始化的时候,这函数肯定是不会调用的 解决方案二: hook direct3d的Present时的注意事项

在direct3d中如何使用欧拉角展示飞行器的3d姿态

问题描述 现在是用得一个mpu6050输出的欧拉角,希望能够3D显示姿态,但是这个3d显示的程序不知道怎么入手,有没有相关的教程或者实例 解决方案 解决方案二:没搞过这玩意3D效果,首先要有三维的点集合咯,可以用三维数组.解决方案三:自己顶个呀,有没有人呀,讲一下c#里面怎么旋转物体也好

3D编程:The Direct3D 11 Graphics Pipeline

Direct3D 11图形管线 个人电脑一般都有两个处理器:CPU和GPU,你需要对每一个处理器编写代码.这两个部件拥有完全不同的架构和指令集.在图形编程中,你需要对两个处理器都都编写软件,对于CPU应用程序使用通用的语言,比如C++,对于GPU则使用HLSL.DirectX是系统之间的桥梁.大部分关于图形编程的文章都集中讲述CPU部分或者GPU部分,但是这两部分都是非常难懂的.本书两个部分都会讲解.         在DirectX里面我们主要学习Direct3D.简单来说,Direct3D是

Win7系统Direct3d功能不可用怎么办

  步骤如下: 1.首先,点开开始按钮,在搜索框里输入"dxdiag". 2.会搜索出一大堆东西,没关系的,只要打开最上边的"dxdiag.exe"这个程序就行了. 3.Dxdiag的中文名叫做DirectX诊断工具,打开后界面如下图: 4.这时我们在主界面上点击"显示"选项卡(如上图红圈所示),就能看到关于系统中所有与图形有关的内容了(如下图): 5.正常的话,下面"DirectX功能"框里的DirectDraw加速.Dir