Having trouble with cam.Start3D2D

Just having a bit of trouble trying to figure out when it’s supposed to be used. I’ve read the wiki and it tells me the important hooks that can be used (I.E. HUDPaint, ENT:Draw, etc. ). To me it seems like 3D2D will only work when it is present within an entity’s cl_init. So I guess it isn’t possible to place it by itself and be hooked to HUDPaint by the function? The problem for me is that I’ve never created a SENT. I know how vectors and angles work thanks to Wire, so the positions and angles won’t be a problem.

So ultimately my question is: When using 3D2D, would I need to have it part of an Entity? Will that entity need to have a model?

I’ve seen aVoN’s base Entity file he made, although his server is dead or down so I cannot access that file. I’ve also searched through the forum and come to no conclusion, other then copy and paste other peoples code which won’t give me any help.

I believe it can also be used in PostPlayerDraw and RenderScreenSpaceEffects.

I’ll try it out.

Edit: It doesn’t seem to draw it, yet when I try cam.3D it draws it.

Why do you need to draw 3D2D without an entity involved?

That’s my question, is it possible?

Also, for use in as a static object ( Doesn’t change position, angle nor scale. )

Make an ent, save yourself alot of time.

If you want to draw it on a point then an ent is still the way to go, as it’ll handle the whole “Not drawing when you can’t see it” side of the code.

That’s really a plus! It doesn’t even have to have a model you know.

A visible model. It does need a model to be spawnable though.

Just use models/blackout.mdl, set the shadow to disabled, and don’t include self.Entity:DrawModel() inside of the Draw hook and you’ll be good to go.