草庐IT

three-tier

全部标签

javascript - 如果不使用像 three.js 这样的库,我将如何在 webgl 中进行环境反射?

我正在尝试弄清楚如何将环境映射到对象上。这是设置:如何让茶壶的表面反射(reflect)周围环境?所以我的意思是,茶壶不应是那种灰色阴影,它的表面应该反射(reflect)它的环境,所以它应该将棋盘映射到它的表面上。这是我试图完成的示例,但它使用了Three.js我想自己做(这是为了上课)。http://aerotwist.com/tutorials/create-your-own-environment-maps/demo/这有意义吗?我将如何开始?跟进我在完成家庭作业后回答了这个问题:https://stackoverflow.com/a/10093646/196921.请参阅链接

javascript - es6导入three.js

我的es6工作流程使用babel和babel-plugin-transform-es2015-modules-system.js来仅转换模块导入/导出以便与system.js一起使用。我只是对所有es6功能使用“绿色”浏览器,除了模块的导入/导出..这是whatwg标准,因此不是“es6”。这适用于遗留(非es6)库,我可以“导入”我需要的所有npm包。不知何故,babel,只有babel模块转换,而system.js神奇地工作。three.js除外。我尝试了所有三个版本:three.js、three.min.js和three.modules.js。前两个静默失败,导致“未定义”模块。

javascript - 将颜色渐变应用于网格上的 Material - three.js

我将一个STL文件加载到我的场景中,并将单一颜色应用于phongMaterial我想要一种将两种颜色应用到此网格Material的方法,并在Z轴上应用渐变效果,如下例所示。GradientVase]1我觉得我可能必须引入着色器,但我对three.js还没有做到这一点。 最佳答案 简单的渐变着色器,基于uvs:varscene=newTHREE.Scene();varcamera=newTHREE.PerspectiveCamera(60,1,1,1000);camera.position.set(13,25,38);camera.l

javascript - Three.js - 在另一个之上的几何

是否可以在Three.js中始终在场景顶部渲染网格,即使它的位置在所有对象的后面?我正在使用网格实现套索选择,我需要在场景的其余部分之上渲染选择框。 最佳答案 是的。首先这样做:renderer.autoClear=false;然后创建第二个场景,其中只包含您想要放在顶部的对象。然后,在你的渲染循环中:renderer.clear();//clearbuffersrenderer.render(scene,camera);//renderscene1renderer.clearDepth();//cleardepthbufferre

javascript - 将 SpotLight 指向与相机 three.js(手电筒)相同的方向

我真的是这方面的新手。我想制作一个简单的3D场景,在那里我可以使用PointerLockControls飞来飞去,但我还想要某种手电筒。所以聚光灯应该指向与相机相同的方向。我已经让聚光灯跟随相机,但它的目标绑定(bind)到0,0,0。实现此目标的最佳方法是什么?谢谢。 最佳答案 SpotLight目标是Object3D,而不是Vector3。spotlight.target=myObject;在您的情况下,最好的解决方案是改用PointLight,并使用以下模式:scene.add(camera);camera.add(point

javascript - three.js 在线包含它的 URL 是什么?

我正在尝试使用three.js在googleappengine中制作一个javascript应用程序,但我没有获得将其在线包含在我的文档中的URL。我不想上传整个three.js包,它的大小非常大。我想知道是否有一种方法可以获得URL来包含库,就像jQuery的这个库一样:http://ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js如果已经有人问过这个问题,请提供链接。 最佳答案 您的问题的搜索词应该是threejscdn生成以下链接(对于r128):https://

javascript - three.js 透明 map 问题

我正在创建大量粒子(准确地说是80.000个)并且我设置了一个透明贴图,但并非所有粒子都是透明的。我正在使用透明的PNG图像:(它几乎看不见,但还好)作为Material贴图,尽管它显示黑色背景,如下所示:如果您仔细观察,有些粒子会很好地混合在一起(没有重叠的黑色边缘),但有些则不会。可能是因为有太多重叠的透明对象,或者这不应该成为问题吗?这是负责生成我的粒子的片段://loadthetexturevarmap=THREE.ImageUtils.loadTexture('img/particle.png');//createtempvariablesvargeometry,materi

javascript - Three.js 如何获取网格的位置?

使用以下代码,网格的位置返回为(0,0,0)但事实并非如此。那么位置向量是在渲染过程之后计算出来的吗?me.scene.add(objMesh);//meisaprojectclassobjMesh.updateMatrixWorld(true);alert(objMesh.position.x+','+objMesh.position.y+','+objMesh.position.z);objMesh是从objfile创建的,它被正确地添加到场景中,质心大约是(-8,3,0)但是objMesh的位置向量是(0,0,0)我们必须先自动计算一些东西还是我应该从网格的几何顶点手动计算它?h

javascript - 用 Three.js 画一个圆(没有阴影)

我正在尝试绘制一个与this上的轨道图案非常相似的圆圈网站。我想使用Three.js而不是纯WebGL。 最佳答案 Three.jsr50添加了CircleGeometry。在WebGLGeometriesexample中可以看到(尽管有脸).几何中的第一个顶点是在圆的中心创建的(在r84中,请参见CircleGeometry.jsline71,在r65中,请参见CircleGeometry.jsline18),如果您想要那个“完整的吃bean人”,这非常好或“无信息饼图”外观。哦,如果您要使用LineBasicMaterial/L

javascript - three.js - 管段上的 TubeGeometry + DecalGeometry

我想在管几何体的一段内(在背面)放置贴花。我的做法是使用TubeGeometry作为贴花几何体。这是我的:这就是我想要的:(画得不好)示例代码://codevartube=newTHREE.TubeGeometry(pipelineSpline,200,20,20,closed2);tubeMesh=THREE.SceneUtils.createMultiMaterialObject(geometry,[material,//aphongmaterialmaterialInside//amaterialfortheinside]);scene.add(tubeMesh);vardeca