首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >THREECSG似乎不能在我的threejs程序中工作

THREECSG似乎不能在我的threejs程序中工作
EN

Stack Overflow用户
提问于 2014-07-03 19:29:45
回答 1查看 109关注 0票数 0

我正在尝试做一个简单的减去两个网格,这是(假设)在CSG中生成的,然后我将它们转换为三个网格,从该几何图形创建一个带有网格的对象。但当我尝试将其显示在屏幕上时,什么也没有显示出来。我通过运行已知可用的CSG测试程序检查了我的库,所以看起来没问题。

所以我一定是错过了一些东西。这里有一个指向整个短程序列表的链接。如果你看到我遗漏了任何关键的代码,我会非常感激知道它是什么,因为我感到困惑。

谢谢你能告诉我的一切。

代码语言:javascript
复制
<script src="lightgl.js"></script>
<script src='vendor/three.js/build/three.min.js'></script>
<script src='vendor/three.js/build/stats.min.js'></script>
    <script src="vendor/csg.js"></script>
    <script src="vendor/ThreeCSG.js"></script>
</head>
<body bgcolor="black">
<script>

renderer = new THREE.WebGLRenderer();
    renderer.setSize(window.innerWidth, window.innerHeight);
    document.body.appendChild(renderer.domElement);
    camera = new THREE.PerspectiveCamera(45, window.innerWidth / window.innerHeight, 

1, 500);
    camera.position.set(0, 0, 10);
    camera.lookAt(new THREE.Vector3(0, 0, 0));
    scene = new THREE.Scene();

////////////////// This is the CSG code/////////////////////
var CSGsphere =CSG.sphere({radius: 1.3 });
CSGsphere.setColor(1, 0, 0);
var CSGcube= CSG.cube({center: [1,1,1]});
CSGcube.setColor(0,1, 0);
var  combined = CSGsphere.subtract(CSGcube);
var resultGeo= THREE.CSG.fromCSG( combined );
var meshobject = new THREE.Mesh( resultGEO,new THREE.MeshNormalMaterial()); 
scene.add(meshobject);

renderer.render(scene, camera);

 </script>
EN

回答 1

Stack Overflow用户

发布于 2015-06-08 20:17:03

您运行的是过时版本的ThreeCSG,语法已更改,不再运行THREE.CSG.fromCSG()

我从旧的源代码中复制了所需的内容,清除了所有错误,使它们可以与three.js r71一起运行,但返回的几何图形不是合法的THREE.geometry

我会添加这条评论,但我没有足够的声誉。

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

https://stackoverflow.com/questions/24552546

复制
相关文章

相似问题

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