为什么Device device=(Device)sender会报错

zhanhuai1 2008-07-09 07:05:46
初学direct编程,按Tom Miller的<<3D游戏编程入门经典>>写代码
书中说要向OnCreateDevice方法中添加一段加载网格数据的代码,如下:
ExtendedMaterial[] mtrls;
levelMesh=Mesh.FromFile("tiger.x",MeshFlags.Managed,device,out mtrls);
if((mtrls!=null)&&(mtrls.Length>0))
{
levelTextures=new Texture[mtrls.Length];
for(int i=0;i<mtrls.Length;i++)
{
levelTextures[i]=TextureLoader.FromFile(device,mtrls[i].TextureFilename);
}
}
本来OnCreateDevice方法中是空的,所以我在上面的代码前面又加了一句Device device=(Device)sender;
我觉得这句肯定是必需的吧,而且编译也没错
但程序运行不起来,报错说创建设备失败,说指定转换无效
请高人指定.
...全文
92 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhanhuai1 2008-07-09
  • 打赏
  • 举报
回复
但示例程序里都有Device device=(Device)sender;来转换的
江城老温 2008-07-09
  • 打赏
  • 举报
回复
因为sender不是Device类型。

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