error X3025: global variables are implicitly constant, enable compatibility mode to allow modification

error X3025: global variables are implicitly constant, enable compatibility mode to allow modification

全局变量是extern也是常量,在shader里面不能修改,但可以从宿主程序里改。

以前的编译器没有强制这一点,现在新的强化了这一要求。

把extern

改成static运行成功

Feedback

# re:
error X3025  回复  更多评论  

2008-12-17 10:06 by

Axif

我把extern 改成static了,但是还是出现相同的错误 555555555

# re:
error X3025  回复  更多评论  

2009-04-23 22:57 by

Leaf

我也遇到了这个问题谢谢!

# re: error X3025  回复  更多评论  

2010-02-02 14:43 by

路人乙

将D3DXCompileShaderFromFile的第六个参数改为D3DXSHADER_ENABLE_BACKWARDS_COMPATIBILITY即可

# re: error X3025  回复  更多评论  

2010-04-12 17:10 by

river

@路人乙

这个方法好

# re: error X3025  回复  更多评论  

2010-09-09 14:34 by

好看的电影

这里是拯救帖

# re: error X3025  回复  更多评论
 

2011-06-11 14:45 by

Scarlettlee

@路人乙

这个方法很好

点赞