three笔记

整个程序的结构


容器

<div id="container"></div>
let container = document.getElementById('container');

场景Scene

var scene = new Three.Scene();
 

相机Camera

var camera = new Three.PerspectiveCamera(70,container.clientWidth/container.clientHeight,0.01, 1000);

渲染器Renderer

var renderer = new Three.WebGLRenderer({antialias: true})
renderer.setSize(container.clientWidth, container.clientHeight);
container.appendChild(renderer.domElement);

几何体Geometry

//创建一个立方体几何对象Geometry
let geometry = new Three.BoxGeometry(0.1,0.1, 0.1);

材质Material

var material=new THREE.MeshLambertMaterial({color:0x0000f

 

辅助三维坐标系AxisHelper

var axisHelper = new Three.AxisHelper(5);

BufferGeometry

      // 创建一个Buffer类型几何体对象
      var geometry3 = new Three.BufferGeometry();
      //类型数组创建顶点数据
      var vertices = new Float32Array([
        0, 0, 0, //顶点1坐标
        0.5, 0, 0, //顶点2坐标
        0, 1, 0, //顶点3坐标

        0, 0, 0, //顶点4坐标
        0, 0, 1, //顶点5坐标
        0.5, 0, 0, //顶点6坐标
      ]);
      // 创建属性缓冲区对象
      var attribue = new Three.BufferAttribute(vertices, 3); //3个为一组,表示一个顶点的xyz坐标
      // 设置几何体attributes属性的位置属性
      geometry3.attributes.position = attribue;
      //类型数组创建顶点颜色color数据
      var colors = new Float32Array([
        1, 0, 0, //顶点1颜色
        0, 1, 0, //顶点2颜色
        0, 0, 1, //顶点3颜色

        1, 1, 0, //顶点4颜色
        0, 1, 1, //顶点5颜色
        1, 0, 1, //顶点6颜色
      ]);
      // 设置几何体attributes属性的颜色color属性
      geometry3.attributes.color = new Three.BufferAttribute(colors, 3); //3个为一组,表示一个顶点的颜色数据RGB
      // 定义几何体顶点法向量数据
      var normals = new Float32Array([
        0, 0, 1, //顶点1法向量
        0, 0, 1, //顶点2法向量
        0, 0, 1, //顶点3法向量

        0, 1, 0, //顶点4法向量
        0, 1, 0, //顶点5法向量
        0, 1, 0, //顶点6法向量
      ]);
      // 设置几何体attributes属性的位置normal属性
      geometry3.attributes.normal = new Three.BufferAttribute(normals, 3); //3个为一组,表示一个顶点的法向量数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值