Cụ thể chúng ta sẽ rút ra kết quả và lý giải vì sao nó như thế để tìm ra logic từ đó sử dụng Rigid Body dễ hơn.
Rigid Body là gì? tại sao chúng ta cần Rigid Body?
Rigid Body sử dụng sức mạnh máy tính để tính toán cho chuyển động, hiệu ứng trông thực tế hơn, trong một số trường hợp va chạm đơn giản chúng ta có thể keyframe thay thế để làm giả, còn những trường hợp phức tạp hơn thì cần phải nhờ đến Rigid Body.
Một ví dụ nhỏ để dễ liên tưởng, nếu bạn phải diễn 1 quả bóng bàn nảy trên một bề mặt trơn láng thì trông có vẻ không quá phức tạp, nếu bạn thay bề mặt đấy thành ra gồ ghề đầy răng cưa đủ loại thì mọi chuyện sẽ khác, bạn sẽ phải đổ mồ hôi vì hướng của nó sẽ thay đổi, độ xoáy, độ nảy....bạn sẽ phải hợp lý hóa nó, và kết quả là mất nhiều thời gian suy nghĩ và giảm năng suất (nhưng đổi lại máy tính của bạn không phải tính toán gì nhiều).
Còn nếu, thay vào đó bạn sử dụng rigid body, mọi thứ sẽ trở nên đơn giản hơn khi bạn chỉ cần chỉnh attribute, play tới play lui xem hiện tượng (đổi lại máy tính sẽ tính toán nhiều hơn 1 tí), khi nào ưng ý bạn có thể bake ra keyframe và làm sạch keyframe.
Tất nhiên ở trên chỉ là một ví dụ nhỏ để cho thấy muốn thực tế và năng suất thì luôn nên dùng Rigid Body thay cho keyframe, còn nhiều trường hợp bất khả kháng mà phải sử dụng Rigid Body ví dụ như một quả bom mini phát nổ, vỏ của nó vỡ hàng trăm mảnh, ban đầu các mảnh vỡ được đẩy lên trên không sau đó bị trọng lượng hút xuống, và khi chúng bay chúng sẽ xoay quanh trục, khi rớt xuống sẽ va chạm mặt đất và va chạm lẫn nhau......
Rigid Body trong Blender.
Đầu tiên và khá dễ dàng chúng ta có thể tìm thấy menu Rigid Body ở Tool Shelf (T).
Chúng ta sẽ bắt gặp 2 nút đứng cạnh nhau đó là Add Active và Add Passive.
Bạn chọn Object rồi ấn nút để Add Active hoặc Passive.
Active là gì?
Khi ấn nút Add Active, Object sẽ có được những tính chất của một đồ vật ngoài đời, nghĩa là nó có thể chịu tác động của những lực xung quanh (Lực hút, Lực Gió....), và va chạm với những thứ xung quanh.
Passive là gì?
Một vật được Add Passive thì chỉ có khả năng va chạm, không có khả năng chịu tác động bởi một lực nào hết, do đó nó đứng yên mãi mãi.
Một Thử nghiệm nhỏ:
Chúng ta sẽ cho 1 khối Cube rớt xuống và va chạm vào 1 cái sàn.
1. Trong Object Mode bạn nhấn shift A/ Add/ Plane, scale plane lên 3 hay 4 lần gì đấy cho nó to to khoảng bằng Grid.
2. Sau đó Add Cube.
** Mục đích của chúng ta là thử xem Active và Passive là gì. Cụ thể mình muốn cái Plane làm sàn và Cube làm vật va chạm.
Vì sàn đứng yên không chịu tác động lực gì hết và bị va chạm nên chúng ta sẽ add cho nó Passive, và khối Cube sẽ là Active vì nó sẽ là vật va chạm.
3. Sau đó bạn select khối Cube và nhấn nút add Active (hoặc Ctrl R).
4. Select plane và add Passive (hoặc Shift Ctrl R).
5. Sau đó bạn có thể rotate khối Cube và Plane 1 tí. Mục đích để cho chúng ta thấy được nhiều hiện tượng hơn. (có thể xem hình)
nhấn alt A để play.
Nhận xét:
+ Khối Cube rớt xuống.
+ Plane vẫn đứng yên.
+ Cube va chạm với Plane.
+ Cube va chạm và nảy lên 1 tí.
+ Cube trượt 1 tí trên Plane sau đó ngừng lại (nếu bạn cho cái sàn quá dốc thì cube có thể trượt không dừng lại và rớt xuống)
Chúng ta rõ ràng chẳng làm gì cao siêu cả, bạn chỉ add cho nó active rigid body thôi mà, sao nó tính ra nhiều thứ thế?
Giải thích
1. Bây giờ chúng ta tự hỏi xem, tại sao khối cube lại rớt xuống?
Trong thực tế, một vật rớt xuống nhờ trọng lực, trong 3D và cụ thể riêng trường hợp này thì là như thế, khối Cube chịu tác động bởi trọng lực. Vậy nghĩa là khi chúng ta Add Active thì đã có khuyến mãi thêm trọng lực.
Vậy tìm trọng lực ở đâu?
Trong cửa số Properties /phần Scene, chúng ta sẽ thấy phần Gravity được check.Mở ra chúng ta sẽ thấy có 3 trục X, Y, Z với phần Z được điền là -9.810.
Điều đó nghĩa là nó sẽ đẩy Object đi xuống theo trục Z theo một gia tốc là 9.810.
Trọng lực trong Blender được gọi là Gravity Field.
Thật ra nó khác trọng lực ngoài đời ở chỗ, bạn được chỉnh độ mạnh của nó, chỉnh luôn hướng của nó cũng được nữa (X, Y, Z).
Ví dụ: Chúng ta cho X = 9.8 (hoặc số nào cũng được), và Y,Z =0 thì khối Cube sẽ bay sang ngang.
2. Vì sao Plane đứng yên?
Vì Passive thì chỉ có nhiệm vụ đứng yên rồi chờ va chạm, không gì có thể làm nó di chuyển trừ khi chúng ta keyframe nó.
3. Tại sao Cube va chạm với Plane?
Vì Cube và Plane cùng loại, cùng là Rigid Body, dù là Active hay Passive, chúng vẫn là Rigid Body. Hiển nhiên sau này sẽ có nhiều thứ không cần phải là Rigid Body vẫn va chạm được với Rigid Body.
4. Tại sao nó lại trượt?
Nó trượt và ngừng khi cái sàn không quá nghiêng, nếu sàn quá nghiêng nó sẽ trượt và rơi ra ngoài.Khi nó trượt sẽ có một lực ma sát trượt kéo nó lại.
Vậy nếu chúng ta muốn nó không trượt nữa chúng ta có nhưng phương án sau:
+ Giảm độ nghiêng của plane.
+ Tăng lực ma sát trượt.
Lực ma sát trươt tìm ở đâu?
+ Chọn khối Cube.
+ Qua cửa số Properties, bật ở phần Physics.
+ Chúng ta sẽ bắt gặp menu Rigid Body Collision trong đó có Friction, chúng ta tăng từ 0,5 thành 1.
** Lưu ý do là va chạm nên lực ma sát trượt có ở cả 2 bên (vừa có ở khối Cube và Plane), do đó chúng ta chọn plane và tăng Friction lên thành 1 để tăng lực ma sát trượt.
5. Tại sao nó lại nảy?
Cũng phụ thuộc vào nhiều thứ, từ cả 2 phía sàn và vật va chạm.
Ví dụ có 2 viên bi sắt,1 nhỏ nhưng nặng, 1 to nhưng nhẹ.
Như các bạn đã biết thì viên nhỏ nặng sẽ có khả năng nảy nhiều hơn
Tuy nhiên nếu cho viên nhỏ và nặng nảy trên 1 cái nệm mềm, và cho viên to nhẹ nảy trên nền gạch thì chưa biết ai sẽ nảy nhiều hơn ai.
Vậy vấn đề vì sao nó lại nảy nằm ở : Độ nặng, độ đặc ruột của vật va chạm, độ cứng bề mặt va chạm tuy nhiên không phụ thuộc vào kích thước.
Trong Blender độ nặng hay độ đặc ruột có thể xem là Mass. Ngoài ra còn có Bounciness để điều khiển độ nảy.
Tìm Bounciness và Mass ở đâu?
Bounciness
+ Ở phía dưới Friction sẽ là Bounciness.
+ Bounciness là khả năng nảy lên xuống.
+ Bounciness = 1 nghĩa là Object đấy sẽ không hấp thụ nhiều lực từ đó làm chúng nảy nhiều hơn
+ Bounciness có ở Plane và Cube trong trường hợp này.
Mass
Ở menu phía trên Rigid Body sẽ có 1 slider tên là Mass.
Bounciness = 0 nghĩa là không bounce, 1 là bounce nhiều (có thể cho bounciness 1 số lớn hơn bằng cách đánh số vào)
Mass thì càng lớn càng nặng và đặt ruột.
Kết luận:
Khi add Rigid Body cho một Object thì chúng ta cũng đã add vào chúng rất nhiều thứ, để điều chỉnh những attribute đấy chúng ta có thể vào phần Physics, Scene.
Chức năng của những menu còn lại:
Tại Menu Rigid Body tại Tool Shelf cũng có một số menu khác và chúng khá dễ dùng:
Change Shape:
Vi dụ bạn chọn khối cube, change shape lại thành Sphere thì Rigid Body sẽ tìm cái Sphere tưởng tượng của khối Sphere đấy và mọi va chạm vật lý sẽ dựa trên khối sphere tưởng tượng đấy.
Calculate Mass:
Tính toán độ đặc ruột dựa vào một số Preset có sẵn .
Copy from Active:
Chọn Object bình thường cần được add active, và một Object đã được add active. Lệnh này sẽ add active cho Object mới, nhưng mọi setting trước đó của Object được add active được được chuyển sang.
Bake To Keyframe:
Khi ưng ý bạn chọn Object cần Bake, rồi nhấn Bake. Mọi chuyển động của Object đó đều được bake thành Keyframe và máy tính không phải suy diễn nữa.
_____________________________________________________________________________
Tác Giả: Đặng Duy Quang từ http://phanmemblender.com/
