2017-07-28 45 views
5

Có bất kỳ thuật toán đơn giản nào như sơ đồ Voronoi để chia bất kỳ mặt phẳng hình chữ nhật nào thành hình tam giác, cuối cùng, sử dụng # điểm được xác định trước.Hình tam giác GLSL shader

Thành thật mà nói, tôi phải viết một Shader đoạn rất đơn giản như this.

Về mặt lý thuyết, trình đổ bóng Voronoii này có thể được 'nâng cấp' bằng hình tam giác Delaunay nhưng muốn tìm giải pháp thanh lịch hơn.

+0

Bạn có muốn nó hoạt hình như ví dụ của bạn không? – HolyBlackCat

+0

Có, nó cần phải có một hình ảnh động đơn giản như ví dụ – VVK

+0

Cách đơn giản và hiệu quả nhất là chỉ cần render một lưới tam giác ... –

Trả lời

1

Điều đầu tiên xuất hiện trong tâm trí của tôi là tạo n điểm ngẫu nhiên (với hạt giống cụ thể) để điền khối lượng hình trụ. Các điểm tam giác sẽ là giao điểm của các đường thẳng giữa các điểm và mặt phẳng đi qua trục trụ. Các hình ảnh động sẽ chỉ cần thực hiện bằng cách xoay máy bay ...

tôi nhìn thấy nó một cái gì đó như thế này:

cylinder

Vì vậy, các điểm lân cận nên được kết nối với nhau với nhau. Hình thành tứ diện lấp đầy thể tích của hình trụ. Vì vậy, tạo lưới tứ diện đồng đều và thêm nhiễu ngẫu nhiên vào vị trí điểm (với hạt giống cụ thể).

toàn bộ nhiệm vụ này rất giống với render mặt cắt ngang của 4D lưới xem:

Khi simplex 4D cũng là tứ diện. Sự khác biệt duy nhất là bạn đang ở chế độ 3D và cắt bằng máy bay 3D.

+0

Tôi đã đảo ngược thiết kế ví dụ đáng yêu này https://www.shadertoy.com/view/ MdfBzl – VVK

+0

@VVK có thể là bạn có thể trả lời cho người khác .... – Spektre

0

Bạn có thể đảo ngược kỹ sư ví dụ này shadertoy.com/view/MdfBzl như tôi đã làm. Cảm ơn mattz.

Các vấn đề liên quan