Blender (phần mềm)

**Blender** là một phần mềm đồ họa 3D miễn phí và nguồn mở, được sử dụng để làm phim hoạt hình, kỹ xảo, ảnh nghệ thuật, mẫu in 3D, phần mềm tương tác 3D và Video game. Các tính năng của Blender bao gồm tạo mẫu 3D, UV unwrapping, áp vân bề mặt, mô phỏng khói, chất lỏng, hạt và chuyển động cơ thể, điêu khắc, hoạt họa, phối hợp chuyển động, camera tracking, rendering và chỉnh sửa video.

## Lịch sử

Blender đã được công ty Hà Lan NeoGeo bắt đầu phát triển như một ứng dụng nội bộ, và dựa trên dấu thời gian của những file mã nguồn đầu tiên, ngày 2 tháng 1 năm 1994 được xem là ngày sinh nhật của Blender. Phiên bản 1.00 được ra mắt vào tháng 1 năm 1995, với người thiết kế đứng đầu là lập trình viên và người sở hữu công ty Ton Roosendaal, người trước đó từng viết một chương trình dò tia tên Traces cho Amiga vào năm 1989. Cái tên "Blender" được lấy cảm hứng từ một bài hát của ban nhạc Yello, từ album Baby mà NeoGeo đã sử dụng trong Showreel.

Ngày 1 tháng 1 năm 1998, Blender được cho ra mắt công khai trên mạng là phần mềm miễn phí của SGI. Công ty NeoGeo sau đó bị giải thể và các hợp đồng của nó được sở hữu lại bởi công ty khác. Sau đó, Ton Roosendaal sáng lập Not a Number Technologies (NaN) vào tháng 6 năm 1998 để tiếp tục phát triển và phát hành chương trình này. Chương trình này đã được phát hành dưới dạng shareware đến khi NaN phá sản năm 2002. Lúc đó cũng có nghĩa là việc phát triển Blender bị hoãn.

Vào tháng 5 năm 2002, Roosendaal sáng lập tổ chức phi lợi nhuận Blender Foundation với mục đích là để tìm đường tiếp tục phát triển và quảng bá Blender như một phần mềm nguồn mở. Ngày 18 tháng 7 năm 2002, Roosendaal khởi xướng chiến dịch "Free Blender" để tìm nguồn tài trợ, với mục đích là làm Blender trở thành nguồn mở theo các điều khoản của GNU General Public License với giá 100.000 Euro (tương đương 100.670 đô la Mỹ cùng thời). Ngày 7 tháng 9 năm 2002, số tiền trên đã được thu thập đủ và mã nguồn của Blender được công khai. Hiện tại, Blender là một phần mềm miễn phí mã nguồn mở và đang phát triển nhanh chóng bởi cộng đồng, cộng thêm 15 lập trình viên được thuê bởi Blender Institute.

### Suzanne
Vào khoảng tháng 2 năm 2002, công ty đang phát triển Blender là NaN rõ ràng không ổn định và phải giải thể vào tháng 3 năm đó. Tuy vậy, họ đã đưa ra thêm một phiên bản nữa là Blender 2.25, với mô hình 3D của đầu con tinh tinh (tuy trong phần mềm được gọi là "monkey", tức "khỉ"). Mô hình đó được tạo bởi Willem-Paul van Overbruggen (SLiD3), cũng là người đặt tên nó là Suzanne theo con đười ươi trong bộ phim Jay and Silent Bob Strike Back.

Suzanne là mô hình 3D được Blender cung cấp với cùng mục đích thử nghiệm như những mô hình thông dụng hơn. Là một mô hình với chỉ 500 mặt, Suzanne có sẵn trong Blender và được dùng để nhanh chóng thử nghiệm với các chức năng khác trong phần mềm.

## Tính năng
* Công cụ tạo ra bộ khung hình một cách nhanh chóng
* Hỗ trợ giao diện cho các *[[script]]* Python
* Hoạt hình với công cụ tạo ra biến dạng, mô phỏng dòng nước,...
* Từ phiên bản 2.76 có giao diện tiếng Việt.
* Hỗ trợ OSL (Ngôn Ngữ Tô Bóng Mở) của Công ty Sony

## Geometry Nodes

**Geometry Nodes** không phải là một công cụ đơn lẻ mà là một hệ thống làm việc dựa trên node (*node-based workspace*). Mục đích chính của Geometry Nodes là cho phép người dùng tạo, điều khiển và biến đổi hình học (*geometry*) theo quy trình (*procedurally*). Thay vì chỉnh sửa từng điểm (*vertex*), cạnh (*edge*) hay mặt (*face*) một cách thủ công, người dùng có thể xây dựng một chuỗi thao tác thông qua việc kết nối các node chức năng. Điều này giúp dễ dàng thay đổi, tùy biến và tạo ra các kết quả phức tạp mà không cần lặp lại các bước thủ công.
Geometry Nodes mở ra nhiều khả năng sáng tạo và tối ưu hóa quy trình làm việc trong Blender, đặc biệt trong các lĩnh vực sau:

* **Phân tán đối tượng (''Scattering'')**: Geometry Nodes giúp rải hàng ngàn đối tượng như cây cối, đá, cỏ trên một bề mặt một cách tự nhiên và có kiểm soát, sử dụng các yếu tố như mật độ, texture, hoặc thuộc tính bề mặt để phân bổ hợp lý.
* **Mô hình hóa quy trình (''Procedural Modeling'')**: Hệ thống node giúp tạo ra các mô hình có cấu trúc phức tạp hoặc có thể tùy chỉnh linh hoạt, chẳng hạn như kiến trúc, đường phố, hoặc các kết cấu lặp lại. Người dùng chỉ cần thay đổi tham số đầu vào thay vì thao tác thủ công trên từng đối tượng.
* **Hiệu ứng hình ảnh và chuyển động (''Visual Effects & Motion Graphics'')**: Geometry Nodes được ứng dụng rộng rãi để tạo ra các hiệu ứng động như tăng trưởng, biến đổi hình dạng, hoặc các chuyển động phức tạp dựa trên quy tắc toán học, mang lại sự linh hoạt và sáng tạo trong thiết kế đồ họa động.

Geometry Nodes là một trong những lĩnh vực phát triển mạnh mẽ nhất của Blender trong những năm gần đây. Từ khi được giới thiệu vào phiên bản **Blender 2.92**, hệ thống này liên tục được cải tiến, đặc biệt từ **Blender 3.0** với sự ra đời của **Fields**, giúp đơn giản hóa cách người dùng tương tác và thiết kế hệ thống node.

Sự phát triển của Geometry Nodes đánh dấu một bước chuyển đổi quan trọng trong quy trình làm việc 3D, hướng tới tính linh hoạt và phi phá hủy (*non-destructive*), mở ra **khả năng sáng tạo mới** và nâng cao hiệu suất làm việc cho các nghệ sĩ 3D. Nó không chỉ là một công cụ mạnh mẽ mà còn là một xu hướng quan trọng trong tương lai của Blender, thay thế và cải tiến nhiều phương pháp truyền thống trong mô hình hóa và hiệu ứng.

## Yêu cầu phần cứng
So với các ứng dụng 3D khác thì Blender yêu cầu phần cứng thấp hơn nhiều lần. Tuy nhiên, cấu hình mạnh là điều cần thiết để có thể làm việc với những hiệu ứng phức tạp.

## Tham khảo