Need call beginScene before rendering

做东西时,出现没有绘制结果的情况。很奇怪,查看后,发现确实没有绘制物体。

稍作修改后,出现了另一个问题。在输出窗口“Need call beginscene before rendering”

但是,明明调用了SUCCEEDED(dev->BeginScene()),惆怅了一晚。第二天,读了下代码,

发现,我创建了2个Device对象,但是不是2个Device对象就会出现这个错误呢?

于是,再做下试验。

在新工程中,把代码粘贴到里面。结果,创建多个Device也没有出现这个错误。

这说明我的方向是错误的。

马上再回到代码里面,查看被我注释的代码。最后才发现,原来我的对象单体模式,在构建时候,传入了一个Device,

但是后面,我又调用了一次构建函数,但已经构建了实体,所以只返回了原实体的指针,并没有重新创建。

问题就出在这里,这2次构建的时候,分别传入了不同的Device。但我在BeginScene的时候,用的是第二次的Device,

绘制用的是第一次的Device.因此就报错了。- = 强大的调试器。

对于这个简单的错误,有3点要注意。

1。要查看是不是真的在代码的绘制前,调用了BeginScene。而不是怀疑编译器。

2。当然也有时,需要全部重新编译下。可能有编译版本不正确。

3。查看BeginScene的dev和Render的Dev是不是同一个(重要!!气人啊!!)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值