If GetConVar( 'sv_allowcslua'):GetInt() = 0 then return end deepskin( vgui. Add( 'derma_deepsetskin', function(_,_,args) If #v: GetChildren() != 0 then deepskin( v: GetChildren(),skin) end end end concommand. GetWorldPanel():GetChildren()) do v: SetSkin(args)Įnd end, nil, 'Sets skin for all Derma objects.')įor k,v in pairs(children) do v: SetSkin(skin) If GetConVar( 'sv_allowcslua'):GetInt() = 0 then return end for k,v in pairs( vgui. They're used in conjunction with derma.SkinHook (used in Derma_Hook). Inside file there're bunch of Derma Hooks. vpk file in 'materials/gwenskin/gmoddefault.png'. Default skin texture can be found in Garry's Mod. Some GWEN functions require a IMaterial in last argument, but it can be empty: GWEN will use SKIN.GwenTexture variable instead. It contains UV texture mapping, Color definitions and Derma Hooks. How Derma skins work?įirst thing to know, they're located in 'garrysmod/lua/skins/'. Exactly same method uses default Derma and it's defined in Lua. So many functions, aren't they? Is there a way to make it easier and fancy? Yes, this page will show you how to create your own Derma Skin. You may think that redrawing is too complicated: surface, draw, render. But one day you wanted to make your own Derma design. They are functions to draw your Derma objects. As a developer you may be familiar with PANEL:Paint and PANEL:PaintOver.