25 lines
492 B
Plaintext
25 lines
492 B
Plaintext
shader_type canvas_item;
|
|
//render_mode skip_vertex_transform;
|
|
|
|
uniform sampler2D point_texture;
|
|
|
|
uniform ivec2 point_texture_size;
|
|
uniform ivec2 canvas_size;
|
|
|
|
void vertex() {
|
|
int id = INSTANCE_ID;
|
|
int x = id % point_texture_size.x;
|
|
int y = id / point_texture_size.x;
|
|
// This feels dumb
|
|
vec2 uv = vec2(float(x), float(y));
|
|
vec4 point_data = texture(point_texture, uv);
|
|
|
|
vec2 pos = point_data.xy;
|
|
float angle = point_data.z;
|
|
|
|
VERTEX=pos;
|
|
}
|
|
|
|
void fragment() {
|
|
COLOR=vec4(1, 1, 1, 1);
|
|
} |