我一直在学习如何影响HUD并在Gmod上使用绘图功能,但是每当我尝试运行任何依赖于2D渲染上下文挂钩(如HUDPaint)的代码时,它似乎都无法正常工作。没有出现任何错误,但没有图形或HUD发生任何更改。这是我的代码:
function test()
surface.SetDrawColor( 0, 0, 0, 120 )
surface.DrawRect( 50, 50, 128, 128 )
end
hook.Add("HUDPaint", "HUDPaint_DrawABox", test)
我不确定HUDPaint还是我用来绘制(test)的函数是否有问题。我最好的猜测是,它与HUDPaint是服务器端脚本有关,因为我尚未使用任何专门用于服务器端的代码。我一直在尝试在普通的单人游戏Gmod实例中运行此代码,到目前为止,当我使用其他脚本时,该实例对我来说一直有效。
HUDPaint是客户端,所有渲染挂钩也都在客户端。
您为此将lua文件放在哪里?它应该放置在插件/您的ADDON NAME / lua / autorun / client
而且,使用draw.RoundedBox https://wiki.facepunch.com/gmod/draw.RoundedBox]是更标准的约定。
((如果您愿意的话,您不想设置不必要的表面绘制颜色)