JavaScript – WebGL中的索引缓冲区?

前端之家收集整理的这篇文章主要介绍了JavaScript – WebGL中的索引缓冲区?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试学习一些WebGL(从本教程 http://learningwebgl.com/blog/?page_id=1217).我遵循指南,现在我试图实现我自己的演示.我想创建一个图形对象,其中包含每个单独对象的缓冲区和数据,以显示在场景中.目前,我有一个位置顶点缓冲区,一个纹理坐标缓冲区和一个法线缓冲区.在本教程中,他使用另一个缓冲区,一个索引缓冲区,但仅用于立方体.实际索引缓冲是什么?我应该实现它,它对于除立方体以外的任何东西都有用吗?

解决方法

您的对象的顶点由3D坐标系( euclidian coordinate system)中的位置定义.因此,您可以将您的3D坐标系投影到2D光栅(屏幕或某些目标图像)之后,直到 rasterization process,您可以将每两个以下顶点和线连接起来.您将被称为 wireframe.

线框的问题在于它不是明确的.如果您以特定角度查看线框立方体,则无法说明,立方体如何精确旋转.这是因为您需要使用visibility algorithms来确定多维数据集的哪一部分更靠近观察者的位置(相机的位置).

但线本身不能定义表面,这是确定立方体的哪一侧更接近于其他观察者所必需的.如何在计算机图形中定义曲面的最佳方式是多边形,正好是三角形(它对计算机图形有很多缺点).

所以你现在有三角形定义的立方体(所谓的三角形网格).

但是如何定义哪些顶点形成三角形?由索引缓冲区.它包含顶点缓冲区的索引(与顶点的列表),并告诉栅格化算法,三个顶点形成三角形.有很多方法,如何解释索引缓冲区中的索引以减少相同顶点的重复(一个顶点可能是多个三角形的一部分),您可能会在article about graphics primitives找到一些.

猜你在找的JavaScript相关文章