Visual basic (2018):

Function PointHitFace(ByVal PX As Single, ByVal PY As Single, ByVal Pz As Single, _
      ByVal NX As Single, ByVal NY As Single, ByVal Nz As Single, ByVal vx As Single, _
      ByVal vy As Single, ByVal vz As Single) As Boolean

      'assumes a zero coordinate triangle
      'so the center is subtracted from p
      'before passed, with lengths of its
      'edges and also the trianlge normal

      'input px,py,pz = the point to test
      'input nx,ny,nz = sides numeric len
      'input vx,vy,vz = a triangle normal

      PX = Abs(PX)
      PY = Abs(PY)
      Pz = Abs(Pz)

      Dim a1 As Single
      Dim a2 As Single
      Dim a3 As Single

      a1 = (Sqr((((PX + PY + Pz) * (vy + vz)) - (PX * vx)) * ((NX + NX + NX) * (vy + vz)) + _
            (((PX + PY + Pz) * (vz + vx)) - (PX * vy)) * ((NX + NX + NX) * (vz + vx)) + _
            (((PX + PY + Pz) * (vx + vy)) - (PX * vz)) * ((NX + NX + NX) * (vx + vy))) * vx)

      a2 = (Sqr((((PY + Pz + PX) * (vz + vx)) - (PY * vy)) * ((NY + NY + NY) * (vz + vx)) + _
            (((PY + Pz + PX) * (vx + vy)) - (PY * vz)) * ((NY + NY + NY) * (vx + vy)) + _
            (((PY + Pz + PX) * (vy + vz)) - (PY * vx)) * ((NY + NY + NY) * (vy + vz))) * vy)

      a3 = (Sqr((((Pz + PX + PY) * (vx + vy)) - (Pz * vz)) * ((Nz + Nz + Nz) * (vx + vy)) + _
            (((Pz + PX + PY) * (vy + vz)) - (Pz * vx)) * ((Nz + Nz + Nz) * (vy + vz)) + _
            (((Pz + PX + PY) * (vz + vx)) - (Pz * vy)) * ((Nz + Nz + Nz) * (vz + vx))) * vz)

      PointHitFace = ((a1 + a2 + a3) > 0)

End Function




History (2003):

Appears in a x86 compiled MS VC++ 6.0 library "maxlandlib.dll," export "PointBehindPoly."
Accepting unsigned shorts, as each six parameters, returning a zero result for a non hit.
Collision using this C++ function indirectly is exampled in a game named MaxLand, written
in Visual Basic 6.0 utilizing DirectX8. The game may be downloaded through this link here.
***The above function is not exactly the same for the bool output and signed variability.