我正在创建一个具有3个顶点和1个面的简单2D三角形。

如果在材质中使用颜色,效果很好,但是当我使用纹理时,出现[.WebGLRenderingContext-0633E7D8]GL ERROR :GL_INVALID_OPERATION : glDrawElements: attempt to access out of range vertices in attribute 2相同的材质对于使用BoxGeometry创建的对象而言效果很好。

        var wallTexture = THREE.ImageUtils.loadTexture("http://i.imgur.com/RiC9b5J.jpg");

        var wallMaterial = new THREE.MeshLambertMaterial({map: wallTexture});

        var geometry = new THREE.Geometry();

        geometry.vertices.push(new THREE.Vector3(-100, 0, 0));
        geometry.vertices.push(new THREE.Vector3(100, 0, 0));
        geometry.vertices.push(new THREE.Vector3(0, -150, 0));

        geometry.faces.push(new THREE.Face3(0, 1, 2));
        geometry.computeFaceNormals();

        var mesh = new THREE.Mesh(geometry, wallMaterial);

http://jsfiddle.net/6pt9wnk4/8/

  ask by Alex P. translate from so

本文未有回复,本站智能推荐:

1回复

在克隆THREE.Geometry对象中的顶点时出现“向量未定义”警告

我想向网格动态添加新面。 我不断收到此控制台警告: THREE.BufferAttribute.copyVector3sArray():向量未定义 这是仍然导致它的最简单示例。 它可以正常工作-这个示例正确地产生了一个三角形,该三角形是该几何图形的第一个面的克隆-但我无法摆
1回复

视频纹理在THREE.Geometry上

我能找到的唯一例子是在PlaneGeometry或BoxGeometry上使用的视频纹理。 我有一个自定义飞机,我已将视频应用到该飞机。 视频播放(颜色改变)并显示缩放比例(看起来像放大了)。 在右上方的绿色平面上播放的视频是视频所在的自定义几何图形。 THREE.Geom
1回复

如何有效地将THREE.Geometry转换为ArrayBuffer,File或Blob?

我想移动一段我的代码,我在其中构建一个THREE.Geometry对象到HTML5 Web Worker 。 因为我不想将它序列化为字符串(出于明显的性能目的),我想将它转换为可传输的对象,如ArrayBuffer,File或Blob,所以我可以“通过引用”传递它。 您是否知道将TH
2回复

从THREE.Mesh或THREE.Geometry创建CANNON.RigidBody

我创建一个THREE.Mesh使用对象THREE.JSONLoader对象,像这样: 是否可以从THREE.Mesh ( var castle )或THREE.Geometry ( var geometry )对象创建CANNON.RigidBody ? 另一种你可以阅读的方法是:你如
2回复

Three.js:Three.Geometry + LambertMaterial网格物体上的光照不正确

我通过使用最新版本的Three.JS并演示了Three.Geometry照明问题的jsfiddle改进了该问题的先前表述( 先前的问题版本 )。 我无法使依赖项在Stack Snippets中工作,但JSFiddle可以工作: JSFIDDLE展示不正确的照明 请注意,左侧的照明
1回复

Three.js(r75)-为什么THREE.Geometry没有用于存储边的数组?

我知道有多种绘制边缘的方法,但是为什么THREE.Geometry只有一个顶点数组和一个面数组呢? 我正在看这个例子 ,发现边缘阵列很有用,以这种方式访问​​它们要容易得多。
2回复

Three.js tile使用平面几何体具有多个纹理

所以我正在尝试建立一个由瓷砖组成的基于3D的世界。 我已经成功地使用平面几何和高度值等设法做到了这一点。但是现在我已经到了可能需要改变一切的地步。 问题是我想要一个瓷砖有多个纹理(使用着色器因为我想要混合它们)。 我能够全局地做到这一点(因此每个图块将具有相同的纹理+使用一些uv映
1回复

three.js - ipad管几何上的画布纹理

我有一个管几何的三维模型。 生产方面有18000个坐标。 我正在采取每9个坐标,以便实际绘制9000个坐标来构建管几何。 我只能使用CanvasRenderer 。 现在,当我在WebGLRenderer使用vertexColors: THREE.VertexColors时,模型在每
1回复

使用THREE.geometry的简单四面体

从THREEjs.org/docs提供的示例中: 通过指定顶点来创建三角形非常简单。 如果我想继续使用此方法制作四面体,我发现自己要重复三遍此代码,一次针对四面体的每个面,每次更改一个矢量来定义组成四面体的三角形之一... 如果定义四面体的第四个矢量,是否有一个简单的方法可以创建
1回复

使用ShaderMaterial的自定义几何体的纹理加载在Three.js中不起作用

在这里,我有一个有四个顶点和4个面的几何(金字塔) - 这是我的RawShaderMaterial - 可以从脚本访问“images / test.png”。 这对我来说似乎微不足道,但质地根本没有出现。 我只能看到一个白色的金字塔。 你能告诉我它究竟出了什么问题吗