mirror of https://github.com/bjornbytes/lovr.git
Set point size in vertex shader for WebGL compatibility;
This commit is contained in:
parent
2efe619317
commit
cc651e7b4e
|
@ -118,6 +118,9 @@ void lovrGraphicsPrepare() {
|
|||
float color[4] = { state.color.r / 255., state.color.g / 255., state.color.b / 255., state.color.a / 255. };
|
||||
lovrShaderSetFloat(shader, "lovrColor", color, 4);
|
||||
|
||||
// Point size
|
||||
lovrShaderSetFloat(shader, "lovrPointSize", &state.pointSize, 1);
|
||||
|
||||
// Material
|
||||
Material* material = lovrGraphicsGetMaterial();
|
||||
|
||||
|
@ -182,6 +185,7 @@ void lovrGraphicsCreateWindow(int w, int h, int fullscreen, int msaa, const char
|
|||
gladLoadGLLoader((GLADloadproc) glfwGetProcAddress);
|
||||
glfwSwapInterval(0);
|
||||
glEnable(GL_LINE_SMOOTH);
|
||||
glEnable(GL_PROGRAM_POINT_SIZE);
|
||||
#endif
|
||||
glEnable(GL_BLEND);
|
||||
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
|
||||
|
@ -400,10 +404,7 @@ float lovrGraphicsGetPointSize() {
|
|||
}
|
||||
|
||||
void lovrGraphicsSetPointSize(float size) {
|
||||
#ifndef EMSCRIPTEN
|
||||
state.pointSize = size;
|
||||
glPointSize(size);
|
||||
#endif
|
||||
}
|
||||
|
||||
Shader* lovrGraphicsGetShader() {
|
||||
|
|
|
@ -25,6 +25,7 @@ const char* lovrShaderVertexPrefix = ""
|
|||
"uniform mat4 lovrProjection; \n"
|
||||
"uniform mat4 lovrTransform; \n"
|
||||
"uniform mat3 lovrNormalMatrix; \n"
|
||||
"uniform float lovrPointSize; \n"
|
||||
"#line 0 \n";
|
||||
|
||||
const char* lovrShaderFragmentPrefix = ""
|
||||
|
@ -46,6 +47,7 @@ const char* lovrShaderFragmentPrefix = ""
|
|||
const char* lovrShaderVertexSuffix = ""
|
||||
"void main() { \n"
|
||||
" texCoord = lovrTexCoord; \n"
|
||||
" gl_PointSize = lovrPointSize; \n"
|
||||
" gl_Position = position(lovrProjection, lovrTransform, vec4(lovrPosition, 1.0)); \n"
|
||||
"}";
|
||||
|
||||
|
|
Loading…
Reference in New Issue