Mercurial > repos > tabletprog
view samples/sdl.tp @ 283:0ec4f1b68a38
Add copyTo method to texture that allows copying to a rectangular region on the renderer rather than stretching to fit the entire renderer
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Mon, 21 Jul 2014 20:27:38 -0700 |
parents | eb83863fd33e |
children | 99c18127da04 |
line wrap: on
line source
#{ import: [ video timer ] from: (sdl subsystems) main <- { if: (sdl init: (video or timer)) = 0 { (sdl createWindow: "SDL Test" pos: 0 0 size: 640 480 flags: 0u32) value: :window { (window createRenderer: -1 flags: ((window renderOpts) accelerated)) value: :render { render drawColor!: (sdl r: 0u8 g: 0u8 b: 255u8) render clear (sdl loadBMP: "944.bmp") value: :surf { (surf asTexture: render) value: :tex { sdl clearError if: (tex copy) != 0 { print: "Failed to copy texture to renderer: " . (sdl getError) . "\n" } surf free tex copyTo: (sdl rect: 160 120 size: 320 224) render present sdl delay: 3000u32 tex destroy } none: { surf free } } none: { } render destroy } none: { print: "Failed to create renderer\n" } window destroy } none: { print: "Failed to create window\n" 1 } } else: { print: "Failed to initialize SDL\n" 1 } } }