OpenGL与vs编程——error C2440: “glMaterialfv”: 无法从“GLfloat”转换为“const GLfloat *”
2015-04-17 16:12
405 查看
void setMaterial(const GLfloat mat_diffuse[4],GLfloat mat_shininess)
{
static const GLfloat mat_specular[]={0.0f,0.0f,0.0f,1.0f};
static const GLfloat mat_emission[]={0.0f,0.0f,0.0f,1.0f};
glMaterialfv(GL_FRONT,GL_AMBIENT_AND_DIFFUSE,mat_diffuse);
glMaterialfv(GL_FRONT,GL_SPECULAR,mat_specular);
glMaterialfv(GL_FRONT,GL_EMISSION,mat_emission);
glMaterialfv(GL_FRONT,GL_SHININESS,mat_shininess);
}
这个函数用来设置材质,然后最后一个函数出了问题error C2440: “glMaterialfv”: 无法从“GLfloat”转换为“const GLfloat *”,请问怎么解决呢?
解决思路:glMaterialfv(GL_FRONT,GL_SHININESS,&mat_shininess);
{
static const GLfloat mat_specular[]={0.0f,0.0f,0.0f,1.0f};
static const GLfloat mat_emission[]={0.0f,0.0f,0.0f,1.0f};
glMaterialfv(GL_FRONT,GL_AMBIENT_AND_DIFFUSE,mat_diffuse);
glMaterialfv(GL_FRONT,GL_SPECULAR,mat_specular);
glMaterialfv(GL_FRONT,GL_EMISSION,mat_emission);
glMaterialfv(GL_FRONT,GL_SHININESS,mat_shininess);
}
这个函数用来设置材质,然后最后一个函数出了问题error C2440: “glMaterialfv”: 无法从“GLfloat”转换为“const GLfloat *”,请问怎么解决呢?
解决思路:glMaterialfv(GL_FRONT,GL_SHININESS,&mat_shininess);
相关文章推荐
- VS2013 error C2664: “FILE *fopen(const char *,const char *)”: 无法将参数 1 从“LPCTSTR”转换为“const char *”
- error C2664: strcpy : 不能将参数 2 从 CString 转换为 const char *;error C2440: “初始化”: 无法从“const wchar_t [15]”
- vs2013之OpenGL错误: 无法打开包括文件:“GL/glut.h”: No such file or directory和OpenGL程序无法启动此应用程序,因计算机中丢失glut32.dll
- VS2013之调用opengl打开obj文件时头文件错误: 无法打开包括文件:“gl/glut.h”: No such file or directorys
- error C2440: “=”: 无法从“CString”转换为“const char *”
- 解决error C2440: “初始化”: 无法从“std::_List_const_iterator<_Mylist>”转换为“std::_List_iterator<_Mylist>”
- error C2440: “初始化”: 无法从“const char *”转换为“char *”
- error C2664,error C2440: vs2010转到vs2015时候出现多条以上错误,共同点是 无法从“LPCWSTR”转换为“LPCSTR”
- 解决VS在进行OpenGL编程中出现“无法启动此程序,因为计算机中丢失OPENGL.dll”
- error C2440: “初始化”: 无法从“const char *”转换为“ATL::CStringT<BaseType,StringTraits>”
- error C2664: strcpy : 不能将参数 2 从 CString 转换为 const char *;error C2440: “初始化”: 无法从“const wchar_t [15]”
- error C2440: "reinterpret_cast":无法从"NMHDR*"转换为"NMITEMACTIVATE"
- VS2013中无法从XXX转换为“LPCWSTR”问题的解决
- VS2012下基于Glut OpenGL GL_CULL_FACE示例程序:
- error C2440: “static_cast”: 无法从“void (__thiscall CChatDlg::* )(WPARAM,LPARAM)”转换为“LRESULT (__thisca
- 不能将参数 2 从“const char *”转换为“LPCWSTR” vs 2010解决
- error C2440 “static_cast” 无法从“void (__thiscall CPppView )(void)”转换为“LRESULT (__thiscall
- opengl头文件:错误: 无法打开包括文件:“gl/glut.h”: No such file or directory
- OpenGLShader 编程系列- glUniform*的使用
- error C2440: “类型转换”: 无法从“unsigned char”转换为“CString”