重新设置 geometry的方法在现在的DEMO上使用有很多不便,因为代码设计是参照API文档来的。还是麻烦尽快修复removeChild的BUG,尤其是光源部分的。
jkwang007
-
Scene3D的removeChild -
Scene3D的removeChild简单说,除了camera、light、一个球体(模拟原点)、三个长方体(模拟坐标轴),需要动态调整的内容包括6个Orillusion.PlaneGeometry(模拟4个墙体、地板和天花板)以及9个点光源。
加了9个点光源后重绘很卡很卡(调用了对应entity的destroy()) -
Scene3D的removeChildOrillusion.PlaneGeometry,用了图片做纹理,用来模拟房间的墙壁。
-
Scene3D的removeChild补充说明,如果加了那9个点光源(见前文),即便加了child.destroy(),重绘后会特别的卡;不加就问题不大。
-
Scene3D的removeChildchild.destroy()后,显示正常了。但是重绘后看起来比起初次绘制时略有卡顿,望知晓。
-
Scene3D的removeChild问题是scene中还有一些其他的entity,比如camera、light,如果destroy的话,这些都需要重新创建了。下个版本大概什么时候能发布?
-
Scene3D的removeChild调用后是否还需要调用其他方法刷新。
DEMO中增加了一个动态修改房间长宽的功能,目前考虑是重新绘图前执行Scene3D的removeChild,再重新addChild,但是发现两次的结果同时显示了。 -
点光源问题for (let r = 0; r < 3; r++) { for (let c = 0; c < 3; c++) { let pointLightObj = new Orillusion.Object3D() pointLightObj.x = (c - 1) * width * 0.4 pointLightObj.y = (r - 1) * height * 0.4 pointLightObj.z = planeTypes[t] === 'floor' ? (0 - wallHeight * 0.5) : (wallHeight * 0.5) let pointLight = pointLightObj.addComponent(Orillusion.PointLight) pointLight.range = Math.max(width, height) * 0.3 pointLight.intensity = 10 pointLight.lightColor = new Orillusion.Color(1.0, 0.95, 0.84, 1.0) this.scene.addChild(pointLightObj) this.lights.push(pointLightObj) } }
-
后期处理很卡,基本无法生产使用我是用THREE或BABYLON很卡,用Orillusion很流畅
-
点光源问题 -
点光源问题做了一个DEMO,一个长方形的房间,在天花板上按九宫格方式均匀放置了9个点光源,第一行3个与第三行3个正常,但是第二行的光源好像不起作用,照到房间外侧去了(把左右侧的墙旋转180度也不行)。
红色是X轴、绿色是Y轴、蓝色是Z轴。
-
正式版本什么时候能发布?如题如题如题如题。
-
如何绘制Polygon如题,如题如题如题如题如题
-
如何绘制Line翻了一遍文档,没有发现类似的API。
-
建议在gui中添加ViewHelper附议。附议。附议。附议。
-
Engine初始化出错谢谢大佬,竟然是因为不是localhost...
-
Engine初始化出错开发环境——VUE3
Orillusion版本——0.6.1源代码片段如下:
const canvas = document.getElementById('renderer') as HTMLCanvasElement const canvasConfig: Orillusion.CanvasConfig = {canvas: canvas} let engineCreated: boolean = false const initEngine = async () => { await Orillusion.Engine3D.init({canvasConfig: canvasConfig}).then(() => { engineCreated = true }) }
浏览器:
Google Chrome 113.0.5672.63(正式版本) (arm64)设备:
MacBook Pro(14英寸,2021年) M1 芯片
操作系统 macOS 12.6.5出错信息如下:
uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'requestAdapter')