Tại sao lại là Nội dung thủ tục này trong khi cái kia không?


18

Tôi đang đọc cuốn sách Tạo nội dung theo thủ tục trực tuyến và ở chương 1, trang 2 có một ví dụ về PCG là gì và một PCG khác không phải là gì và tôi không thể phân biệt chúng.

Đây là PCG theo họ:

công cụ trung gian trò chơi nhanh chóng tạo ra một thế giới trò chơi với thảm thực vật

Đây không phải là PCG theo họ:

một công cụ trò chơi có khả năng tích hợp thảm thực vật được tạo tự động

Ngoài ra trên trang 1, họ nói rõ ràng rằng họ không xem xét PCG của trò chơi

Một thuật ngữ quan trọng ở đây là nội dung trực tuyến. Theo định nghĩa của chúng tôi, nội dung hầu hết là những gì có trong một trò chơi: cấp độ, bản đồ, luật chơi, kết cấu, câu chuyện, vật phẩm, nhiệm vụ, âm nhạc, vũ khí, xe cộ, nhân vật, v.v ... Bản thân công cụ trò chơi không được coi là nội dung trong định nghĩa của chúng tôi.

Tôi đoán là ví dụ PCG là một mã trong một trò chơi (hoặc nó có thể là một mã thích nghi với bất kỳ trò chơi nào) nhận ra bản đồ trò chơi và đưa nó vào thảm thực vật theo nó. Và ví dụ không phải PCG đối với tôi sẽ giống như một tùy chọn có sẵn từ công cụ trò chơi là nhà phát triển có thể thêm thảm thực vật ngoại tuyến thông qua giao diện người dùng.

Điều cuối cùng là một phỏng đoán rất hoang dã từ tôi, tôi khá chắc chắn rằng tôi đã nhầm vì thoạt nhìn cả hai đều giống PCG. Xin hãy giúp tôi phân biệt chúng.


9
So sánh hai người đàn ông: Một người bước vào một căn phòng, nhìn vào nó, xây dựng đồ nội thất dựa trên căn phòng và đặt đồ đạc trong phòng. B cũng làm như vậy, nhưng anh ta đến IKEA (những người đã xây dựng đồ nội thất) để lấy đồ đạc để đặt trong phòng. Bạn có nói rằng cả A và B đang tạo ra đồ nội thất? Đó là sự khác biệt mà họ đang cố gắng chỉ ra. Trừ khi bạn tạo đồ nội thất từ ​​đầu, thực tế bạn không tạo ra đồ nội thất, bạn chỉ đang sử dụng đồ nội thất hiện có theo những cách mới.
Flater

Câu trả lời:


27

Bằng cách tương tự

Một mạch không tạo ra điện. Một bóng đèn không tạo ra năng lượng. Một pin không tạo ra năng lượng. Không có thứ gì sử dụng hoặc lưu trữ năng lượng được tạo ra , là máy phát điện.

Một máy phát điện chạy bằng xăng là một máy phát điện . Một thiết lập bảng điều khiển năng lượng mặt trời là một máy phát điện . Họ có thể được dự kiến ​​sẽ tự phát sinh khi họ được khởi động. Những thứ khác có thể sử dụng năng lượng mà chúng tạo ra: tủ lạnh, TV và PC và máy sưởi và bóng đèn.

Tương tự, bất kỳ mã hoặc chương trình nào thực sự tự tạo nội dung khi chạy là PCG. Phần còn lại chỉ là người dùng nội dung được tạo theo thủ tục (PGC). Hiện nay,

Tạo nội dung thủ tục

không giống như

Nội dung được tạo theo thủ tục

PGC là kết quả của một quá trình (chương trình) tham gia vào PCG.

PCG được phát triển (được lập trình) đến mức có thể tự sản xuất nội dung cho một số hoặc thông số kỹ thuật khác, nhưng trong (thường) vô số biến thể; PGC được tạo ra do đó là một biến thể duy nhất của không gian nội dung không giới hạn có thể có trong đặc tả thuật toán rộng hơn đó. PGC là hữu hạntĩnh khi được tạo. PCGs đối phó với vô cùng (hoặc gần đủ).

Địa chỉ cụ thể

"Tạo nội dung theo thủ tục" đề cập đến mã / ứng dụng tạo nội dung.

Bất kỳ trò chơi nào cũng có thể được coi là trò chơi PCG nếu, trong thời gian chạy, nó tự động tạo nội dung mới thông qua một phần của tập lệnh.

Nếu bạn (hoặc công cụ của bạn) sử dụng (một) mã chương trình khác tạo nội dung, thì hãy đưa nội dung đó vào một phần của trò chơi của bạn vào thời gian biên dịch / xây dựng , thì trò chơi của bạn (và đó là mã) KHÔNG phải là PCG. Vì thế:

một công cụ trò chơi có khả năng tích hợp thảm thực vật được tạo tự động

... không phải là PCG, vì bản thân công cụ đó không tạo ra nội dung mới trong thời gian chạy, nó chỉ đơn giản sử dụng nội dung được tạo từ nơi khác, được các nghệ sĩ, nhà thiết kế hoặc nhà phát triển đưa vào một cách thủ công.

nhận ra bản đồ trò chơi

PCG không liên quan gì đến sự công nhận. Nó phải làm với việc thực hiện công việc tích cực của việc tạo nội dung. Nói chung, các ứng dụng PCG tạo ra định dạng dữ liệu của riêng họ mà họ có thể hiểu và làm việc được. Họ thường không đọc các nguồn bên ngoài, mặc dù khi họ làm vậy, đó chỉ là logic chương trình cũ đơn thuần ... không phải PCG như vậy. PCG là tất cả về thế hệ . Do đó PCG chứ không phải PCR :)

