mirror of
https://github.com/Ttanasart-pt/Pixel-Composer.git
synced 2024-11-14 22:43:53 +01:00
50 lines
1.3 KiB
Plaintext
50 lines
1.3 KiB
Plaintext
function __3dLightPoint() : __3dLight() constructor {
|
|
color = c_white;
|
|
intensity = 1;
|
|
radius = 10;
|
|
|
|
static submitSel = function(params = {}) {
|
|
shader_set(sh_d3d_wireframe);
|
|
preSubmitVertex(params);
|
|
shader_reset();
|
|
}
|
|
|
|
static submitShader = function(params = {}) { params.addLightPoint(self); }
|
|
|
|
static preSubmitVertex = function(params = {}) {
|
|
var _rot = new __rot3(0, 0, 0).lookAt(position, params.camera.position);
|
|
|
|
var rot = matrix_build(0, 0, 0,
|
|
_rot.x, _rot.y, _rot.z,
|
|
1, 1, 1);
|
|
var sca = matrix_build(0, 0, 0,
|
|
0, 0, 0,
|
|
0.6, 0.6, 0.6);
|
|
var ran = matrix_build(0, 0, 0,
|
|
0, 0, 0,
|
|
radius * 2, radius * 2, radius * 2);
|
|
var pos = matrix_build(position.x, position.y, position.z,
|
|
0, 0, 0,
|
|
1, 1, 1);
|
|
|
|
matrix_stack_clear();
|
|
matrix_stack_push(pos);
|
|
matrix_stack_push(rot);
|
|
|
|
matrix_set(matrix_world, matrix_stack_top());
|
|
vertex_submit(VB_UI, pr_linestrip, -1);
|
|
|
|
matrix_stack_push(sca);
|
|
matrix_set(matrix_world, matrix_stack_top());
|
|
vertex_submit(VB_UI, pr_linestrip, -1);
|
|
matrix_stack_pop();
|
|
|
|
matrix_stack_push(ran);
|
|
matrix_set(matrix_world, matrix_stack_top());
|
|
vertex_submit(VB_UI, pr_linestrip, -1);
|
|
matrix_stack_pop();
|
|
|
|
matrix_stack_clear();
|
|
matrix_set(matrix_world, matrix_build_identity());
|
|
}
|
|
} |