Garry's Mod Wiki

Garry's Mod Wiki

  render.SetScissorRect( number startX, number startY, number endX, number endY, boolean enable )

Description

Sets a scissoring rect which limits(otherwise known as clipping) the drawing area.

Arguments

1 number startX
X start coordinate of the scissor rect.
2 number startY
Y start coordinate of the scissor rect.
3 number endX
X end coordinate of the scissor rect.
4 number endY
Y end coordinate of the scissor rect.
5 boolean enable
Enable or disable the scissor rect.

Example

Shows how to use this function. This will cut the white rectangle from full screen to 512x512 box in top left corner

render.SetScissorRect( 0, 0, 512, 512, true ) -- Enable the rect draw.RoundedBox( 4, 0, 0, ScrW(), ScrH(), color_white ) -- Draw a white rectangle over the whole screen render.SetScissorRect( 0, 0, 0, 0, false ) -- Disable after you are done

Example

Draws a fake circle + cut it to look like a progress bar

local function draw_circle( x, y, radius, color, percent ) percent = percent or 1 render.SetScissorRect( x - radius, y - radius + radius * 2 * ( 1 - percent ), x + radius, y + radius * 2, true ) draw.RoundedBox( radius, x - radius, y - radius, radius * 2, radius * 2, color or color_white ) render.SetScissorRect( 0, 0, 0, 0, false ) end hook.Add( "HUDPaint", "GMod:Wiki", function() local w, h = ScrW(), ScrH() local radius = h * 0.1 -- Filled circle draw_circle( w / 2, h * 0.25, radius, Color( 255, 0, 0 ), 1 ) -- Filled circle + quarter circle draw_circle( w / 2, h / 2, radius, Color( 255, 0, 0 ), 1 ) draw_circle( w / 2, h / 2, radius, Color( 0, 255, 0 ), 0.25 ) -- Half circle draw_circle( w / 2, h * 0.75, radius, Color( 0, 0, 255 ), 0.5 ) end )

This site is a community mirror of the official Garry's Mod wiki.. This site is not maintained by Facepunch Studios.

Page content is automatically updated four times a day. Edits and history are not available.

Last Parsed: Loading...