首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >文本不会出现在Babylon.js顶部

文本不会出现在Babylon.js顶部
EN

Stack Overflow用户
提问于 2020-06-18 01:22:47
回答 2查看 580关注 0票数 0

我正在用Babylon.js制作一个场景,它利用了canvas元素。我也希望文本出现在这个画布上,因为它被设置为占据整个页面。我尝试过这样做,它在没有Babylon.js的情况下也可以工作,但每当我将它与Babylon.js放在一起时,文本要么看不见,要么只显示文本,而不显示Babylon.js。我听说把一幅画布画放在前面的唯一方法是在它后面的元素之后编码它,但由于某种原因,这种方法不起作用。代码如下:

代码语言:javascript
运行
复制
window.addEventListener('DOMContentLoaded', function(){
            var canvas = document.getElementById('renderCanvas');
            var engine = new BABYLON.Engine(canvas, true);
            var createScene = function(){
                var scene = new BABYLON.Scene(engine);
                var camera = new BABYLON.UniversalCamera('camera1', new BABYLON.Vector3(0, 5,-10), scene);
                camera.setTarget(BABYLON.Vector3.Zero());
                camera.attachControl(canvas, true);


                var light = new BABYLON.HemisphericLight('light1', new BABYLON.Vector3(0,1,0), scene);


                var sphere = BABYLON.Mesh.CreateSphere('sphere1', 16, 2, scene);
                sphere.position.y = 1;


                var ground = BABYLON.Mesh.CreateGround('ground1', 100, 100, 100, scene);


                scene.gravity = new BABYLON.Vector3(0, -9.81, 0);


                camera.ellipsoid = new BABYLON.Vector3(1, 1, 1);
                scene.collisionsEnabled = true;
                camera.checkCollisions = true;
                ground.checkCollisions = true;
                sphere.checkCollisions = true;
                camera.applyGravity = true;


            }
            var scene = createScene();


            engine.runRenderLoop(function(){
                scene.render();
            });


            window.addEventListener('resize', function(){
                engine.resize();
            });
        });

        var canvas = document.getElementById("myCanvas");
var ctx = canvas.getContext("2d");
ctx.font = "67px Arial";
ctx.fillText("TEST", 10, 50);
EN

Stack Overflow用户

发布于 2020-06-20 23:52:18

答:使用HTML作为在JS中显示文本的一种方式被证明有点多余。当进一步研究Babylon.js文档时,我发现BabylonJS库有一个内置的图形用户界面元素,可以用来显示文本。如果你想做同样的事情,你可以通过Here is the link找到它。

票数 0
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62434820

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档