使用three.js画的简单的墙壁 在墙上挖了个门,做纪念

   项目要用到web3d 但是webgl学习起来太麻烦,先用three.js库写这点,初期做个记录。

   关于框架的基本搭建和js引入,场景相机等的基本添加就不说明了,随便搜一下就一堆说明,重点说下如何在墙壁上挖一个门出来。

   首先使用了ThreeBSP.js的类库


  然后是主要代码:

            var sphere1BSP = new ThreeBSP(cube);
            var cube2BSP = new ThreeBSP(door_cube);

            resultBSP = sphere1BSP.subtract(cube2BSP);
            result = resultBSP.toMesh();
            result.material.shading = THREE.FlatShading;
            result.geometry.computeFaceNormals();

通过两个几何体生成BSP对象,然后通过对象1的的substract函数来减去对象2,然后生成最后的对象,相当于在墙上把门给挖除了。

大概逻辑就这个样子,很简单,做个备注,以防止自己忘记。大家不要纠结变量的名字之类的,半成品做个纪念而已

把整个代码也贴上吧,不要忘记,哇咔咔





    
    
    


    
    
    
    



使用three.js画的简单的墙壁 在墙上挖了个门,做纪念_第1张图片





你可能感兴趣的:(web,threejs)