Quan điểm lịch sử

Những gì chúng ta xem xét "nội dung" trong bối cảnh này thường bao gồm những điều đó, trong quá khứ, con người đã để sản của mình. Ví dụ, trong thập niên 70 và 80, hầu hết mọi trò chơi (ngoại trừ một số rất đặc biệt) đều phải có nghệ thuật, cốt truyện, âm nhạc, tên nhân vật và hành tinh của nó, và tương tự, được tạo ra bởi một con người . Đó là đối cực của PCG.

PCG bắt đầu khi các lập trình viên trò chơi nhận ra rằng thay vì sự nghiêm khắc của việc thuê các nghệ sĩ, nhạc sĩ, nhà văn, v.v. - và sau đó vẫn phải tích hợp công việc của họ với mã, hoặc tệ hơn nữa là tự mình làm tất cả công việc đó cũng như mã hóa - họ có thể thay vì viết chương trình để tạo ra tất cả những thứ đó cho họ. Những nỗ lực đó là một số chức năng, mô-đun và chương trình PCG thực sự đầu tiên. Một ví dụ hoàn hảo là XCom / UFO ban đầu , nơi mã của trò chơi tạo ra một cấp độ hoàn toàn độc đáo cho bạn trước khi chiến đấu. Trước đó vẫn còn (1979) là Đền thờ Apshai .

Elite là một trường hợp khác: một số nội dung của nó được tạo ra khi trò chơi đang được phát triển; Mã không chỉ được viết bởi cùng các tác giả, mà cả nội dung được tạo trước thường được sử dụng trong thời gian chạy elite.exe(tức là khi bạn chơi trò chơi) bởi các trình tạo tiếp theo là một phần của mã trò chơi , tạo ra thế giới bạn chơi trong

Một ví dụ mới hơn là Minecraft (và các trò chơi khác lấy cảm hứng từ nó) nơi thế giới thực sự tạo ra xung quanh bạn khi bạn đi về phía chân trời, phần lớn nhờ vào sức mạnh tính toán hiện đại. So sánh điều này với Rogue hoặc Moria chơi trên PC-XT vào những năm 1980, mà đôi khi bạn có thể phải ngồi chờ cấp độ để tạo ra! (tùy thuộc vào cài đặt trò chơi bạn đã chọn).

Không phải tất cả PCG đều có nguồn gốc lịch sử trong ngành công nghiệp trò chơi. Ví dụ, có những người viết máy phát điện tiểu thuyết. Ví dụ, Ken Perlin trong lĩnh vực đồ họa và hình học tính toán đã tạo ra thuật toán tiếng ồn Perlin, sau đó ông đã được trao một giải thưởng học viện. Ví dụ, nhạc sĩ Brian Eno trong một thời gian dài tham gia vào việc tạo ra các bản nhạc theo thủ tục. Và như một ví dụ khác, các trò chơi điện tử phi kỹ thuật số như HeroQuest / Warhammer Quest từ lâu đã phát minh ra động lực thủ tục để tạo ra một bảng trò chơi khác nhau trên mỗi lần chơi.


6
Một ngoại lệ kỹ thuật rất nhỏ - đã có bằng chứng về dự án / trò chơi nghiên cứu khái niệm trong đó chính trò chơi được tạo ra theo thủ tục. Đó là, các mục tiêu, quy tắc và ở một mức độ nào đó, đại diện đều được tạo ra một cách linh hoạt trong thời gian chạy. Nó làm mờ đi ranh giới giữa nội dung và công cụ, nhưng bài kiểm tra về "nó tạo ra" vẫn còn tồn tại ở đó. Chưng cất tuyệt vời.
Pikalek

3
@Pikalek Tôi hoàn toàn đồng ý với suy nghĩ đó. Chúng ta có thể đưa nó đi xa như Lisp - rằng cuối cùng không có sự phân biệt giữa các hướng dẫn và dữ liệu. Mặc dù vậy, không muốn làm phức tạp quá nhiều thứ trong câu trả lời. Cảm ơn đã bình luận.
Kỹ sư

2
@Adocad: Tôi nghĩ rằng bạn đã bỏ lỡ một chi tiết nhỏ trong câu trả lời: "Nếu bạn (hoặc công cụ của bạn) sử dụng một số mã chương trình khác tạo nội dung , sau đó đưa nội dung đó vào một phần của trò chơi vào thời gian biên dịch / xây dựng, trò chơi của bạn ( và đó là mã) KHÔNG phải PCG " Nếu bạn đã đưa chương trình vào trò chơi của mình, thay vì nội dung được tạo bởi chương trình và trò chơi của bạn sẽ kích hoạt chương trình khi cần (cục bộ, trên máy tính của người chơi), sau đó Nó thực sự sẽ là PCG ngoại tuyến. Nhưng đó không phải là trường hợp khi bạn chỉ đơn giản bao gồm một kết quả từ thế hệ PCG (hiện tại là tĩnh).
Flater

2
@AC: Tôi nghĩ rằng sự khác biệt là rõ ràng hơn khi ghi nhãn nó như là một trong hai nội dung procedurally tạo ra hoặc phát nội dung về thủ tục .
Flater

4
@Flater Cảm ơn, đó là một cách tốt hơn để đặt nó - nội dung được tạo theo thủ tục có thể được tạo ngoại tuyến và / hoặc trong thời gian chạy, nhưng việc tạo nội dung theo thủ tục rõ ràng là thời gian chạy. (Lưu ý rằng một công cụ mà tạo ra nội dung mà sau này sẽ được biên dịch trong được làm PCG, tuy nhiên sau khi nội dung đã được pre-tạo và biên soạn trong, trò chơi mà sử dụng nội dung đó là KHÔNG làm PCG)
AC
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.