讨论广场 问答详情
GetString(GR_GL_VERSION)问题
我在看你呵呵笑 2024-07-05 16:36:32
178 评论 分享

请问third_party/skia/src/gpu/gl/GrGLAssembleInterface.cpp中

const char* verStr = reinterpret_cast<const char*>(GetString(GR_GL_VERSION));
    if (nullptr == verStr) {
        return nullptr;
    }
这部分代码是从哪里拿数据的啊,这里返回nullptr是什么原因导致的呢

178 评论 分享
写回答
全部评论(12)
1 楼

以上实现是为了获取OpenGL的版本,GetString往接口里面实现看,应该最终调用到OpenGL的API:glGetString,GR_GL_VERSION对应值0x1F02,到Mesa3D就是

#define GL_VERSION                        0x1F02

 

2024-07-05 16:52:30
2024-07-09 11:20:15
引用:“看mesa里没有定义glGetString函数啊,这是执行到哪里去了”
查阅官方文档,知道它是做什么的就可以了 https://learn.microsoft.com/zh-cn/windows/win32/opengl/glgetstring
2024-07-09 11:20:15
2024-07-08 15:40:58
引用:“上面的代码有GetString()的宏定义 #define GET_PROC_LOCAL(F) GrGL##F##Fn* F = (GrGL##F##Fn*)get(ctx, "gl" #F) GET_PROC_LOCAL(GetString); 展开就是 GrGLGetStringFn* GetString = (GrGLGetStringFn*)get(ctx, &quot”
看mesa里没有定义glGetString函数啊,这是执行到哪里去了
2024-07-08 15:40:58
2024-07-08 15:06:07
引用:“上面的代码有GetString()的宏定义 #define GET_PROC_LOCAL(F) GrGL##F##Fn* F = (GrGL##F##Fn*)get(ctx, "gl" #F) GET_PROC_LOCAL(GetString); 展开就是 GrGLGetStringFn* GetString = (GrGLGetStringFn*)get(ctx, &quot”
那我这里是不是有可能调用不到glGetString这个函数导致这里返回null了
2024-07-08 15:06:07
2024-07-08 14:41:04
引用:“能写一下third_party/skia中的GetString的调用流程吗,没追到”
上面的代码有GetString()的宏定义 #define GET_PROC_LOCAL(F) GrGL##F##Fn* F = (GrGL##F##Fn*)get(ctx, "gl" #F) GET_PROC_LOCAL(GetString); 展开就是 GrGLGetStringFn* GetString = (GrGLGetStringFn*)get(ctx, "glGetString")
2024-07-08 14:41:04
2024-07-08 10:30:02
引用:“RK3288芯片移植,之前好像有人做过”
能写一下third_party/skia中的GetString的调用流程吗,没追到
2024-07-08 10:30:02
2024-07-05 18:26:18
引用:“有分析的方向吗,代码量毕竟挺多的,现在就像大海捞针”
RK3288芯片移植,之前好像有人做过
2024-07-05 18:26:18
2024-07-05 17:53:58
引用:“看支持列表是支持的”
有分析的方向吗,代码量毕竟挺多的,现在就像大海捞针
2024-07-05 17:53:58
2024-07-05 17:48:38
引用:“是的,挺难的,看不懂,arm t76x系列应该没毛病啊”
看支持列表是支持的
2024-07-05 17:48:38
2024-07-05 17:42:55
引用:“看你最近都在弄Mesa3D的吧,在里面加点Log看下是否调用到”
是的,挺难的,看不懂,arm t76x系列应该没毛病啊
2024-07-05 17:42:55
2024-07-05 17:37:01
引用:“所以skia调用GetString,最后就是调用到mesa3d/src/mesa/main/getstring.c中的_mesa_GetString函数吗”
看你最近都在弄Mesa3D的吧,在里面加点Log看下是否调用到
2024-07-05 17:37:01
查看全部11条回复 
查看全部12条回答/评论