vizicities/src/engine/PickingMaterial.js

39 wiersze
897 B
JavaScript
Executable File

import THREE from 'three';
import PickingShader from './PickingShader';
// FROM: https://github.com/brianxu/GPUPicker/blob/master/GPUPicker.js
var PickingMaterial = function() {
THREE.ShaderMaterial.call(this, {
uniforms: {
size: {
type: 'f',
value: 0.01,
},
scale: {
type: 'f',
value: 400,
}
},
// attributes: ['position', 'id'],
vertexShader: PickingShader.vertexShader,
fragmentShader: PickingShader.fragmentShader
});
this.linePadding = 2;
};
PickingMaterial.prototype = Object.create(THREE.ShaderMaterial.prototype);
PickingMaterial.prototype.constructor = PickingMaterial;
PickingMaterial.prototype.setPointSize = function(size) {
this.uniforms.size.value = size;
};
PickingMaterial.prototype.setPointScale = function(scale) {
this.uniforms.scale.value = scale;
};
export default PickingMaterial;