Làm cách nào để xử lý âm thanh trong trò chơi chia đôi màn hình?


10

Trong trò chơi nhiều người chơi chia màn hình, nhiều người chơi có thể nghe thấy các sự kiện âm thanh và chúng có thể phát ra âm thanh khác nhau đối với mỗi người chơi.

Ví dụ, người chơi có thể nghe thấy âm thanh của chiếc xe họ đang lái xe được lọc thấp. Người chơi hai có thể nghe thấy tiếng động cơ doppler bị dịch chuyển khi người chơi một người lái xe vượt quá tốc độ. Người chơi thứ ba, quan sát từ xa có thể nghe thấy tiếng động cơ chưa được lọc ở mức âm lượng thấp.

Trong một trò chơi như vậy, cách tiếp cận "rõ ràng" là chỉ chơi tất cả các âm thanh cùng một lúc. Tôi có thể sử dụng phương pháp nào để cải thiện vấn đề này, để ngăn chặn tình trạng quá tải âm thanh / "âm thanh" trong khi tối đa hóa mức độ ngâm cho mỗi người chơi?


Bạn trình bày một giải pháp "hiển nhiên" và sau đó là một giả định về một vấn đề có thể xảy ra với nó. Hãy thử thực hiện nó và xem những gì sẽ xảy ra.
Sean Middleditch

4
Tắt đầu tôi, sử dụng đầu ra 2 kênh và phát từng âm thanh trên kênh ở phía bên của trình phát với âm lượng 50%.
d3dave

Nếu bạn có quyền truy cập vào đăng ký GDC Vault, hãy xem bài nói chuyện này về âm thanh COOP trong Thuyết phục tế bào Splinter - họ đi sâu vào chính xác chủ đề này: gdcvault.com/play/1014779/B between
DMGregory

Câu trả lời:


2

Bạn phải hy sinh, bạn không thể có cùng một sự đắm chìm khi một số âm thanh không được nghe bởi tất cả người chơi. Một số công cụ đã được xây dựng trong các giải pháp cho vấn đề này ( ví dụ ) nhưng tôi không thể tìm thấy bất kỳ thông tin nào về cách thức hoạt động của nó.

Sử dụng âm thanh nổi để tách âm thanh

(ý tưởng wiz3kid trong các ý kiến)

Nếu màn hình được phân chia theo chiều dọc, bạn có thể quản lý các âm thanh khác nhau được phát ở bên cạnh trình phát thích hợp. Nó đã được mô tả ở đây (Trường hợp sử dụng 1).

Trong ví dụ này, âm thanh bị giảm đi -96dB ở phía bên kia, tương đương với tắt tiếng. (Nếu tính toán của tôi là đúng, -96,3dB giống như chia cho 15 triệu). Tôi nghĩ rằng nó không cần phải quá tàn bạo. Nếu bạn phát từng âm thanh chủ yếu ở phía người chơi được cho là nghe thấy chúng, người chơi sẽ có thể phân biệt âm thanh phát ra từ một nửa của mình hoặc không và vẫn sẽ có một chút âm thanh nổi.

Điều này hoạt động tốt nhất khi chỉ có hai người chơi, nhưng trong trường hợp có 4 người chơi, bạn có thể kết hợp âm thanh từ người chơi theo chiều dọc để sử dụng cùng một phương pháp.

Chọn âm thanh đã phát

Tôi nghĩ rằng hiệu ứng cacophony đến từ những âm thanh dài. Ví dụ, trong mario kart, âm lượng âm thanh trôi rất thấp so với âm thanh khi một vật phẩm được chọn. Âm thanh trò chơi nghe có vẻ lộn xộn, nhưng không quá nhiều khi xem xét các âm thanh được phát. Nó có thể dễ dàng không được liệt kê.

Do đó, giải pháp có thể là lọc các âm thanh dài hoặc lặp lại rất thường xuyên. Bằng cách giảm tiếng ồn chung, các âm thanh quan trọng sẽ dễ phân biệt hơn. Tôi không nghĩ rằng đó là một vấn đề cho người chơi khi nghe những âm thanh mà anh ta không được nghe miễn là anh ta có thể dễ dàng nghe thấy những âm thanh quan trọng đối với anh ta.

Liên quan đến người chơi gần nhất

Trong chuỗi này , tất cả đều đồng ý rằng các âm thanh nên được phát một lần trong tổng số (không phải một lần cho mỗi người chơi) so với người chơi quan tâm nhất, ví dụ gần nhất.

Quan điểm của Tinus

Liên kết.

Tôi không biết anh ta nhưng anh ta tạo một plugin thống nhất để xử lý âm thanh màn hình chia nhỏ. Anh ta giải thích phương pháp anh ta sẽ sử dụng trên một trong những bài đăng của mình. Tôi không biết nếu đó là một cách tiếp cận hợp lệ vì tôi không hiểu hầu hết về nó.

Trước tiên, hãy tiếp cận với cách tiếp cận ngây thơ, chỉ cần áp dụng các quan điểm nghe và gửi chúng đến đầu ra âm thanh nổi. Điều này sẽ không hoạt động đối với các trò chơi cường độ cao, nhưng cũng có nhiều trò chơi mà điều này sẽ ổn.

Tiếp theo, giới thiệu các công cụ bổ sung mà bạn có thể kiểm soát hỗn hợp tốt hơn. Cách bạn sử dụng những thứ này tùy thuộc vào trò chơi bạn đang thực hiện và cách bạn nghĩ nó sẽ phát ra âm thanh, nhưng có một số mô hình phổ biến có thể có. Trên đỉnh đầu của tôi:

  • Hiệu ứng nén / giới hạn / Sidechained đối với người nghe và đầu ra âm thanh nổi. Nó đủ khó để giữ cho các trò chơi Unity dày đặc một cách tự nhiên không bị cắt, hãy để yên khi bạn thêm nhiều người nghe vào bản phối. Một máy nén đơn giản ở cuối chuỗi tín hiệu sẽ không phải là một giải pháp tinh tế cho vấn đề này, nhưng nó sẽ là một giải pháp nhanh chóng. Tôi thực sự có thể thử thực hiện một thành phần Máy nén bằng OnAudioFilterRead.

  • Âm thanh dải động cao. Các mục mới hơn trong loạt Battlefield sử dụng điều này để có hiệu quả tuyệt vời. Một lần nữa, đó không phải là viên đạn ma thuật tự động chữa khỏi hỗn hợp của bạn. Nhưng mô hình HDR có vẻ như là một công cụ mạnh mẽ để giúp bạn tổ chức các hỗn hợp dày đặc và rất năng động. Culling và ưu tiên được xử lý một cách thanh lịch theo cách này, điều này chắc chắn sẽ có ích cho các thiết lập màn hình chia nhỏ. Hãy cẩn thận: DICE sử dụng phần mềm tùy chỉnh (không chắc chắn liệu FMOD có thể bị đánh cắp vì điều này không) và yêu cầu tạo tài sản âm thanh trở nên nặng nề hơn.

  • Cho phép các nghệ sĩ âm thanh ưu tiên âm thanh và có một số loại bộ trộn quản lý mức độ ưu tiên âm thanh giữa những người nghe. Nếu người chơi 2 thực sự, thực sự cần nghe tên lửa này sắp bắn anh ta, có lẽ bạn có thể phát ra âm thanh của người chơi 1.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.