草庐IT

NUMBER_THREE

全部标签

javascript - Three.js动态改变光照强度

有没有一种我没见过的方法可以动态改变方向灯的光强度?甚至环境光?ambientLight=newTHREE.AmbientLight(0xffffff);scene.add(ambientLight);directionalLightL=newTHREE.DirectionalLight(0xffffff,dLight,0);directionalLightL.position.set(dlpX,dlpY,dlpZ);scene.add(directionalLightL);所以最初是为了渲染而完成的,但是我怎样才能在之后只改变一个特定的灯光强度呢?删除/重新添加灯?在dom中找到它并

javascript - THREE.JS场景中永无止境的地板

在我的canvasthree.js场景中创建一个各个方向连续的地板的最佳方法是什么?将THREE.PlaneGeometry附加到相机位置是否会更好,以便它与相机一起移动。或者是否有另一种使用纹理对场景的地板进行纹理化的方法。我在PlaneGeometry的可见性方面遇到了一些问题,出于某种原因,我必须与它保持一定距离才能看到它。/*Floor*/vargeometry=newTHREE.PlaneGeometry(1000,1000,1,1);varmaterial=newTHREE.MeshBasicMaterial({color:0x0000ff});varfloor=newTH

javascript - 创建的 Number.isInteger(x) 不能在 IE 中工作

Number.prototype.isInteger=Number.prototype.isInteger||function(x){return(x^0)===x;}console.log(Number.isInteger(1));IE10浏览器会报错 最佳答案 显然,IE将DOM对象和Javascript对象分开处理,您不能使用Object.prototype扩展DOM对象。IE不允许您使用非native原型(prototype)..您必须创建一个单独的函数(如果需要,则为全局函数)functionisInteger(num){

javascript - Three.js raycaster 可以与一个组相交吗?

我想知道我的raycaster是否正在查看我加载的OBJ。由于从Cinema4D导出的方式,我相信OBJ是一个有3个child的THREE.Group,而不是THREE.Object。我可以只更改我的raycaster代码行来查找这个组而不是对象吗?raycaster.set(controls.getObject().position,controls.getDirection(),0,40)varintersects=raycaster.intersectObjects(scene.children,true);if(intersects.length>0){//CURRENTLYI

javascript - THREE.js:跨源资源共享策略拒绝跨源图像加载

我的Chrome版本是31.0.1650.57我正在学习THREE.js并从https://github.com/jeromeetienne/threex.planets/下载了一个行星示例但是当我运行earth.html时如标题所说,发生了一个奇怪的错误:THREE.WebGLRenderer59three.min.js:424Cross-originimageloaddeniedbyCross-OriginResourceSharingpolicy.earth.html:1UncaughtSecurityError:Failedtoexecute'getImageData'on'C

javascript - 如何使用 Three.js 检测 JavaScript 中两个对象之间的碰撞?

有很多用于碰撞检测的好东西,例如threex.colliders或此处关于问题的代码片段,但实际上大多数东西都是旧的(一些函数如multiplyVector3已更改,其他已删除。我有一个Object3D(Angular色模型)和一个世界(3D模型:汽车、树木、建筑物等)。我可以使用箭头键移动Angular色(在渲染循环中通过translateX/Y移动它。我想要的是Angular色模型和其他一切(地面和其他一些除外)之间的碰撞检测。所以我需要在Object3D(Angular色)和WorldObjects[](所有对象)之间进行碰撞检测。那么,现在可能有几种方法可以获得想要的结果,哪种

javascript - three.js r72 不再支持THREE.LinePieces,如何用THREE.LineSegments合并多条断开的线?

我刚刚更新到three.jsr72,我在控制台中收到以下关于THREE.LinePieces的警告...THREE.Line:parameterTHREE.LinePiecesnolongersupported.CreatedTHREE.LineSegmentsinstead.尽管有警告,这些线仍将显示为断开连接,但是,对于以下示例,如果我将THREE.LinePieces更新为THREE.LineSegments,则所有断开连接的线都会变为连接状态。varlineMaterial=newTHREE.LineBasicMaterial({color:0x000000,linewidth

javascript - Three.js 中的渐进式加载/LOD/流式网格

我正在使用STL加载器将STL文件加载到three.js场景中。这些STL文件的范围从5mb到50mb。有没有一种方法可以让我在模型加载时逐步加载/流式传输/增加细节级别(不确定正确的术语),这样我的用户就不会在出现任何内容之前盯着空白屏幕几分钟?如果模型有20,000个三Angular形,three.js是否有一种方法可以先加载2,000个,然后再发展到完全详细的模型? 最佳答案 真正的渐进式加载/网格流并不是开箱即用的。不过这会很棒并且可行。它是在没有three.js的情况下使用POP缓冲区的WebGL完成的:http://x3

javascript - THREE.js - 未捕获的类型错误

我刚开始学习使用WebGL和THREE.js我按照YouTube上的教程进行操作,结果得到了以下代码。此代码应显示一个立方体和一个轴。但是,当我尝试显示包含此代码的页面时,出现Javascript错误。错误状态:UncaughtTypeError:this.updateMorphTargetsisnotafunction我不确定我做错了什么,但希望这里熟悉THREE.js的人可以帮助我。非常感谢您的宝贵时间。jQuery(document).ready(function($){varscene=newTHREE.Scene();varcamera=newTHREE.Perspectiv

javascript - THREE.JS 动画的最佳选择

three.js中动画(纹理动画、移动对象、隐藏/显示对象...)的最佳选项是什么?你使用额外的库吗?比如tween.js或者别的什么?谢谢。 最佳答案 Tween.js是流行的方式...查看文章:http://learningthreejs.com/blog/2011/08/17/tweenjs-for-smooth-animation/ 关于javascript-THREE.JS动画的最佳选择,我们在StackOverflow上找到一个类似的问题: htt