草庐IT

times_three

全部标签

javascript - 在 Three.js 中为合并的几何体使用多种 Material

我想使用2个网格创建一棵松树,一个用于树干,另一个用于灌木,这就是我所做的:varpine_geometry=newTHREE.Geometry();varpine_texture_1=THREE.ImageUtils.loadTexture('./res/textures/4.jpg');varpine_geometry_1=newTHREE.CylinderGeometry(25,25,50,6);varpine_material_1=newTHREE.MeshBasicMaterial({map:pine_texture_1});varpine_1=newTHREE.Mesh(p

javascript - 在 three.js 中添加视频作为纹理

我正在处理Three.js的这个示例:http://threejs.org/examples/#canvas_geometry_panorama_fisheye在此示例中,我没有使用6张图像,而是使用5张图像和一个视频作为纹理(视频格式为.ogv)。我对上面的例子进行了如下编辑以实现我的愿望:video=document.createElement('video');video.autoplay=true;video.src="textures/videos/Row1Col1.ogv";varvideoTexture=newTHREE.Texture(video);videoTextu

javascript - 如何显示人类可读的 "time ago"

我的用户上次登录时间为2012年1月25日,星期三,美国标准时间15:50:09我怎样才能将其显示为“10分钟前”。有js吗? 最佳答案 我一直用timeago,它是一个jQuery插件,非常容易使用。主页中的示例是不言自明的:$("abbr.timeago").timeago();将转换此标记:July17,2008进入这个:3yearsago在某些情况下,使用datejs也很有用,特别是如果您想将人类可读格式的日期转换为时间戳,但在您的情况下,我认为您并不真正需要它。 关于javas

javascript - 将 Three.js 场景导出到 STL,保持动画完好无损

我渲染了一个Three.js场景,我想导出它在动画渲染后的样子。例如,在动画播放了大约100帧后,用户点击导出,场景应该按照当时的样子导出到STL。根据我的尝试(即使用STLExporter.js),它似乎仅使用初始位置导出模型。如果已经有办法做到这一点,或者有一个简单的解决方法,我将不胜感激。更新:在深入了解内部结构后,我已经弄清楚(至少表面上)为什么STLExporter不起作用。STLExporter找到所有对象并向它们询问Geometry对象的顶点和面。我的模型有一堆剥皮的骨头。在动画步骤中,骨骼得到更新,但这些更新不会传播到原始Geometry对象。我知道这些变换后的顶点正在

javascript - Three.js:将 3d 位置转换为 2d 屏幕位置

我有一个位置为(x,y,z)的3D对象。如何计算该对象的屏幕位置(x,y)?我已经搜索过它,一个解决方案是我必须找出投影矩阵,然后将3D位置点乘以该矩阵以将其投影到某些2D观看表面(计算机屏幕)上。但是我不知道如何在Three.js中找到这个矩阵。我尝试了这样的转换函数,但它给出了错误的结果functionPoint3DToScreen2D(point3D){varscreenX=0;varscreenY=0;varinputX=point3D.x-camera.position.x;varinputY=point3D.y-camera.position.y;varinputZ=poi

javascript - Google Analytics Real-Time 不显示结果

在GoogleAnalytics中交叉检查时,以下脚本未生成事件:Real-Time部分:Content节——(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*newDate();a=s.createElement(o),m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)})(window

javascript - Three.js tween camera.lookat

我尝试使用Tween.js在Three.js中对camera.lookAt进行补间,但收效甚微。这行得通selectedHotspot=object;vartween=newTWEEN.Tween(camera.lookAt(object.position),600).start();而是将相机直接旋转到object.position。如何获得平滑的旋转?这是渲染函数functionupdate(){lat=Math.max(-85,Math.min(85,lat));phi=THREE.Math.degToRad(90-lat);theta=THREE.Math.degToRad(l

javascript - three.js中 `THREE.OrbitControls`的相机位置变化

THREE.OrbitControls在加载初始相机位置时工作正常,但当使用按钮单击更改相机位置和相机旋转时。相机的位置发生变化,但是在单击Canvas以在新View上旋转相机时,相机的位置突然发生变化相机:Camera=newTHREE.PerspectiveCamera(45,Width/Height,0.1,1000);Camera.position.set(170,120,400);//intialcampositionScene.add(Camera);Camera.position.set(30,167,81);Camera.rotation.set(-0.149,0.3,

javascript - THREE.js 光线转换对单个> 500k 多边形(面)对象非常慢,线与地球相交

在我的项目中,我有一个玩家在地球上行走。地球不仅仅是一个球体,它还有山脉和山谷,所以我需要改变玩家的z位置。为此,我从玩家的位置向单个物体(地球)转换一条光线,我得到它们相交的点并相应地改变玩家的位置。我只在玩家移动时进行光线转换,而不是在每一帧上。对于一个复杂的对象,它需要永远。具有~1m多边形(面)(1024x512分段球体)的对象需要~200ms。光线转换是否针对每张脸?是否有一种传统的快速方法可以在三中实现这一点,比如一些加速结构(八叉树?bvh?——老实说,从我的谷歌搜索中我似乎没有发现三中包含这样的东西)或其他一些想法-开箱即用(无光线转换)方法?vardir=g_Game

javascript - Three.js 中的自定义形状

在我的项目中,我创建的形状是球体,我使用图像作为Material的纹理...如何制作自定义形状(不是球体、矩形等)?例如,如何创建半球?我现在的代码://createatexturetexture=THREE.ImageUtils.loadTexture('red.png');//createasphereshapegeometry=newTHREE.SphereGeometry(50,16,16);//giveitashaperedcolormaterial=newTHREE.MeshLambertMaterial({map:texture});//createanobjectmes