Current section
Files
Jump to
Current section
Files
src/fluo@texture.erl
-module(fluo@texture).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]).
-define(FILEPATH, "src/fluo/texture.gleam").
-export([create_texture/3, load_texture/1, color/1]).
-export_type([texture/0]).
-opaque texture() :: {texture,
fluo@image:color_image(),
gleam@dynamic:dynamic_()}.
-file("src/fluo/texture.gleam", 18).
-spec create_texture(bitstring(), integer(), integer()) -> texture().
create_texture(Pixels, Width, Height) ->
{Color, Handle} = fluo_nif:create_texture(Pixels, Width, Height),
{texture, Color, Handle}.
-file("src/fluo/texture.gleam", 24).
-spec load_texture(binary()) -> texture().
load_texture(Path) ->
{Color, Handle} = fluo_nif:load_texture_from_path(Path),
{texture, Color, Handle}.
-file("src/fluo/texture.gleam", 30).
-spec color(texture()) -> fluo@image:color_image().
color(Texture) ->
erlang:element(2, Texture).