游戏开发论坛

 找回密码
 立即注册
搜索
查看: 1621|回复: 2

请教ID3DXEffectCompiler的使用方法

[复制链接]

83

主题

169

帖子

202

积分

中级会员

Rank: 3Rank: 3

积分
202
发表于 2009-8-19 10:40:00 | 显示全部楼层 |阅读模式
使用
HRESULT ID3DXEffectCompiler::CompileEffect(
  DWORD Flags,
  LPD3DXBUFFER * ppEffect,
  LPD3DXBUFFER * ppErrorMsgs
);
可以把一个效果编译到ppEffect中但是要在主程序中使用效果就要依靠"ID3DXEffect"接口来实现。
ID3DXEffectCompiler::CompileEffect中编译好的是ID3DXBUFFER而需要的是ID3DXEffect,怎样才能把ID3DXEffectCompiler::CompileEffect编译好的东西转换为ID3DXEffect。

59

主题

404

帖子

404

积分

中级会员

Rank: 3Rank: 3

积分
404
发表于 2009-8-19 12:44:00 | 显示全部楼层

Re:请教ID3DXEffectCompiler的使用方法

ID3DXEffectCompiler::CompileEffect出来的ppEffect使用D3DXCreateEffect做出ID3DXEffect对象

HRESULT D3DXCreateEffect(
  LPDIRECT3DDEVICE9 pDevice,
  LPCVOID pSrcData,  // 这里调用ppEffect->GetBufferPointer()
  UINT SrcDataLen,   // 这里调用ppEffect->GetBufferSize()
  CONST D3DXMACRO * pDefines,
  LPD3DXINCLUDE pInclude,
  DWORD Flags,
  LPD3DXEFFECTPOOL pPool,
  LPD3DXEFFECT * ppEffect, // ID3DXEffect不是出来了呃
  LPD3DXBUFFER * ppCompilationErrors
);

83

主题

169

帖子

202

积分

中级会员

Rank: 3Rank: 3

积分
202
 楼主| 发表于 2009-8-20 15:11:00 | 显示全部楼层

Re:请教ID3DXEffectCompiler的使用方法

非常感谢 flyue 的回答
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-8-7 16:24

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表