sig
type t = Sdltype.renderer
external create_window_and_renderer :
width:int ->
height:int ->
flags:Sdlwindow.window_flags list -> Sdlwindow.t * Sdlrender.t
= "caml_SDL_CreateWindowAndRenderer"
type renderer_flags = Software | Accelerated | PresentVSync | TargetTexture
val string_of_renderer_flags : Sdlrender.renderer_flags -> string
val renderer_flags_of_string : string -> Sdlrender.renderer_flags
external create_renderer :
win:Sdlwindow.t ->
index:int -> flags:Sdlrender.renderer_flags list -> Sdlrender.t
= "caml_SDL_CreateRenderer"
external get_output_size : Sdlrender.t -> int * int
= "caml_SDL_GetRendererOutputSize"
external set_logical_size : Sdlrender.t -> int * int -> unit
= "caml_SDL_RenderSetLogicalSize"
external set_logical_size2 : Sdlrender.t -> width:int -> height:int -> unit
= "caml_SDL_RenderSetLogicalSize2"
external set_viewport : Sdlrender.t -> Sdlrect.t -> unit
= "caml_SDL_RenderSetViewport"
external set_clip_rect : Sdlrender.t -> Sdlrect.t -> unit
= "caml_SDL_RenderSetClipRect"
external set_draw_color :
Sdlrender.t -> rgb:int * int * int -> a:int -> unit
= "caml_SDL_SetRenderDrawColor"
external set_draw_color3 :
Sdlrender.t -> r:int -> g:int -> b:int -> a:int -> unit
= "caml_SDL_SetRenderDrawColor3"
external set_draw_blend_mode : Sdlrender.t -> SdlblendMode.t -> unit
= "caml_SDL_SetRenderDrawBlendMode"
external draw_point : Sdlrender.t -> int * int -> unit
= "caml_SDL_RenderDrawPoint"
external draw_point2 : Sdlrender.t -> x:int -> y:int -> unit
= "caml_SDL_RenderDrawPoint2"
external draw_points : Sdlrender.t -> points:(int * int) array -> unit
= "caml_SDL_RenderDrawPoints"
external draw_line : Sdlrender.t -> (int * int) * (int * int) -> unit
= "caml_SDL_RenderDrawLine"
external draw_line2 : Sdlrender.t -> p1:int * int -> p2:int * int -> unit
= "caml_SDL_RenderDrawLine2"
external draw_lines : Sdlrender.t -> (int * int) array -> unit
= "caml_SDL_RenderDrawLines"
external draw_rect : Sdlrender.t -> Sdlrect.t -> unit
= "caml_SDL_RenderDrawRect"
external draw_rects : Sdlrender.t -> Sdlrect.t array -> unit
= "caml_SDL_RenderDrawRects"
external fill_rect : Sdlrender.t -> Sdlrect.t -> unit
= "caml_SDL_RenderFillRect"
external fill_rects : Sdlrender.t -> Sdlrect.t array -> unit
= "caml_SDL_RenderFillRects"
external copy :
Sdlrender.t ->
texture:Sdltexture.t ->
?src_rect:Sdlrect.t -> ?dst_rect:Sdlrect.t -> unit -> unit
= "caml_SDL_RenderCopy"
type renderer_flip = Flip_None | Flip_Horizontal | Flip_Vertical
external copyEx :
Sdlrender.t ->
texture:Sdltexture.t ->
?src_rect:Sdlrect.t ->
?dst_rect:Sdlrect.t ->
?angle:float ->
?center:int * int -> ?flip:Sdlrender.renderer_flip -> unit -> unit
= "caml_SDL_RenderCopyEx_bc" "caml_SDL_RenderCopyEx"
external set_scale : Sdlrender.t -> float * float -> unit
= "caml_SDL_RenderSetScale"
external render_present : Sdlrender.t -> unit = "caml_SDL_RenderPresent"
external clear : Sdlrender.t -> unit = "caml_SDL_RenderClear"
type renderer_info = {
name : string;
max_texture_width : int;
max_texture_height : int;
}
external get_render_drivers : unit -> Sdlrender.renderer_info array
= "caml_SDL_GetRenderDrivers"
external read_pixels :
Sdlrender.t -> ?rect:Sdlrect.t -> Sdlsurface.t -> unit
= "caml_SDL_RenderReadPixels"
external set_render_target : Sdlrender.t -> Sdltexture.t option -> unit
= "caml_SDL_SetRenderTarget"
end