D3D9

创建一个空纹理,当返回 S_OKppTexture 纹理对象指针不为 NULL 时,则表示该函数调用成功。

HRESULT D3DXCreateTexture(
_In_  LPDIRECT3DDEVICE9  pDevice,
_In_  UINT               Width,
_In_  UINT               Height,
_In_  UINT               MipLevels,
_In_  DWORD              Usage,
_In_  D3DFORMAT          Format,
_In_  D3DPOOL            Pool,
_Out_ LPDIRECT3DTEXTURE9 *ppTexture
);
HRESULT D3DXCreateTextureFromFileInMemory(
_In_  LPDIRECT3DDEVICE9  pDevice,
_In_  LPCVOID            pSrcData,
_In_  UINT               SrcDataSize,
_Out_ LPDIRECT3DTEXTURE9 *ppTexture
);
HRESULT D3DXCreateTextureFromFileInMemoryEx(
_In_    LPDIRECT3DDEVICE9  pDevice,
_In_    LPCVOID            pSrcData,
_In_    UINT               SrcDataSize,
_In_    UINT               Width,
_In_    UINT               Height,
_In_    UINT               MipLevels,
_In_    DWORD              Usage,
_In_    D3DFORMAT          Format,
_In_    D3DPOOL            Pool,
_In_    DWORD              Filter,
_In_    DWORD              MipFilter,
_In_    D3DCOLOR           ColorKey,
_Inout_ D3DXIMAGE_INFO     *pSrcInfo,
_Out_   PALETTEENTRY       *pPalette,
_Out_   LPDIRECT3DTEXTURE9 *ppTexture
);

D3DXCreateTextureFromFileInMemoryD3DXCreateTextureFromFileInMemoryEx 函数下断(注意看纹理对象指针 ppTexture 是否和上面创建的纹理对象是否一致),一般就可以把内存中的图像保存下来了。上面三个函数参数具体含义,请自行查看 https://docs.microsoft.com/zh-cn/windows/desktop/api/_direct3d9/ 官网。

OpenGL


void glGetTexImage(
GLenum target,
GLint level,
GLenum format,
GLenum type,
GLvoid * pixels
); void glGetnTexImage(
GLenum target,
GLint level,
GLenum format,
GLenum type,
GLsizei bufSize,
void *pixels
); void glGetTextureImage(
GLuint texture,
GLint level,
GLenum format,
GLenum type,
GLsizei bufSize,
void *pixels
);

具体参数请自行参考OPENGL API:https://www.khronos.org/registry/OpenGL-Refpages/gl4/

最新文章

  1. UserMapper.selectByPrimaryKey-Inline 报错的解决办法
  2. PHP使用mail()函数发送邮件流程以及注意事项
  3. WS103C8例程——串口2【worldsing笔记】
  4. 速冻熟食制品的QS的申请办法
  5. 图论 BZOJ 3669 [Noi2014]魔法森林
  6. [置顶] 轻量级语言Lua入门
  7. Objective-C基础之简析深浅copy
  8. Angular 6的新特性介绍
  9. mssql sqlserver isnull coalesce函数用法区别说明
  10. 【转】Redis学习笔记(五)如何用Redis实现分布式锁(2)—— 集群版
  11. 01、Spar内核架构原理
  12. Linux下OSG的编译和安装以及遇到的问题
  13. Duplicate复制数据库并创建物理StandBy(spfile+不同实例名)
  14. 基本数据类型int,bool,str
  15. Python 之 cas-clinet
  16. day 87-1 Vue学习七之vue-cookie
  17. Java:多线程,线程池,用Executors静态工厂生成常用线程池
  18. spring AOP底层原理实现——jdk动态代理
  19. 行人检测4(LBP特征)
  20. (STM32F4) Timer Compare mode 操作

热门文章

  1. 工作总结 Ajax.BeginForm 默认action
  2. EMQ ---100万线连接测试说明
  3. vue 父子组件属性传递
  4. Atitit  OOCSS vs bem
  5. Atitit.协议的转换smb2http 原理
  6. OSI与TCP/IP你了解多少?
  7. Python内置函数之ascii()
  8. placehoder修改
  9. c++ why doesn't c++ allow rebinding a reference ?
  10. vue的计算属性