00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00024
00026
00028 #include <SFML/Graphics/PostFX.h>
00029 #include <SFML/Graphics/PostFX.hpp>
00030 #include <SFML/Internal.h>
00031
00032
00033
00034 struct sfImage
00035 {
00036 sf::Image This;
00037 };
00038 struct sfPostFX
00039 {
00040 sf::PostFX This;
00041 };
00042
00043
00047 sfPostFX* sfPostFX_CreateFromFile(const char* Filename)
00048 {
00049 sfPostFX* PostFX = new sfPostFX;
00050
00051 if (!PostFX->This.LoadFromFile(Filename))
00052 {
00053 delete PostFX;
00054 PostFX = NULL;
00055 }
00056
00057 return PostFX;
00058 }
00059
00060
00064 sfPostFX* sfPostFX_CreateFromMemory(const char* Effect)
00065 {
00066 sfPostFX* PostFX = new sfPostFX;
00067
00068 if (!PostFX->This.LoadFromMemory(Effect))
00069 {
00070 delete PostFX;
00071 PostFX = NULL;
00072 }
00073
00074 return PostFX;
00075 }
00076
00077
00081 void sfPostFX_Destroy(sfPostFX* PostFX)
00082 {
00083 delete PostFX;
00084 }
00085
00086
00090 void sfPostFX_SetParameter1(sfPostFX* PostFX, const char* Name, float X)
00091 {
00092 CSFML_CALL(PostFX, SetParameter(Name, X))
00093 }
00094
00095
00099 void sfPostFX_SetParameter2(sfPostFX* PostFX, const char* Name, float X, float Y)
00100 {
00101 CSFML_CALL(PostFX, SetParameter(Name, X, Y))
00102 }
00103
00104
00108 void sfPostFX_SetParameter3(sfPostFX* PostFX, const char* Name, float X, float Y, float Z)
00109 {
00110 CSFML_CALL(PostFX, SetParameter(Name, X, Y, Z))
00111 }
00112
00113
00117 void sfPostFX_SetParameter4(sfPostFX* PostFX, const char* Name, float X, float Y, float Z, float W)
00118 {
00119 CSFML_CALL(PostFX, SetParameter(Name, X, Y, Z, W))
00120 }
00121
00122
00126 void sfPostFX_SetTexture(sfPostFX* PostFX, const char* Name, sfImage* Texture)
00127 {
00128 CSFML_CALL(PostFX, SetTexture(Name, Texture ? &Texture->This : NULL))
00129 }
00130
00131
00135 sfBool sfPostFX_CanUsePostFX()
00136 {
00137 return sf::PostFX::CanUsePostFX() ? sfTrue : sfFalse;
00138 }