Skip to content

error: no function with name 'texture2DLod' #4

@zephryn

Description

@zephryn

When running a Supermodel build compiled on my Linux machine, I get this error at runtime:

0:110(14): error: no function with name 'texture2DLod'
0:111(14): error: no function with name 'texture2DLod'
0:112(14): error: no function with name 'texture2DLod'
0:113(14): error: no function with name 'texture2DLod'
0:116(5): warning: `p0q0' used uninitialized
0:116(14): warning: `p1q0' used uninitialized
0:116(35): warning: `p0q0' used uninitialized
0:117(5): warning: `p0q0' used uninitialized
0:117(14): warning: `p0q1' used uninitialized
0:117(35): warning: `p0q0' used uninitialized
0:119(14): warning: `p0q0' used uninitialized
0:120(14): warning: `p1q1' used uninitialized

error: linking with uncompiled/unspecialized shader

From there, as expected, there's no 3D output but the rest of the game runs.

It seems like newer GLSL versions have this function included, and when messing with OpenGL ES porting it worked fine after changing the vertexShaderR3D and fragmentShaderR3D's versions to 300 es (not accounting for the other changes that had to be made to get that to work), but there also seem to be extensions like GL_EXT_EGL_image_storage and GL_EXT_shader_texture_lod which might work without a version change if added to fragmentShaderR3D and changing texture2DLod calls to texture2DLodEXT but I couldn't get this solution to work. I'd get this error message from attempting to use the latter extension in particular:

warning: extension `GL_EXT_shader_texture_lod' unsupported in fragment shader

The OpenGL version Supermodel is being ran with appears to be 4.6.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions