<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Displacement: khi nào cần bump 3D thật thay vì normal map]]></title><description><![CDATA[<p dir="auto"><img src="/community/assets/uploads/files/d5-material-cover-d5-mat-05.png" alt="Displacement: khi nào cần bump 3D thật thay vì normal map" class=" img-fluid img-markdown" /></p>
<p dir="auto">Mảng tường đá chẻ ở sảnh khách sạn, camera đặt sát, ánh sáng xiên từ đèn hắt tường. Normal map đã cắm,<br />
Normal Intensity đã kéo hết cỡ, nhưng nhìn kỹ vẫn thấy sai: viền ngoài của mảng đá vẫn là một đường<br />
thẳng tắp, bóng đổ giữa các viên không có chiều sâu, và khi camera đi ngang thì đá không "chuyển" như<br />
vật thể ba chiều. Đó là lúc normal map hết đất diễn và phải chuyển sang Displacement. Bài này nói khi<br />
nào đáng đổi, đổi thế nào, và cái giá phải trả.</p>
<h2>Tính năng này giải quyết việc gì</h2>
<p dir="auto">Normal map chỉ đánh lừa cách bề mặt nhận sáng — hình học vẫn phẳng. Displacement thì tác động thật vào<br />
hình dạng. D5 có hai mức:</p>
<ul>
<li><strong>Displacement thị sai</strong> — mức nhẹ, làm bề mặt trông lồi lõm khi nhìn nghiêng mà không đụng vào lưới<br />
model. Trước đây D5 chỉ có mức này.</li>
<li><strong>True Displacement</strong> — mức thật, sửa trực tiếp cấu trúc hình học của model để bề mặt lồi lõm đúng<br />
nghĩa. Đây là tính năng mới hơn và là lý do chính để đọc bài này.</li>
</ul>
<p dir="auto">Mẫu vật liệu Displacement còn thêm một kênh rất hữu dụng cho kiến trúc là <strong>Opacity Map</strong> — dùng để<br />
cắt vật liệu theo vùng, tạo bề mặt rỗng và không đều. Tài liệu D5 nêu đúng những ứng dụng mà dân diễn<br />
hoạ Việt Nam hay gặp: hàng rào cây xén, hàng rào gỗ, bề mặt đan tre.</p>
<p dir="auto"><img src="/community/assets/uploads/files/d5-material-asset-d5-mat-05-1.png" alt="Hàng rào đan bằng nan gỗ trong D5 với bảng thông số Height và Opacity Map của mẫu Displacement" class=" img-fluid img-markdown" /></p>
<p dir="auto">Thông số đặc thù duy nhất của mẫu này là <strong>Height</strong>, thường được định nghĩa bằng một height map. Quy<br />
ước rất đơn giản: <strong>trắng là phần lồi, đen là phần lõm</strong>.</p>
<p dir="auto"><img src="/community/assets/uploads/files/d5-material-asset-d5-mat-05-2.png" alt="Height map dạng ảnh xám, vùng sáng là phần nhô lên, vùng tối là phần lõm xuống" class=" img-fluid img-markdown" /></p>
<h2>Ứng dụng trong kiến trúc và thiết kế</h2>
<ul>
<li><strong>Tường đá chẻ, đá ong, gạch trần ở cận cảnh.</strong> Đây là ca kinh điển. Chỉ đáng dùng True Displacement<br />
khi camera đứng gần đủ để thấy đường viền của mảng tường. Ở khoảng cách phối cảnh tổng thể thì normal<br />
map cho kết quả không khác mấy mà nhẹ hơn nhiều lần.</li>
<li><strong>Địa hình dốc, ruộng bậc thang, bãi cỏ lượn sóng.</strong> Height map là cách nhanh nhất để tạo địa hình<br />
mà không phải dựng lưới trong phần mềm 3D. Tài liệu D5 dùng đúng ví dụ này: nạp sẵn height map để<br />
định nghĩa địa hình.</li>
<li><strong>Hàng rào cây xén và vách đan tre.</strong> Đây là chỗ Opacity Map thay được cả buổi dựng model. Một tấm<br />
phẳng cộng opacity map cho ra vách đan có khe hở thật, ánh sáng lọt qua đúng chỗ.</li>
<li><strong>Mặt tiền lam gạch bông gió.</strong> Cùng nguyên lý với vách đan tre, nhưng lưu ý là nếu người xem nhìn<br />
xuyên qua lam ở góc hẹp thì vẫn nên dựng model thật, vì phần cắt bằng opacity không có bề dày.</li>
<li><strong>Sân vườn lát đá tự nhiên.</strong> Ở Lotuz Studio, với cảnh sân vườn nhìn từ tầm mắt người, chúng tôi<br />
thường bật True Displacement cho riêng mảng lối đi gần camera và giữ normal map cho phần xa. Cách<br />
này lấy được phần lớn cảm giác thật mà không đội thời gian render lên gấp nhiều lần.</li>
</ul>
<h2>Thông số chính</h2>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th>Thông số</th>
<th>Ý nghĩa</th>
<th>Ghi chú theo tài liệu D5</th>
</tr>
</thead>
<tbody>
<tr>
<td>Height</td>
<td>Độ cao lồi lõm, thường lấy từ height map</td>
<td>Trắng là phần lồi, đen là phần lõm</td>
</tr>
<tr>
<td>Opacity Map</td>
<td>Bản đồ cắt vật liệu theo vùng</td>
<td>Tạo bề mặt rỗng, không đều cho hàng rào cây xén, hàng rào gỗ, bề mặt đan tre</td>
</tr>
<tr>
<td>True Displacement</td>
<td>Công tắc bật displacement thật, sửa hình học model</td>
<td>Nằm trong nhóm More Settings. Nếu kênh Height chưa có map thì nút More không hiện ra</td>
</tr>
<tr>
<td>Subdivision Level</td>
<td>Số lần chia nhỏ lưới</td>
<td>Càng cao chi tiết càng mịn, nhưng tăng số mặt, tăng bộ nhớ và tăng thời gian render. Đặt quá tay có thể gây thoát ứng dụng bất ngờ</td>
</tr>
<tr>
<td>Vertical Offset</td>
<td>Bù trừ vị trí model theo phương đứng</td>
<td>Thuật toán hiện tại đẩy bề mặt lên theo chiều dương của pháp tuyến, nên model đặt trên nền sẽ bị nhô lên. Dùng thông số này kéo model về đúng cao độ, không bị lơ lửng cũng không cắm xuyên nền</td>
</tr>
<tr>
<td>Maintain Continuity</td>
<td>Giữ kết cấu khối kín và liền</td>
<td>Tránh model bị nứt hoặc thủng lỗ sau khi displacement</td>
</tr>
<tr>
<td>Remesh</td>
<td>Dựng lại lưới trước khi chia nhỏ</td>
<td>Tắt thì chia nhỏ theo lưới gốc, bật thì chia nhỏ theo lưới đã dựng lại. Dùng cho model có topology xấu, tam giác lộn xộn</td>
</tr>
</tbody>
</table>
<h2>Cách làm</h2>
<ol>
<li>
<p dir="auto"><strong>Đổi mẫu vật liệu sang Displacement.</strong> Thông số Height chỉ xuất hiện ở mẫu này.</p>
</li>
<li>
<p dir="auto"><strong>Nạp height map vào kênh Height.</strong> Chưa có map thì nút More Settings sẽ không hiện, và anh em sẽ<br />
không tìm thấy công tắc True Displacement ở đâu cả. Đây là bẫy đầu tiên và cũng là câu hỏi hay gặp<br />
nhất về tính năng này.</p>
<p dir="auto"><img src="/community/assets/uploads/files/d5-material-asset-d5-mat-05-3.png" alt="Bảng thông số Height của mẫu Displacement với nút mở rộng thiết lập được đánh dấu, công tắc True Displacement đang tắt" class=" img-fluid img-markdown" /></p>
</li>
<li>
<p dir="auto"><strong>Kiểm không gian màu của height map.</strong> Height map là dữ liệu độ cao chứ không phải màu, nên nó<br />
không thuộc nhóm phải để sRGB như base color và AO.</p>
</li>
<li>
<p dir="auto"><strong>Bật True Displacement trong More Settings.</strong> Sau khi bật, nhóm thông số riêng mới hiện ra.</p>
<p dir="auto"><img src="/community/assets/uploads/files/d5-material-asset-d5-mat-05-4.png" alt="Công tắc True Displacement đã bật, hiện danh sách chế độ gồm Height Field Tracing và Subdivision Displacement" class=" img-fluid img-markdown" /></p>
</li>
<li>
<p dir="auto"><strong>Đặt Subdivision Level vừa đủ.</strong> Bắt đầu từ mức thấp rồi tăng dần tới khi hình dáng đủ đọc, đừng<br />
nhảy thẳng lên mức cao nhất. Mỗi nấc là một lần nhân số mặt của model.</p>
</li>
<li>
<p dir="auto"><strong>Chỉnh Vertical Offset để model chạm nền.</strong> Vì displacement đẩy bề mặt lên theo pháp tuyến, mảng<br />
sân hoặc mảng tường sẽ nhô lên khỏi vị trí cũ. Kéo Vertical Offset xuống cho tới khi nó khớp lại<br />
với các khối xung quanh.</p>
</li>
<li>
<p dir="auto"><strong>Bật Maintain Continuity nếu thấy nứt.</strong> Nhất là với khối kín như bồn hoa, bậc thềm, khối trang<br />
trí — thiếu tuỳ chọn này thì các mặt tách nhau ra thành khe hở.</p>
</li>
<li>
<p dir="auto"><strong>Bật Remesh nếu model có topology xấu.</strong> Tài liệu nói rõ mục tiêu của việc dựng lại lưới là sửa<br />
khuyết tật của lưới gốc chứ không sửa cấu trúc model, nên nó không thay được việc dựng hình cẩn thận<br />
từ đầu.</p>
</li>
</ol>
<h2>Mẹo và lưu ý</h2>
<ul>
<li><strong>Model LiveSync không dùng được True Displacement.</strong> Đây là giới hạn quan trọng nhất phải nhớ, và<br />
nó đánh đúng vào quy trình phổ biến nhất ở Việt Nam là dựng hình bên SketchUp rồi đồng bộ thẳng sang<br />
D5. Công tắc sẽ bị làm mờ. Muốn dùng thì vào danh sách tài nguyên cảnh, chuột phải lên model rồi<br />
chuyển nó thành model không đồng bộ thời gian thực. Đổi lại là từ đó về sau model đó không tự cập<br />
nhật khi anh em sửa bên phần mềm dựng hình nữa — nên hãy chuyển ở bước cuối, khi hình học đã chốt.</li>
<li><strong>Đặt Subdivision Level quá tay có thể làm D5 thoát đột ngột.</strong> Tài liệu cảnh báo thẳng chuyện này.<br />
Với cảnh lớn, hãy tăng từng nấc và lưu file trước mỗi lần tăng.</li>
<li><strong>Nhìn kỹ đường viền chứ đừng nhìn giữa mảng.</strong> Cách phân biệt normal map với displacement thật<br />
nhanh nhất: nhìn vào silhouette. Normal map cho viền phẳng, displacement cho viền răng cưa theo đúng<br />
hình lồi lõm. Nếu trong khung hình của anh em không có chỗ nào thấy viền, thì displacement thật gần<br />
như không đáng tiền.</li>
<li><strong>Displacement và cỏ không đi cùng nhau ở nhóm UV.</strong> Mẫu Displacement nằm trong danh sách không hỗ<br />
trợ Triplanar và không hỗ trợ UV Randomizer, nên nếu anh em quen dùng Triplanar để cứu UV loạn thì<br />
ở đây phải xử lý UV trước ở phần mềm dựng hình.</li>
<li><strong>Cân nhắc chi phí thật.</strong> Với ảnh tĩnh một góc thì tăng thời gian render vài phút là chấp nhận<br />
được. Với phim 3D thì nhân số khung hình lên, và lúc đó câu hỏi không còn là "đẹp hơn không" mà là<br />
"có kịp deadline không".</li>
</ul>
<h2>Dùng kèm</h2>
<ul>
<li>So sánh với normal map và các kênh PBR khác: <a href="/community/topic/213/h%E1%BB%87-v%E1%BA%ADt-li%E1%BB%87u-pbr-c%E1%BB%A7a-d5-c%C3%A1c-k%C3%AAnh-v%C3%A0-%C3%BD-ngh%C4%A9a-t%E1%BB%ABng-k%C3%AAnh">Hệ vật liệu PBR của D5: các kênh và ý nghĩa từng kênh</a></li>
<li>Vì sao mẫu Displacement không dùng được Triplanar: <a href="/community/topic/214/ch%E1%BB%89nh-map-v%C3%A0-uv-t%E1%BB%B7-l%E1%BB%87-%C4%91%C3%BAng-th%E1%BB%B1c-t%E1%BA%BF-h%E1%BA%BFt-co-k%C3%A9o">Chỉnh map và UV: tỷ lệ đúng thực tế, hết co kéo</a></li>
<li>Cỏ và địa hình dùng mẫu riêng: <a href="/community/topic/218/c%E1%BB%8F-trong-d5-m%E1%BB%8Dc-c%E1%BB%8F-m%E1%BB%99t-n%C3%BAt-v%C3%A0-c%C3%A1ch-ki%E1%BB%83m-so%C3%A1t">Cỏ trong D5 — mọc cỏ một nút và cách kiểm soát</a></li>
<li>Tổng quan chuyên mục vật liệu: <a href="/community/topic/212/v%E1%BA%ADt-li%E1%BB%87u-trong-d5-hi%E1%BB%83u-pbr-tr%C6%B0%E1%BB%9Bc-khi-ch%E1%BB%89nh-th%C3%B4ng-s%E1%BB%91">Vật liệu trong D5 — hiểu PBR trước khi chỉnh thông số</a></li>
</ul>
<hr />
<blockquote>
<p dir="auto">Bài nằm trong bộ giáo trình D5 Render do <strong>Lotuz Studio</strong> biên soạn và chia sẻ mở cho cộng đồng<br />
diễn hoạ kiến trúc Việt Nam. Lotuz Studio là công ty tư vấn thiết kế kiến trúc tại Đà Nẵng, 10+ năm<br />
làm thiết kế và diễn hoạ cho dự án trong nước lẫn quốc tế.<br />
Xem thêm tại <a href="https://lotuz.vn" rel="nofollow ugc">lotuz.vn</a> — hoặc <a href="https://www.lotuz.ai" rel="nofollow ugc">lotuz.ai</a> nếu anh em quan tâm<br />
bộ công cụ AI cho Photoshop do chúng tôi tự phát triển.</p>
</blockquote>
<h2>Video tham khảo (YouTube)</h2>
<ul>
<li><div class="lotuz-yt" data-yt="B8IZISGCn94"><span class="lotuz-yt-media"><img class="lotuz-yt-thumb" src="https://i.ytimg.com/vi/B8IZISGCn94/hqdefault.jpg" alt="True Displacement is coming to D5 3.0! Facade material tips: glass, stucco, stone, and polycarbonate (D5 Official)" /><button class="lotuz-yt-play" aria-label="Phát video"></button></span><span class="lotuz-yt-title">True Displacement is coming to D5 3.0! Facade material tips: glass, stucco, stone, and polycarbonate (D5 Official)</span></div></li>
<li><div class="lotuz-yt" data-yt="5Prr2rOTOp8"><span class="lotuz-yt-media"><img class="lotuz-yt-thumb" src="https://i.ytimg.com/vi/5Prr2rOTOp8/hqdefault.jpg" alt="Real-time true displacement with tips to fix messy UV and model topology in one click! (D5 Official)" /><button class="lotuz-yt-play" aria-label="Phát video"></button></span><span class="lotuz-yt-title">Real-time true displacement with tips to fix messy UV and model topology in one click! (D5 Official)</span></div></li>
<li><div class="lotuz-yt" data-yt="jXJ3QgHdbzQ"><span class="lotuz-yt-media"><img class="lotuz-yt-thumb" src="https://i.ytimg.com/vi/jXJ3QgHdbzQ/hqdefault.jpg" alt="D5 Render  | Displacement Maps (D5 Official)" /><button class="lotuz-yt-play" aria-label="Phát video"></button></span><span class="lotuz-yt-title">D5 Render  | Displacement Maps (D5 Official)</span></div></li>
<li><div class="lotuz-yt" data-yt="CItzj08w80g"><span class="lotuz-yt-media"><img class="lotuz-yt-thumb" src="https://i.ytimg.com/vi/CItzj08w80g/hqdefault.jpg" alt="Using DISPLACEMENT MAPS in D5 Render! More Realistic Materials! (The Rendering Essentials)" /><button class="lotuz-yt-play" aria-label="Phát video"></button></span><span class="lotuz-yt-title">Using DISPLACEMENT MAPS in D5 Render! More Realistic Materials! (The Rendering Essentials)</span></div></li>
<li><div class="lotuz-yt" data-yt="ATkxCwyPQFc"><span class="lotuz-yt-media"><img class="lotuz-yt-thumb" src="https://i.ytimg.com/vi/ATkxCwyPQFc/hqdefault.jpg" alt="D5 RENDER - CUSTOM DISPLACEMENT MAPS (Clearstory Imaging)" /><button class="lotuz-yt-play" aria-label="Phát video"></button></span><span class="lotuz-yt-title">D5 RENDER - CUSTOM DISPLACEMENT MAPS (Clearstory Imaging)</span></div></li>
</ul>
<h2>Tài liệu tham khảo</h2>
<ul>
<li><a href="https://docs.d5render.com/user-guide/material/displacement" rel="nofollow ugc">D5 Render Docs — Mẫu vật liệu Displacement</a> — Height, Opacity Map và toàn bộ thông số True Displacement</li>
<li><a href="https://docs.d5render.com/user-guide/material" rel="nofollow ugc">D5 Render Docs — Material</a> — so sánh với kênh Normal và cách D5 tự sinh normal</li>
<li><a href="https://docs.d5render.com/user-guide/material/how-do-i-adjust-the-material-uv-and-why-does-adjusting-the-uv-have-no-effect" rel="nofollow ugc">D5 Render Docs — Chỉnh UV và vì sao chỉnh UV không có tác dụng</a> — danh sách mẫu không hỗ trợ Triplanar và UV Randomizer</li>
<li><a href="https://polyhaven.com/textures" rel="nofollow ugc">Poly Haven Textures</a> — nhiều bộ texture kèm sẵn height map để thử displacement</li>
</ul>
]]></description><link>https://lotuz.ai/community/topic/217/displacement-khi-nào-cần-bump-3d-thật-thay-vì-normal-map</link><generator>RSS for Node</generator><lastBuildDate>Wed, 26 Aug 2026 17:12:44 GMT</lastBuildDate><atom:link href="https://lotuz.ai/community/topic/217.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 12 Aug 2026 07:13:55 GMT</pubDate><ttl>60</ttl></channel></rss>