D3D加载纹理的步骤之点精灵加载2D图片(2)
由于在(1)中写的代码文字比较长,所以分了两篇文章写。
下面就是讲一下怎么用点精灵加载图片吧。
使用这项技术的前提是:系统是否支持点精灵技术。
点精灵j技术是指能够在一个点上显示一幅图片。
1.先创建点金灵对象和纹理缓冲区对象
LPD3DXSPRITE pSprite = NULL;
LPDIRECT3DTEXTURE9 pTexture = NULL;
2.初始化点精灵对象
D3DXCreateSprite( pd3dDevice, &pSprite );
3.加载图片,由pTexture储存
D3DXCreateTextureFromFile(pd3dDevice, "chess3.png", &pTexture);//chess3.png为文件地址
4.进行绘制
if ( SUCCEEDED( pSprite->Begin(D3DXSPRITE_ALPHABLEND) ) )
{
RECT rt;
rt.left = -10;
rt.top = 0;
rt.right = 78;
rt.bottom = 78;
pSprite->Draw(pTexture,&rt, NULL, NULL, 0xffffffff); //第二个参数是决定显示的位置。第三个参数是设置图片的中心点
pSprite->End();
}
//看完是不是感觉步骤比较容易,的确会比第一种通过顶点缓冲区区贴图少了一些步骤。
//推荐使用D3DXCreateTextureFromFileEx,因为D3DXCreateTextureFromFile会存在拉伸变形的效果。
//然后就是记得最后释放点精灵对象
D3D加载纹理的步骤之点精灵加载2D图片(2)相关推荐
- 使用 wxImage 为 OpenGL 加载纹理
使用 wxImage 为 OpenGL 加载纹理 使用 wxImage 为 OpenGL 加载纹理 使用 wxImage 为 OpenGL 加载纹理 您可以使用 wxImage 为 OpenGL 加载 ...
- 手机斗鱼tv显示与服务器通讯失败,热门手机知识:斗鱼直播加载失败如何解决?解决斗鱼直播加载失败操作步骤...
手机这种移动通讯设备闲置已经相当的普及了,大多数的手机用户,对手机的相关知识都不了解.现在各种各样的数码设备在我们的生活当中几乎可以说是无处不在,平时我们使用的手机,IP,电脑等等这些都属于数码设备, ...
- 16. OPenGL加载纹理贴图
1. 说明 在OPenGL中,三维物体模型并非只能渲染单一颜色,还可以通过纹理贴图的方式进行渲染,增强物体模型的渲染效果,本篇文章简单讲解给一个矩形添加纹理图片效果. 效果展示: 纹理数据加载 2. ...
- cocos2dx 3.3 异步加载纹理
这里以3d场景加载为例,2d情况类似. 先同步加载模型数据和尺寸缩小了100倍的贴图,创建mesh.然后异步加载所有精细纹理并每加载完一个就替换一个,并进入场景. 如此做法的效果是当刚进入场景时看到的 ...
- OpenGL LoadTexture加载纹理的实例
OpenGL LoadTexture加载纹理 先上图,再解答. 完整主要的源代码 源代码剖析 先上图,再解答. 完整主要的源代码 #define USE_GL3W #include <vermi ...
- 动态加载和静态加载及其编译步骤
在类unix操作系统中,驱动加载方式一般分为:动态加载和静态加载,下面分别对其详细论述. 一.动态加载 动态加载是将驱动模块加载到内核中,而不能放入/lib/modules/下. 在2.4内核 ...
- opengl es java_java – 在Android OpenGL ES App中加载纹理
1)您应该根据需要分配尽可能多的纹理名称.一个用于您正在使用的每个纹理. 加载纹理是一项非常繁重的操作,会使渲染管道停顿.所以,你永远不应该在游戏循环中加载纹理.您应该在呈现纹理的应用程序状态之前具有 ...
- OpenGL加载纹理glGenTextures——内存优化(OpenGL内存泄漏)
前言 先上图看我程序在加载纹理时,内存泄漏情况: 正常内存大小 5分钟内存泄漏情况 因为程序一直在接收二维数组(图像像素数据)然后实时绘制到界面,所以会一直加载纹理图像,OpenGL产生纹理id函数g ...
- lua/cocos加载动画以及可以使用加载纹理的方式来替换图片并且加载个人制作的艺术字体(fnt字体)
1.加载spine/json(ExportJson)骨骼动画 现在用的比较多 local spineAnim = sp.SkeletonAnimation:create("base/res/ ...
最新文章
- 怎么学python-初学者如何学习Python?掌握这17个实用小技巧快速入门!
- Document Builder: Error message No virus scan provider available for scanner group CXP_VSCAN
- 数据库(二)tab补全功能,使数据库支持简体中文,日志管理,备份脚本
- 小学计算机课评课用语,信息技术评课心得
- EasyUI:easyui-combogrid(设置默认值)
- TensorFlow 教程 --进阶指南--3.8使用GPU
- 中国慕课java_回收的吸油毡通常应放置一边以备再次使用。
- 一分钟看懂mysql_冬天发财树“最怕”它,遇上就烂根,一分钟看懂就能养好
- C++如何测试dll_Windows x86 Shellcode开发:寻找Kernel32.dll地址
- FPGA定点数字信号处理技巧(一)
- 电机选型及校核方法总结
- 在vue中简单使用Luckysheet
- C++编程第一课《编程是一门技术——认识C++》
- ubuntu如何安装lsb_release工具?
- 国家标准免费下载网站大全
- 简单明了实现Java地图小程序项目
- 亚马逊旺季前的狂风暴雨
- 经典软件工程师面试题
- 样品制备丨G-Biosciences Tube-O-CONCENTRATOR 方案
- 量子前沿英雄谱|斯坦福大学应用物理学家Martin Fejer