Dự án 9: Texture từ ảnh chụp thành tile liền mạch 1024 × 1024
Biến ảnh tự chụp bức tường đá (hoặc ảnh CC0) thành texture lặp hoàn hảo cho game: chụp đúng cách, Perspective Crop, cân sáng bằng High Pass, Filter Offset lộ đường nối, vá bằng Clone Stamp, xóa chi tiết lặp – rồi dùng Wrap Mode Repeat trong Unity 6.
Photoshop hiển thị tiếng Anh. Từ có gạch chân chấm là thuật ngữ trên giao diện — chạm để xem nghĩa, hoặc tra Từ điển Anh–Việt.
Tải về rồi mở bằng Photoshop: (Ctrl+O).
Nhiều game 2D – nhất là top-down, sidescroller phong cách bán tả thực, menu nền – dùng texture lấy từ ảnh chụp: đá, gỗ, đất, vải. Ảnh chụp cho chất liệu thật mà vẽ tay mất hàng giờ. Nhưng ảnh chụp thẳng không lặp được: sáng loang một góc, mép không khớp nhau, có một viên đá "đặc biệt" lặp lại thành họa tiết lộ liễu. Dự án này dạy quy trình chuẩn biến ảnh thành tile liền mạch (seamless) – kỹ năng còn dùng cho bộ nền marketing, họa tiết UI và photobash ở các dự án sau. Và một nguyên tắc bắt buộc: chỉ dùng ảnh tự chụp hoặc ảnh có giấy phép cho phép dùng thương mại.
Hình mẫu
Thời gian ước tính: khoảng 60 phút. Kết quả là tile 1024 × 1024 px – lũy thừa của 2 để Unity nén tốt và tạo mipmap chuẩn.
Chuẩn bị
- Ảnh nguồn: dùng file luyện tập (ảnh do khóa học tự tạo, bạn dùng tự do) hoặc tự chụp: đứng thẳng góc với bức tường, trời râm hoặc trong bóng râm (ánh sáng đều, không bóng đổ gắt), không bật đèn flash, chụp độ phân giải cao nhất, lùi đủ xa để có ít nhất 4–6 hàng đá.
- Nguồn ảnh CC0: các thư viện texture như Poly Haven hay ambientCG phát hành dưới CC0 (dùng thương mại, không cần ghi công). Unsplash và Pexels không phải CC0 mà có giấy phép riêng: được dùng miễn phí cả thương mại, nhưng không được bán lại ảnh nguyên trạng. Luôn lưu đường link và ngày tải.
- Công cụ chính: Perspective (Phối cảnh) Crop (Cắt khung) Tool (C), , , , Clone Stamp (Con dấu nhân bản) (S), Healing Brush (Cọ chữa lành) (J), , .
- Thiết bị: bước vá đường nối bằng Clone Stamp là nơi bút Wacom, XP-Pen, Huion hoặc iPad + Apple Pencil (Bút chì) phát huy nhất – bật Pen Pressure (Lực nhấn bút) cho Opacity (Độ mờ đục) để hòa mép nhẹ nhàng. Dùng chuột: đặt Clone Stamp Hardness (Độ cứng cọ) 0%, Opacity 50%, Flow (Lưu lượng) 50% và tô nhiều lớp mỏng – chậm hơn chút nhưng kết quả tương đương.
| Màu | Mã hex | Dùng cho |
|---|---|---|
#8a8070 | Đá sáng – tông trung bình mục tiêu | |
#6f685e | Đá tối | |
#3a352e | Mạch vữa | |
#b8ad98 | Cạnh trên nhận sáng | |
#808080 | Xám trung tính – nền của layer High Pass |
Các bước
- Chỉnh ảnh gốc: mở ảnh, chuyển thành Smart Object (Đối tượng thông minh). : Highlights −40, Shadows +40 để nén dải sáng; Texture +10. Bỏ hết bão hòa thừa (Vibrance −10) – texture game cần màu trung tính để đặt vào nhiều cảnh.
- Cắt vuông và nắn thẳng: Perspective Crop Tool (giữ chuột trên Crop Tool), bấm bốn góc theo hàng đá để các mạch vữa ngang thật sự nằm ngang. Đặt W và H trên thanh Options là 1024 px. Nhấn Enter. Ảnh giờ vuông, thẳng góc như chụp chính diện.
- Chọn vùng không có vật lạ: nếu có cỏ, vết sơn, ổ điện… dùng Spot Healing Brush (J) hoặc Lasso (Dây thòng lọng) + để xóa. Texture lặp lại hàng trăm lần – một bụi cỏ sẽ thành một hàng bụi cỏ.
- Cân sáng bằng High Pass: nhân đôi layer (Ctrl+J), Radius khoảng 60–100 px – chỉ giữ lại chi tiết nhỏ, xóa vùng sáng loang lớn. Thêm layer dưới tô xám
#808080hoặc màu trung bình của đá, đặt layer High Pass chế độ Linear Light Opacity 50%. Thử bật tắt: góc sáng loang biến mất, chất đá vẫn còn. - Cân lại màu tổng: Adjustment Layer (Lớp điều chỉnh) Curves đưa giá trị trung bình về khoảng
#8a8070(dùng Eyedropper (Ống hút màu) với Sample Size "31 by 31 Average" để đo). Texture quá sáng hoặc quá tối sẽ khó dùng chung với các asset khác. - Gộp và Offset (Dịch chuyển (bọc vòng)): gộp tất cả thành một layer mới (Ctrl+Alt+Shift+E – Stamp Visible). : Horizontal +512, Vertical +512, chọn Wrap Around. Bốn mép ảnh giờ gặp nhau ở giữa thành một chữ thập – đường nối lộ rõ.
- Vá đường nối dọc: Clone Stamp (S), Sample: Current Layer, Hardness 0–20%, cỡ 80–120 px. Alt + bấm để lấy mẫu từ vùng đá xa đường nối, rồi tô theo mạch vữa. Ưu tiên nối mạch vữa trước – mắt người nhận ra đường nối qua các đường thẳng bị gãy.
- Vá đường nối ngang: làm tương tự với đường ngang. Ở chỗ giao giữa, dùng Healing Brush (J) để hòa màu. Không tô gần mép ảnh (lúc này mép là phần đã liền sẵn từ ảnh gốc).
- Offset lần hai để kiểm tra: lại +512/+512 (về vị trí cũ) rồi thử thêm +256/+256. Ở mọi vị trí, không được thấy đường thẳng nào bị gãy hay vùng mờ do Clone Stamp.
- Xóa chi tiết lặp lộ: , file mới 3072 × 3072, tô bằng Pattern ( › Contents: Pattern). Nheo mắt nhìn: viên đá nào quá sáng, vết nứt nào quá đặc biệt tạo thành "hàng lối"? Quay lại tile, làm dịu chúng bằng Clone Stamp hoặc Dodge (Làm sáng)/Burn nhẹ.
- Kiểm tra cuối: lặp 3 × 3 phải trông như một bức tường lớn tự nhiên – không đường nối, không đốm sáng lặp, không viên đá nổi bật. Kiểm tra cả ở zoom 25% (cách người chơi thấy texture).
- Xuất: , PNG (hoặc JPG Quality 90 nếu không cần alpha), đúng 1024 × 1024 →
stone_wall_1024.png. Ghi nguồn ảnh gốc vào filesources.txtcạnh texture. - Dùng trong Unity 6: kéo PNG vào Project. Inspector: Texture Type Default (hoặc Sprite nếu dùng cho Sprite Renderer chế độ Tiled), Wrap Mode: Repeat, Max Size 1024, Compression Normal Quality. Với Sprite Renderer: Draw Mode Tiled, Mesh Type Full Rect để texture lặp khi kéo dài sprite.
Nâng cao (tùy chọn)
- Biến thể tile: làm 3 biến thể từ cùng ảnh (đá rêu, đá nứt, đá ẩm) có mép giống hệt nhau – chỉ sửa vùng giữa. Trộn ngẫu nhiên trong Tilemap giúp nền bớt lặp.
- Normal map cho ánh sáng 2D: (nếu bản Photoshop của bạn còn tính năng 3D) hoặc dùng công cụ ngoài, rồi gán vào Secondary Textures của Sprite trong URP 2D để đá phản ứng với Light 2D.
- Gỗ và vải: lặp lại quy trình với ảnh ván gỗ – chú ý vân gỗ chạy một chiều nên chỉ cần vá kỹ đường nối dọc theo thớ.
Mẹo & trick học nhanh
Thẳng góc, trời râm, không flash, nhiều hàng đá trong khung. Ảnh chụp tốt giúp bạn bớt hàng chục phút cân sáng và nắn phối cảnh.
Filter › Other › Offset với Wrap Around kéo mép vào giữa. Nếu sau khi vá, Offset ở mọi vị trí đều không thấy đường nối – tile của bạn đã liền mạch.
CC0 (Poly Haven, ambientCG) là tự do nhất. Unsplash, Pexels có giấy phép riêng cho dùng thương mại nhưng cấm bán lại ảnh nguyên trạng. Ảnh không rõ nguồn – không dùng.