ThreeJs的学习:BufferGeometry理解(1) 生成正方形立方体

var bgeometry = new THREE.BufferGeometry();
/*
// BufferGeometry形成一个最简单的平面
// 一个平面由两个三角形组成,每个三角形由3个坐标,每个坐标由XYZ组成
// 所以一个平面需要六个坐标
var vertices = new Float32Array( [
	// 三角形1 - 三个顶点 
	-10 ,10, 0,
	-10 ,-10, 0,
	10 , -10, 0,
	// 三角形2 - 三个顶点 
	10 , -10, 0,
	10,  10, 0,
	-10 ,10, 0
] );
*/
// 每六个坐标形成一个平面,6个平面合并成封闭的一个立方形
var vertices = new Float32Array( [
1,10,10,1,-10,10,1,10,-10,1,-10,10,1,-10,-10,1,10,-10,      // 第一个平面(左)
-1,10,-10,-1,-10,-10,-1,10,10,-1,-10,-10,-1,-10,10,-1,10,10,// 第二个平面(右)
-1,10,-10,-1,10,10,1,10,-10,-1,10,10,1,10,10,1,10,-10,	    // 第三个平面(后)
-1,-10,10,-1,-10,-10,1,-10,10,-1,-10,-10,1,-10,-10,1,-10,10,// 第四个平面(前)
-1,10,10,-1,-10,10,1,10,10,-1,-10,10,1,-10,10,1,10,10,	    // 第五个平面(下)
1,10,-10,1,-10,-10,-1,10,-10,1,-10,-10,-1,-10,-10,-1,10,-10 // 第六个平面(上)
] );

//材质
var material = new THREE.MeshBasicMaterial( { color: 0xff0000 } );
//增加坐标点,坐标点是X,Y,Z的布局,可以自己任意设置
bgeometry.addAttribute( 'position', new THREE.BufferAttribute( vertices, 3 ) );
var mesh = new THREE.Mesh( bgeometry, material );

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值