Prolog in Plot3D should use 3D-coordinates

Werner Geiger, 11/12/2022
I want to use Prolog or Epilog within Plot3D. Basically this works, but it uses 2D-coordinates and interprets them as scaled.
​
This is well documented (“In three-dimensional graphics, two-dimensional graphics primitives can be specified by the Prolog option. The graphics primitives are rendered in a 0, 1 coordinate system.”), but strange from my point of view.
​
I think, Prolog should use ordinary 3D-coordinates. Or better have the possibility to choose between 2D and 3D.
Further explanations follow:

That works, of course

It does not use Prolog or Epilog, but Show[Graphics3D[…], Plot3D[…]] instead.
In[]:=
p={π/2,0,1};​​Show[​​Graphics3D[{Red,PointSize[Large],Point[p],Inset[Style["P",Bold,16],p,{-1.5,-1.5}],FaceForm[Opacity[0.5,Blue]],Hyperplane[UnitVector[3,3],{0,0,0}]}],​​Plot3D[Sin[x+y^2],{x,-3,3},{y,-2,2}]​​,ImageSize->250​​]
Out[]=
I would like to have the same result with Prolog within Plot3D.

Prolog within Plot3D works, but wants 2D-Coordinates, takes them as scaled

But for me it is not clear what the reference for scaling is:
In[]:=
p={0,0};​​Plot3D[Sin[x+y^2],{x,-3,3},{y,-2,2},Prolog->{Red,PointSize[Large],Point[p],Inset[Style["P",Bold,16],p,{-1.5,-1.5}]},ImageSize->250​​]​​
Out[]=
This is what I would expect for scaling: {0,0} means lower left of bounding box:
In[]:=
p=Scaled[{0,0}];​​Plot3D[Sin[x+y^2],{x,-3,3},{y,-2,2},Prolog->{Red,PointSize[Large],Point[p],Inset[Style["P",Bold,16],p,{-1.5,-1.5}]},ImageSize->250​​]​​
Out[]=

Prolog with Hyperplane does not work

... Since I use 3D-coordinates for the plane:
In[]:=
Plot3D[Sin[x+y^2],{x,-3,3},{y,-2,2},Prolog->{FaceForm[Opacity[0.5,Green]],Hyperplane[UnitVector[3,3],{0,0,0}]},ImageSize->250​​]​​
Out[]=
It gives an error: “ConicHullRegionBox[{0, 0, 0}, {{0, 1, 0}, {1, 0, 0}}] is not a valid ConicHullRegion specification.” and the Prolog is not rendered.

Strange enough this seems to work instead

The green plane from Prolog is not rendered, but gives no error. Despite the fact that it is exactly the same code as in the previous example. The Prolog seems to be ignored totally.
Of course, the blue plane from Graphics3D is rendered as in the first example above.
In[]:=
Show[​​Graphics3D[{FaceForm[Opacity[0.5,Blue]],Hyperplane[UnitVector[3,3],{0,0,0}]}],​​Plot3D[Sin[x+y^2],{x,-3,3},{y,-2,2},Prolog->{FaceForm[Opacity[0.5,Green]],Hyperplane[UnitVector[3,3],{0,0,0}]}]​​,ImageSize->250​​]
Out[]=