mirror of
https://github.com/3b1b/manim.git
synced 2025-08-05 16:49:03 +00:00
No need to track vertex index manually
This commit is contained in:
parent
c30b102458
commit
1cf89abf53
2 changed files with 3 additions and 8 deletions
|
@ -55,7 +55,6 @@ class VMobject(Mobject):
|
|||
('point', np.float32, (3,)),
|
||||
('orientation', np.float32, (1,)),
|
||||
('color', np.float32, (4,)),
|
||||
('vert_index', np.float32, (1,)),
|
||||
]
|
||||
stroke_dtype: Sequence[Tuple[str, type, Tuple[int]]] = [
|
||||
("point", np.float32, (3,)),
|
||||
|
@ -1142,11 +1141,7 @@ class VMobject(Mobject):
|
|||
return self.stroke_data
|
||||
|
||||
def get_fill_shader_data(self) -> np.ndarray:
|
||||
points = self.get_points()
|
||||
if len(self.fill_data) != len(points):
|
||||
self.fill_data = resize_array(self.fill_data, len(points))
|
||||
self.fill_data["vert_index"][:, 0] = range(len(points))
|
||||
|
||||
self.fill_data = resize_array(self.fill_data, len(self.get_points()))
|
||||
self.read_data_to_shader(self.fill_data, "point", "points")
|
||||
self.read_data_to_shader(self.fill_data, "color", "fill_rgba")
|
||||
self.read_data_to_shader(self.fill_data, "orientation", "orientation")
|
||||
|
|
|
@ -5,7 +5,6 @@
|
|||
in vec3 point;
|
||||
in float orientation;
|
||||
in vec4 color;
|
||||
in float vert_index;
|
||||
|
||||
out vec3 bp; // Bezier control point
|
||||
out float v_orientation;
|
||||
|
@ -19,5 +18,6 @@ void main(){
|
|||
bp = position_point_into_frame(point);
|
||||
v_orientation = orientation;
|
||||
v_color = color;
|
||||
v_vert_index = vert_index;
|
||||
// Implicit conversion from int to float
|
||||
v_vert_index = gl_VertexID;
|
||||
}
|
Loading…
Add table
Reference in a new issue