草庐IT

three-way-merge

全部标签

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 - Handlebars : What is the best way to pass multiple parameters to a registerHelper function?

我正在使用Handlebars在表格中呈现数据。其中一个数据项需要处理,它会考虑一些参数以提供结果。模板化文本示例:{{getOutputByParametersparam1=DataFieldName1param2=DataFieldName2}}相应的registerHelper会写成:var__this=this;Handlebars.registerHelper('getOutputByParameters',function(params){__this.getOutputByParameters(params.hash.param1,params.hash.param2)}

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

javascript - Three.js更新纹理图片

我正在使用three.js创建一个minecraft纹理编辑器,类似于this.我只是想降低基本的点击和绘画功能,但我似乎无法弄清楚。我目前为每个立方体的每个面都有纹理,并通过使用以下函数制作着色器Material来应用它们。this.createBodyShaderTexture=function(part,update){sides=['left','right','top','bottom','front','back'];images=[];for(i=0;i然后,当用户单击网格上的任何位置时,纹理文件本身会使用Canvas进行更新。发生更新,但除非刷新页面,否则更改不会显示在

javascript - Mesh 在 three.js 中突然消失了。剪裁?

场景:在我的场景中,我实现了一个顶点着色器,它在相机位置的xz轴上定位一个平面网格。因此,如果相机移动,平面网格也会随之移动。这导致视觉效果,即在移动相机时,平面网格似乎保持固定在原地。这似乎工作正常。问题:如果我将相机(以及平面网格)移动到一定程度,网格就会突然消失。我意识到消失和平面的大小之间似乎有关系,即平面越大,在平面网格消失之前我可以移动相机的次数越多。此外,在我的测试场景中,平面网格仅在沿负x轴、正x轴或负z轴移动时消失。在正z轴上移动时它不会消失。我假设它与某种剪裁有关,但可能是错误的。重新计算平面网格的边界框没有效果。有什么想法吗?干杯fiddle:我创建了一个显示问题

javascript - 如何在 Three.js 中剪切立方体

我想知道以前是否有人遇到过这个特定问题。根据我对如何使用webgl和three.js绘制3d对象的基本理解,我似乎无法找到一种方法来创建一个平行六面体(或者我认为这就是它的调用方式),它确实从立方体几何中继承了它的几何形状,但没有'所有Angular都是90度。我的目标是拥有这样的东西:结果应该和什么很相似-moz-transform:skew(0,-45.1deg);会为html元素做。谁能帮我找到解决方案?感谢您的考虑。 最佳答案 您需要做的是创建一个立方体网格,然后将剪切矩阵应用于立方体的几何体。该操作以您描述的方式扭曲了几何

javascript - Three.js - 在 THREE.Points 上用于透明 Canvas 纹理贴图的 depthWrite 与 depthTest

问题depthWrite:false和depthTest:false之间有显着差异吗?使用depthTest是否提供性能优势?选择一个或另一个会牺牲功能吗?原始问题我想渲染一个THREE.Points对象,每个点都有半透明的圆圈。我使用了从canvas元素加载的THREE.Texture并将其传递给THREE.PointsMaterial上的map属性>.透明度没有完全起作用,一些圆圈很好地重叠,但其他圆圈表现得好像它们是实心的。我在了解了THREE.PointsMaterial上的depthWrite:false和depthTest:false后修复了它。我在哪里我有一个代码示例(嵌

javascript - 如何将标签添加到 THREE.Mesh?

目标是在将鼠标悬停在网格上时将Three.Mesh名称显示为标签。我们如何在Three.js中做到这一点谁能给个示例代码? 最佳答案 接受挑战!工作代码示例位于:http://stemkoski.github.com/Three.js/Mouse-Tooltip.html这个目标似乎有三个主要步骤,每个步骤我都分解成较小的示例程序。(1)判断鼠标指向哪个场景元素。请参阅:http://stemkoski.github.com/Three.js/Mouse-Over.html(2)将要显示的文本呈现为图像(为此我使用了Canvas元素