mirror of
https://github.com/SFML/CSFML.git
synced 2026-10-26 13:06:13 +01:00
Added missing statement with sfShader_createFromX
We can now call sfShader_createFromFile/Memory/Stream with only a geometry file/memory/stream.
This commit is contained in:
1 parent
1402537900
commit
0c79d19b48
1 file changed
+32
-8
@@ -60,8 +60,16 @@ sfShader* sfShader_createFromFile(const char* vertexShaderFilename, const char*
|
||||
}
|
||||
else
|
||||
{
|
||||
// vertex + geometry + fragment shaders
|
||||
success = shader->This.loadFromFile(vertexShaderFilename, geometryShaderFilename, fragmentShaderFilename);
|
||||
if (!vertexShaderFilename && !fragmentShaderFilename)
|
||||
{
|
||||
// geometry shader only
|
||||
success = shader->This.loadFromFile(geometryShaderFilename, sf::Shader::Geometry);
|
||||
}
|
||||
else
|
||||
{
|
||||
// vertex + geometry + fragment shaders
|
||||
success = shader->This.loadFromFile(vertexShaderFilename, geometryShaderFilename, fragmentShaderFilename);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -102,8 +110,16 @@ sfShader* sfShader_createFromMemory(const char* vertexShader, const char* geomet
|
||||
}
|
||||
else
|
||||
{
|
||||
// vertex + geometry + fragment shaders
|
||||
success = shader->This.loadFromMemory(vertexShader, geometryShader, fragmentShader);
|
||||
if (!vertexShader && !fragmentShader)
|
||||
{
|
||||
// geometry shader only
|
||||
success = shader->This.loadFromMemory(geometryShader, sf::Shader::Geometry);
|
||||
}
|
||||
else
|
||||
{
|
||||
// vertex + geometry + fragment shaders
|
||||
success = shader->This.loadFromMemory(vertexShader, geometryShader, fragmentShader);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -148,11 +164,19 @@ sfShader* sfShader_createFromStream(sfInputStream* vertexShaderStream, sfInputSt
|
||||
}
|
||||
else
|
||||
{
|
||||
// vertex + geometry + fragment shaders
|
||||
CallbackStream vertexStream(vertexShaderStream);
|
||||
CallbackStream geometryStream(geometryShaderStream);
|
||||
CallbackStream fragmentStream(fragmentShaderStream);
|
||||
success = shader->This.loadFromStream(vertexStream, geometryStream, fragmentStream);
|
||||
if (!vertexShaderStream && !fragmentShaderStream)
|
||||
{
|
||||
// geometry shader only
|
||||
success = shader->This.loadFromStream(geometryStream, sf::Shader::Geometry);
|
||||
}
|
||||
else
|
||||
{
|
||||
// vertex + geometry + fragment shaders
|
||||
CallbackStream vertexStream(vertexShaderStream);
|
||||
CallbackStream fragmentStream(fragmentShaderStream);
|
||||
success = shader->This.loadFromStream(vertexStream, geometryStream, fragmentStream);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user