我最近开始在three.js上进行实验,并一直在想,是否有一种方法可以随机化从现有几何图形中创建的网格中的脸的大小。
Three.js对于低聚工作是很好的,但是生成的网格的对称性在一定程度上破坏了效果--我正在寻找一种方法,让每个面部都有一个稍微不同的大小,或者抖动/旋转,可以说是给它一个更“手工制作”的外观。
我认为可能有一种方法可以使用math.random,但我是一个javascript新手,不知道如何使用它。
这是我想给出一个不那么统一的外观的对象的代码:
function createObject() {
var geometry = new THREE.SphereGeom
我正在尝试使用Three.js加载一些STL文件。模型加载正确,但有太多的三角形,我想合并/平滑。
我已经成功地在其他3D格式中应用了平滑的加载地形,但是我不能用BufferGeometry来实现它,因为它是用STLLoader加载STL文件的结果。
_
var material = new THREE.MeshLambertMaterial( { ... } );
var path = "./models/budah.stl";
var loader = new THREE.STLLoader();
loader.load( path, function ( objec
我有一个基本的步行动画在搅拌机,我试图出口到THREE.js。在搅拌机回放中它看起来不错:
现在,在与THREE.js导出程序一起导出之后,它在浏览器上如下所示:
几何是坏的,不是在所有的身体部分,但肯定有一些问题。我现在不知道该怎么做,我试着用几个选项进行导出--检查/未检查,没有结果。
我还阅读了这篇文章中的解释,我认为我遵循了所有必要的步骤,但仍然得到了这个奇怪的动画:
我目前用于加载JSON模型/动画的代码如下所示:
var loader = new THREE.JSONLoader();
var action = {}, mi
我在Three.js中加载了在Sketctup (https://graviditetsberegner.dk/square.skp)中创建的dae模型。我发现在从Sketchup到Three.js时,dae模型在纹理放置和不同组件的分层放置方面是最好的。我使用以下代码加载模型,而不对网格进行任何修改: var modelLoader = new THREE.ColladaLoader();
modelLoader.load("https://www.graviditetsberegner.dk/square.dae", function (dae) {
我已经在Three.js中创建了一个自定义几何图形。现在,我想创建一个使用平滑着色的Lambert材质的网格。使用循环,我创建了顶点数组,然后是面,然后调用
geometry.computeCentroids();
geometry.computeFaceNormals();
geometry.computeVertexNormals();
var colorMaterial = new THREE.MeshLambertMaterial( {color: 0x0000ff, side: THREE.DoubleSide} );
var mesh = new THREE.Mesh( geo