草庐IT

myseries_three

全部标签

javascript - Three.js - 未捕获的类型错误 : undefined is not a function

我在使用Three.js时遇到了UncaughtTypeError:undefinedisnotafunction。在我创建THREE.PerspectiveCamera的行中显示错误。脚本是window.requestAnimFrame=(function(callback){returnwindow.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnim

javascript - 在 Three.js 中创建带圆 Angular 的立方体

是否可以在three.js中创建具有自定义半径的圆Angular的立方体,然后能够使用图像为该立方体添加纹理? 最佳答案 您可以使用three.js示例中的RoundedBoxGeometry。constgeometry=newRoundedBoxGeometry(10,10,10,6,2);使用如下模式将其导入到您的项目中:import{RoundedBoxGeometry}from'./threejs/examples/jsm/geometries/RoundedBoxGeometry.js';three.jsr.131

javascript - three.js中有容器类对象改造一群 child 吗?

three.js中是否有容器或节点对象可以将多个网格添加为子对象,以便它们可以一起变形?(一个不可见的容器,允许像在一个组中一样对所有子对象执行转换?)谢谢 最佳答案 Example.vargroup=newTHREE.Group();for(vari=0;ir69+ 关于javascript-three.js中有容器类对象改造一群child吗?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/que

javascript - 在 Three.js 中将图像映射到球体上

我目前正在使用Three.js来尝试创建一些东西。我有一个球体,我正在尝试绘制眼球图像here放在上面。我遇到的问题是结果如下所示:我怎样才能让它在不显得拉伸(stretch)的情况下正确映射?我创建球体和映射纹理的代码如下:vargeometry=newTHREE.SphereGeometry(0.5,100,100);varmaterial=newTHREE.MeshPhongMaterial({map:THREE.ImageUtils.loadTexture('eyeballmap.jpg',THREE.SphericalRefractionMapping)});vareyeba

javascript - Three.js - 正交相机

我正在开发一个显示一些3D模型的应用程序。我们加载模型,创建网格,将它们添加到场景中……标准程序。添加最后一个网格后,我们计算边界框以移动相机并覆盖所有场景,使用总几何体的大小和视口(viewport)的大小进行数学计算。if(bounds.bx/bounds.bybounds是一个对象,包含边界框的宽度和高度。在这个计算之后,我们移动相机(加上一点比例,只是为了美观,我们想要在几何图形和屏幕边框之间留一点空间:))并渲染camera.position.z=r*1.05;到目前为止,这已经实现并运行正常。这是通过PerspectiveCamera完成的。现在我们想改变它并使用Ortho

javascript - 如何像Chrome一样用three.js做一颗星星实验10万颗星星

我希望这次是正确的地方,但我正在尝试弄清楚如何使用three.js以chromeexperiments100,000stars的方式创建星星。已经完成。我试着查看源代码,但它很难破译,它似乎有很多部分,我尝试过使用纹理,但我不知道如何获得太阳周围的辉光或光晕,我将不胜感激获得了解如何完成此操作的人员的帮助。 最佳答案 你看到了吗thisarticle?关于太阳的部分高度概述了如何实现这些效果。您可能想要研究GLSL着色器,这本身就是一个完整的领域。现在最好在源代码中找到着色器并调整它们以查看您的更改会产生什么效果。也可以考虑查看th

javascript - 在运行时更改 three.js 中加载的 .obj 的纹理

我正在尝试在运行时在加载的three.js.obj上交换图像纹理。这是直接来自three.js示例的代码,稍作修改:varcontainer,stats;varcamera,scene,renderer;varmouseX=0,mouseY=0;varwindowHalfX=window.innerWidth/2;varwindowHalfY=window.innerHeight/2;init();animate();functioninit(){container=document.createElement('div');document.body.appendChild(cont

javascript - Three.js THREE.Projector 已移至

我知道版本71中没有THREE.projector(请参阅deprecatedlist),但我不明白如何替换它,尤其是在检测哪个对象已被替换的代码中点击:varvector=newTHREE.Vector3((event.clientX/window.innerWidth)*2-1,-(event.clientY/window.innerHeight)*2+1,0.5);projector.unprojectVector(vector,camera);varraycaster=newTHREE.Raycaster(camera.position,vector.sub(camera.po

javascript - Three.js - 围绕特定 Axis 旋转球体

我有一个问题。在Three.js中,我想围绕倾斜23.5度的Axis旋转一个球体(地球)。我找到了sphere.rotation.x、sphere.rotation.y和sphere.rotation.z,但是当我以正确的比例组合它们时,球体的旋转非常奇怪-它没有永久旋转Axis。我想我需要像sphere.rotation.vector(1,0,-1)这样的函数。有谁知道这个函数是如何调用的以及正确的语法是怎样的?非常感谢您的回答! 最佳答案 您无需了解欧拉Angular或四元数的工作原理即可完成您想要的操作。你可以使用Object

javascript - THREE.js 正交相机缩放到鼠标点

我正在为我们的THREE.js应用开发正交相机。从本质上讲,该摄像头将以2D形式向用户呈现场景(用户可以选择在2D和3D摄像头之间切换)。此相机将允许平移和缩放到鼠标点。我有平移工作,我有缩放工作,但没有缩放到鼠标点。这是我的代码:importReactfrom'react';importTfrom'three';letpanDamper=0.15;letOrthoCamera=React.createClass({getInitialState:function(){return{distance:150,position:{x:8*12,y:2*12,z:20*12},};},ge