Garry's Mod Wiki

Revision Difference

surface.DrawTexturedRect#528625

<function name="DrawTexturedRect" parent="surface" type="libraryfunc"> <description> Draw a textured rectangle with the given position and dimensions on the screen, using the current active texture set with <page>surface.SetMaterial</page>. It is also affected by <page>surface.SetDrawColor</page>. See also <page>render.SetMaterial</page> and <page>render.DrawScreenQuadEx</page>. <br/> See also <page>surface.DrawTexturedRectUV</page>. <rendercontext hook="false" type="2D"></rendercontext> </description> <realm>Client and Menu</realm> <args> <arg name="x" type="number">The X integer co-ordinate.</arg> <arg name="y" type="number">The Y integer co-ordinate.</arg> <arg name="width" type="number">The integer width of the rectangle.</arg> <arg name="height" type="number">The integer height of the rectangle.</arg> </args> </function> <example> <description>Draws a 512x512 textured rectangle with the wireframe texture.</description> <code> local ourMat = Material( "models/wireframe" ) -- Calling Material() every frame is quite expensive hook.Add( "HUDPaint", "example_hook", function() surface.SetDrawColor( 255, 255, 255, 255 ) surface.SetMaterial( ourMat ) -- If you use Material, cache it! surface.DrawTexturedRect( 0, 0, 512, 512 ) -- Calling Material() every frame is quite expensive -- So we call it once, outside of any hooks, and cache the result in a local variable local ourMat = Material( "models/wireframe" ) hook.Add( "HUDPaint", "PutAUniqueHookNameHere", function() surface.SetDrawColor( 255, 255, 255, 255 ) -- Set the drawing color surface.SetMaterial( ourMat ) -- Use our cached material surface.DrawTexturedRect( 0, 0, 512, 512 ) -- Actually draw the rectangle end ) </code> </example>