Just 4 fun!

Of course I can change the world, If you give me a source code

Post Ads (Documentation)

Author Info (Documentation)

style="display:block"
data-ad-client="ca-pub-2623284640924516"
data-ad-slot="8347113188"
data-ad-format="auto">

Wednesday, May 29, 2019

Ánh sáng trong unity2D


Ai cũng biết, Light native trong unity2D là vô dụng vkl T_T. Well, ài viết này sẽ giúp các bạn làm nó trở nên hữu dụng đấy :))) Bắt tay vào làm việc thôi nào :D


Tất nhiên, chúng ta sẽ ko cần code :3 nhưng các bạn nên biết một chút về Photoshop nhé :P Đầu tiên, mình sẽ có hình ảnh cần chịu tác động của ánh sáng, ví dụ ở đây là con sói ngu. Nhớ tạo ra thêm một layer phía trên nó nhé, layer này để empty, nhất thiết phải có :)
Chọn layer trên cùng, sau đó chuột phải, chọn create clipping mask, sau đó dùng brush tool chọn màu gì cũng đc (trắng chẳng hạn) và bôi hết cái mask đó. Ta sẽ thu được cái ảnh như sau:
Xuất nó ra một file ảnh png khác thôi! Rồi import cả 2 cái, ảnh gốc và ảnh trắng vừa tạo vào Unity nhé, chuẩn bị đến bước quan trọng rồi này :v
Chuyển Texture Type của cái ảnh trắng thành Normal map, tích chọn ở ô Create from GrayscaleBumpiness để là 0 và Apply thôi.
Giờ ta phải tạo một Material mới, phần Shader chọn Legacy->Bumped Diffuse

Tiếp theo chỉ việc kéo cái Map vừa tạo vào ô Normalmap và cái ảnh gốc vào Base (RGB) thôi nhé
Phần này là dễ quên lắm nè :3 Sau khi kéo thả các thứ ok ngon lành thì chúng ta phải tiếp tục chọn lại Shader và chuyển về Sprites->Diffuse
Đến đây là ta đã xong rồi :D Kéo thả ảnh gốc vào scene, và kéo cái Material vừa tạo vào phần material. Tạo một cái light bất kì và căn chỉnh trục Z cho xuất hiện trước object là ok rồi nha :))

Chúc các bạn sớm áp dụng được light native vào các dự án game 2D của mình, chứ lạm dụng ảnh và effect để tạo giả light vừa xấu vừa nặng đó nhé :D