To give some short code examples to clear this up a bit in case it’s confusing. This will work and compile just fine:
import org.lwjgl.opengl.GL43.*
fun myOpenGlFunctionCall() {
glDeleteShader(1)
}
However, taking that same piece of code, and writing another call to glDeleteShader below the first one, using autocomplete in IntelliJ, will leave you with this:
import org.lwjgl.opengl.GL20
import org.lwjgl.opengl.GL43.*
fun myOpenGlFunctionCall() {
glDeleteShader(1)
GL20.glDeleteShader(1)
}
It will insist on prefixing with GL20, and do an import to import org.lwjgl.opengl.GL20, even though this is clearly not necessary.
In this because the line of glDeleteShader will in a sense be taken to be Java code, and not Kotlin code? Or am I missing something here?