Cách tối ưu hóa bản đồ trong trình chỉnh sửa búa: 10 bước (có hình ảnh)

Mục lục:

Cách tối ưu hóa bản đồ trong trình chỉnh sửa búa: 10 bước (có hình ảnh)
Cách tối ưu hóa bản đồ trong trình chỉnh sửa búa: 10 bước (có hình ảnh)
Anonim

Bạn có muốn tăng tốc hiệu suất của bản đồ tùy chỉnh của mình, không bị sa lầy vào việc hiển thị các trục trặc và giảm thời gian biên dịch không? Dưới đây là một số mẹo giúp bạn tối ưu hóa bất kỳ bản đồ nào trong Hammer.

Các bước

Tối ưu hóa bản đồ trong Hammer Editor Bước 1
Tối ưu hóa bản đồ trong Hammer Editor Bước 1

Bước 1. Phong tỏa các phòng

Đây là điều bắt buộc. Nếu có BẤT KỲ rò rỉ nào trong bản đồ, trình biên dịch sẽ không thể xác định ranh giới của bản đồ và sẽ cố gắng hiển thị tất cả mọi thứ trong bản đồ cùng một lúc. Tệ hơn nữa, bất kỳ cổng khu vực nào, bàn chải gợi ý và dấu vết trong bản đồ sẽ không hoạt động, khiến chúng trở nên vô dụng. Ngoài ra, nước sẽ không hiển thị chính xác nếu có bất kỳ rò rỉ nào trên bản đồ.

  • Trong hình 1a, căn phòng rõ ràng là không được niêm phong. Nếu bạn biên dịch bản đồ này với sự rò rỉ đó, vvis (phần của trình biên dịch xác định dữ liệu khả năng hiển thị) sẽ không thể xác định ranh giới của bản đồ, vì các tầm nhìn sẽ chỉ "lọt" ra khoảng trống đen bên ngoài bản đồ của chúng ta.
  • Trong Hình 1b, căn phòng được niêm phong và sẽ được biên dịch một cách chính xác.
  • Để kiểm tra rò rỉ, trước tiên hãy đảm bảo rằng có ít nhất một thực thể trong bản đồ (chẳng hạn như "info_player_start"), nếu không, điều này sẽ không hoạt động. Lưu và biên dịch BSP bằng cách nhấn F9 hoặc vào File -> Run Map. Chọn "Bình thường" cho Chạy BSPvà chọn "Không" cho cả hai Chạy VISChạy RAD (cũng nhớ kiểm tra "Không chạy trò chơi sau khi biên dịch" hộp). Sau khi biên dịch xong, hãy đóng nhật ký biên dịch và đi tới Bản đồ -> Tải tệp điểm. Nếu có bất kỳ rò rỉ nào, nó sẽ yêu cầu bạn xác nhận thao tác (ví dụ: "Tải tệp điểm mặc định? [C: / Program Files / ----]) Chọn" Có "và bạn sẽ thấy một đường màu đỏ nhô ra từ thực thể gần nhất * ra ngoài qua khu vực rò rỉ. (* Đây là lý do tại sao bạn cần một thực thể, chổi hoặc điểm, trong bản đồ của bạn. Nó không hoạt động với chổi thế giới hoặc chi tiết.) Bịt kín chỗ rò rỉ, biên dịch lại BSP và tải tệp điểm. Nếu tất cả đã được niêm phong, nó sẽ chỉ chuyển đến một thư mục trống trong Steam / steamapps / GAMERTAG / GAME / mapsrc thư mục. Luôn kiểm tra rò rỉ trước khi bản đồ được phát hành cho công chúng.
Tối ưu hóa bản đồ trong Hammer Editor Bước 2
Tối ưu hóa bản đồ trong Hammer Editor Bước 2

Bước 2. Tạo cọ bằng "tools / toolsnodraw"

Đảm bảo rằng bạn luôn tạo cọ bằng công cụ / công cụ kết cấu trước và sau đó chỉ kết cấu những gì người chơi có thể nhìn thấy từ quan điểm của người chơi. Nếu bạn chỉ nhìn thấy một mặt của bức tường, thì hãy tạo họa tiết cho mặt có thể nhìn thấy đó.

Tối ưu hóa bản đồ trong Hammer Editor Bước 3
Tối ưu hóa bản đồ trong Hammer Editor Bước 3

Bước 3. Giảm số lượng bàn chải và khuôn mặt

Bất cứ khi nào có thể, hãy cố gắng tạo hình học bằng một vài cọ vẽ lớn hơn là một nghìn cọ vẽ nhỏ. Nhiều cọ hơn tương đương với nhiều khuôn mặt hơn và nhiều khuôn mặt hơn đồng nghĩa với hiệu suất và thời gian biên dịch chậm hơn. Điểm mấu chốt: nếu bạn có thể tạo hình học phức tạp với một hoặc hai bút vẽ, tại sao phải sử dụng nhiều hơn thế?

Trong hình 3a, có hai bàn chải: bàn chải bên trái được tạo bằng Công cụ Arch tạo ra bàn chải 8 mặt với 40 mặt và bàn chải bên phải được tạo từ một bàn chải cắt đơn chỉ có 11 mặt. Sau đó đạt được bằng cách sử dụng Công cụ cắt (Shift + X). Để đạt được điều sau, trước tiên bạn nên tạo hình dạng hình học mong muốn từ Công cụ Arch để tham khảo. Sau đó, tạo một bàn chải có cùng chiều dài, chiều rộng và chiều cao với vòm tham chiếu và đặt nó cao hơn một chút so với tham chiếu. Chọn bàn chải và cắt các góc. (bạn có thể cần thay đổi kích thước lưới ("-" để giảm, "+" để tăng) và / hoặc di chuyển thủ công các đỉnh (Shift + V) của vòm tham chiếu để gắn vào điểm lưới gần nhất.) Bây giờ bạn có một bàn chải giống hệt nhau về mặt hình học, nhưng chỉ có ít mặt hơn

Tối ưu hóa bản đồ trong Hammer Editor Bước 4
Tối ưu hóa bản đồ trong Hammer Editor Bước 4

Bước 4. Sử dụng tốt các brush chi tiết

Bút vẽ thế giới chặn khả năng hiển thị, niêm phong bản đồ và chia BSP thành "lá", về cơ bản đây là cách của trình biên dịch để xác định những gì có thể và không thể nhìn thấy tại bất kỳ thời gian và địa điểm nhất định nào. Bàn chải chi tiết được thiết kế để về cơ bản là "vô hình" đối với trình biên dịch. Bàn chải duy nhất nên là bàn chải thế giới là các bức tường, sàn và trần của một căn phòng. Khá nhiều thứ khác trong phòng không phải là một thực thể hoạt động và không cản trở tầm nhìn của người chơi đáng kể nên được gắn với một bàn chải func_detail (buộc bằng Ctrl + T). Vì các bàn chải chi tiết không chặn khả năng hiển thị, chúng sẽ không được biên dịch trong vvis tính toán và sẽ không chia bản đồ thành nhiều vùng hiển thị hơn (điều này tốt trong hầu hết các trường hợp). Hãy cảnh báo rằng nó cũng sẽ không niêm phong bản đồ. Chỉ cần đảm bảo rằng tất cả các bút vẽ trên thế giới đóng dấu bản đồ và không có bất kỳ vấn đề nào.

Tối ưu hóa bản đồ trong Hammer Editor Bước 5
Tối ưu hóa bản đồ trong Hammer Editor Bước 5

Bước 5. Sử dụng các cổng thông tin khu vực và bàn chải gợi ý một cách thích hợp

Cổng thông tin khu vực và bàn chải gợi ý là những cách tuyệt vời để hạn chế khả năng hiển thị và tăng hiệu suất nếu được thực hiện đúng cách. Tuy nhiên, bạn không nên đặt những thứ này ở mọi hành lang và cửa sổ, vì số lượng để tính toán những gì được cho là sẽ được hiển thị và thời điểm rất có thể vượt qua chỉ hiển thị toàn bộ căn phòng cùng một lúc. Thay vào đó, bạn chỉ nên ngăn cách các phòng với nhiều chi tiết. Điều này sẽ giúp máy tính của bạn không phải hiển thị nhiều đối tượng không cần thiết và giúp tăng hiệu suất mà không gây áp lực lớn cho các tính toán về khả năng hiển thị.

Tối ưu hóa bản đồ trong Hammer Editor Bước 6
Tối ưu hóa bản đồ trong Hammer Editor Bước 6

Bước 6. Sử dụng chất làm tắc (ít)

Các hàm tương tự như một cổng vùng kín, vì nó không hiển thị những gì đằng sau nó. Tuy nhiên, nó khác với cổng thông tin khu vực kín ở chỗ nó không cần phải niêm phong một căn phòng (nó có thể đứng tự do và không chạm vào bút vẽ thế giới) và nó chỉ chặn các mô hình 3D (hay còn gọi là đạo cụ). Công cụ này rất tốn kém về việc sử dụng bộ nhớ, vì vậy bạn chỉ nên sử dụng các bộ đệm khi có một mô hình 3D đắt tiền đằng sau một bức tường đứng trống không thể bị bịt kín bởi các vật thể.

Tối ưu hóa bản đồ trong Hammer Editor Bước 7
Tối ưu hóa bản đồ trong Hammer Editor Bước 7

Bước 7. Thêm 3D Sky-box

Không hoàn toàn cần thiết, nhưng nó sẽ giúp làm cho bản đồ trông lớn hơn nhiều mà không làm chậm đáng kể FPS (khung hình trên giây). Hộp bầu trời 3D thường được tạo cho bản đồ ngoài trời "lớn", nhưng bạn có thể tạo nó cho bản đồ trong nhà nếu bạn có thể nhìn thấy ngoại cảnh qua cửa sổ hoặc thứ gì đó. Các hộp bầu trời 3D rất rẻ để hiển thị và có thể làm cho một bản đồ nhỏ xuất hiện lớn hơn tới 16 lần vì các hộp bầu trời 3D được đặt thành tỷ lệ 1/16 trong Hammer và sau đó được mở rộng trong quá trình biên dịch.

Tối ưu hóa bản đồ trong Hammer Editor Bước 8
Tối ưu hóa bản đồ trong Hammer Editor Bước 8

Bước 8. Thêm sương mù

Trên bản đồ ngoài trời lớn, sương mù có thể hạn chế số lượng chi tiết được hiển thị và nó có thể làm cho bản đồ của bạn trông thực tế hơn trong quá trình này. Chỉ cần thêm một thực thể env_fog_controller vào bản đồ của bạn. Trên tùy chọn "Bật sương mù" trong Thuộc tính đối tượng, chọn "Có". Tiếp theo, chỉnh sửa Máy bay Clip Far Z theo ý thích của bạn, điều này sẽ loại bỏ tất cả các bàn chải sau khoảng cách đó, loại bỏ công cụ hiển thị các đối tượng không cần thiết (Máy bay Clip Far Z giá trị phải lớn hơn Kết thúc sương mù giá trị).

Tối ưu hóa bản đồ trong Hammer Editor Bước 9
Tối ưu hóa bản đồ trong Hammer Editor Bước 9

Bước 9. Đừng quay cuồng với Lightmap Scale

Về cơ bản, tỷ lệ bản đồ ánh sáng xác định mức độ sắc nét hoặc bóng mờ được hiển thị trên hình học. Số lượng lớn hơn làm giảm chất lượng bóng, nhưng có thể tăng hiệu suất. Ngược lại, tỷ lệ bản đồ ánh sáng thấp hơn làm tăng hình ảnh của bóng tối, nhưng có thể làm giảm hiệu suất nghiêm trọng. Tỷ lệ bản đồ ánh sáng quá lớn hoặc quá nhỏ có thể tạo ra hiệu ứng ánh sáng không thực, tương ứng là quá mờ hoặc quá sắc nét. Tỷ lệ bản đồ ánh sáng mặc định cho tất cả các bút vẽ là 16, đây là một khu vực cân bằng giữa hình ảnh và hiệu suất.

Tối ưu hóa bản đồ trong Hammer Editor Bước 10
Tối ưu hóa bản đồ trong Hammer Editor Bước 10

Bước 10. Nếu bản đồ của bạn có nước, hãy đặt một thực thể "water_lod_control" vào bản đồ

Thực thể này xác định bạn phải cách nước "đắt" bao xa để nước chuyển sang nước "rẻ". Nước đắt tiền trông thực tế hơn nhiều so với nước rẻ tiền, và do đó tốn kém hơn về việc sử dụng bộ nhớ và tính toán trên máy tính. Khoảng cách chuyển tiếp ngắn hơn sẽ tạo ra nước rẻ hơn ở khoảng cách ngắn hơn, và do đó sẽ giảm nhiều chất lượng hình ảnh khi ở khoảng cách xa, nhưng cũng sẽ làm tăng hiệu suất.

Lời khuyên

  • Các dịch chuyển không cản trở tầm nhìn, vì vậy để đảm bảo bản đồ được niêm phong, hãy tạo một bút vẽ thế giới bằng công cụ / công cụ kết cấu bên dưới sự dịch chuyển và đóng dấu bản đồ bằng nó (tức là các góc của bàn chải đó chạm vào các góc của hộp bầu trời). Giống như trong bước đầu tiên, hãy luôn đảm bảo rằng bản đồ đã được niêm phong, nếu không thì hầu như mọi kỹ thuật tối ưu hóa đã được đề cập đều bị ném ra ngoài cửa sổ và vào khoảng trống đen của công cụ Nguồn.
  • Khi tạo các vật quan trọng (bằng cách tạo một bàn chải có kết cấu với công cụ / công cụ và gắn nó với func_areaportal), điều rất quan trọng là các mặt của một sinh vật không được xem qua phải chạm vào các bàn chải thế giới. Ví dụ: nếu bạn muốn đặt một vật bất tử ở một ô cửa, nhưng ô cửa đó có khung gắn với func_detail, bạn sẽ không phải đặt bàn chải areaportal chạm vào khung cửa vì nó là func_detail (và vì bàn chải func_detail không ảnh hưởng đến khả năng hiển thị, nhật ký biên dịch sẽ trở lại với một rò rỉ). Thay vào đó, bàn chải bất tử nên chạm vào tường, trần và sàn của cửa (tất cả đều phải là chổi thế giới), giao với khung cửa. Đừng lo lắng rằng có thể có "z-clipping" xung quanh khung cửa; khung hình vẫn sẽ được hiển thị chính xác trong trò chơi… nó chỉ đơn giản là có trong trình soạn thảo Hammer để trình biên dịch sử dụng trong vvis.
  • Bài viết này giả định rằng bạn có kiến thức cơ bản về giao diện của Hammer Editor (tạo bút vẽ, đặt thực thể, buộc thực thể, v.v.).
  • Khi tạo cọ gợi ý, chỉ tạo họa tiết cho các mặt hoạt động như mặt phẳng gợi ý (các mặt sẽ phân chia BSP) với công cụ / dụng cụ kết cấu. Kết cấu mọi mặt khác trên bàn chải không hoạt động như một mặt phẳng gợi ý với công cụ / toolsskip, nếu không, bạn sẽ tạo ra nhiều visleafs hơn bạn muốn.
  • Bạn có thể liên kết trạng thái Mở / Đóng của cổng khu vực với một cửa đang hoạt động, chẳng hạn như func_door, func_door_rotating hoặc một thực thể tương tự. Để làm điều này, cánh cửa mà bạn muốn liên kết areaportal cần có một "tên" duy nhất. (Đặt tên bằng cách nhấp đúp vào cánh cửa để mở Thuộc tính đối tượng cửa sổ và đặt cho nó một cái tên đơn giản dưới Tên trong tab Thông tin Lớp học.) Sau khi bạn đã đặt tên cho cánh cửa, hãy chuyển đến Thuộc tính đối tượng và cuộn xuống "Tên của Cánh cửa liên kết" và chọn cánh cửa mà bạn muốn liên kết những người bất tử. Ngoài ra (và điều này rất quan trọng) bạn cần đặt Trạng thái ban đầu của những người bất tử đối với Trạng thái ban đầu của cửa. Điều này làm là để đảm bảo rằng khi cánh cửa được đóng lại, thì vật bất tử sẽ đóng lại cùng với nó. Nếu bạn tò mò về chính xác trạng thái Mở / Đóng của tử vong quy định điều gì, nếu một tử huyệt đang Mở, tất cả các màn hình có thể nhìn thấy qua phía bên kia của tử địa sẽ được hiển thị. Ngược lại, nếu areaportal bị đóng, thì không có gì bên ngoài areaportal sẽ được hiển thị. Vì vậy, nếu có một hành lang rộng mở mà bạn luôn có thể nhìn thấy, Trạng thái ban đầu of the areaportal phải được đặt thành Mở, không phải Đóng. Và khi được liên kết với một cánh cửa, bạn sẽ không thể nhìn qua cánh cửa, vì vậy hãy đặt nó thành Đóng nếu cánh cửa đó đóng lại (trừ khi nó có một cửa sổ trong suốt, khi đó bạn nên đặt areaportal thành Mở và không thậm chí không bận tâm liên kết nó với cửa).

Cảnh báo

  • Không bao giờ tạo một bàn chải phức tạp với Công cụ Hollow. Các đỉnh (các góc của bàn chải) sẽ giao nhau và sẽ chỉ tạo ra một mớ hỗn độn lớn.
  • Chỉ sử dụng tắc kê như một phương sách cuối cùng. Nó rất tốn bộ nhớ, vì vậy nếu một chỗ dựa có thể được niêm phong trong một căn phòng có các vật quan trọng hoặc nếu có thể tách các lớp phủ bằng chổi gợi ý và bỏ qua, thì hãy chọn không sử dụng các miếng đệm.
  • Các mối quan hệ mở thường sử dụng nhiều bộ nhớ hơn bởi vì các vòng quay được tính theo thời gian thực. Bạn nên sử dụng bàn chải đóng vai hoặc bàn chải gợi ý càng thường xuyên càng tốt.

Đề xuất: