diff options
| author | tslil clingman <> | 2021-10-27 15:37:28 -0400 |
|---|---|---|
| committer | tslil clingman <> | 2021-10-27 15:37:28 -0400 |
| commit | 48dee0817f5fe8c09a085f0150e0c6b4a699ab7c (patch) | |
| tree | d6ab0a54f2260cb73c79e00ca1489c034f555f09 /src/sfml/graphics/RenderStates.zig | |
| parent | 486935299e4b7e097754611d9f8dd40003351ae4 (diff) | |
Update SFML wrapper
Diffstat (limited to 'src/sfml/graphics/RenderStates.zig')
| -rw-r--r-- | src/sfml/graphics/RenderStates.zig | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/sfml/graphics/RenderStates.zig b/src/sfml/graphics/RenderStates.zig new file mode 100644 index 0000000..e7234ae --- /dev/null +++ b/src/sfml/graphics/RenderStates.zig @@ -0,0 +1,20 @@ +//! Defines settings for drawing things on a target + +const sf = struct { + pub usingnamespace @import("../sfml.zig"); + pub usingnamespace sf.graphics; +}; + +blend_mode: sf.BlendMode = sf.BlendMode.BlendAlpha, +//transform: null, // TODO: implement transforms (#25) +texture: ?sf.Texture = null, +shader: ?sf.Shader = null, + +pub fn _toCSFML(self: @This()) sf.c.sfRenderStates { + return .{ + .blendMode = self.blend_mode._toCSFML(), + .transform = .{ .matrix = .{ 1, 0, 0, 0, 1, 0, 0, 0, 1} }, + .texture = if (self.texture) |t| t._get() else null, + .shader = if (self.shader) |s| s._ptr else null + }; +}
\ No newline at end of file |
