Java3D的:绘画2D HUD超过Canvas3DJava3D、HUD、Canvas3D

2023-09-07 23:15:26 作者:向着太阳迎着光

我使用的Java3D渲染三维场景。我想上的三维图像的顶部覆盖的二维抬头显示器。我怎样才能有效地绘制2D内容的3D画布之上?

谢谢!

解决方案

  //使用preferred配置创建一个Canvas3D
    Canvas3D canvas3d =新Canvas3D(配置)
    {
        私有静态最后长的serialVersionUID = 7144426579917281131L;

        公共无效postRender()
        {
            。this.getGraphics2D()setColor(Color.white);
            。this.getGraphics2D()束带(抬头显示器(HUD)作品!,100,100);
            this.getGraphics2D()平齐(假)。
        }
    };
 

I'm using Java3D to render a three-dimensional scene. I would like to overlay a two-dimensional "heads-up-display" on top of the 3d image. How can I efficiently paint the 2d content on top of the 3d canvas?

3D游戏引擎Unity最高募资超10亿美元 路演PPT曝光

Thanks!

解决方案

    // Create a Canvas3D using the preferred configuration
    Canvas3D canvas3d = new Canvas3D(config)
    {
        private static final long serialVersionUID = 7144426579917281131L;

        public void postRender()
        {
            this.getGraphics2D().setColor(Color.white);
            this.getGraphics2D().drawString("Heads Up Display (HUD) Works!",100,100);
            this.getGraphics2D().flush(false);
        }
    };