Tại sao các studio trò chơi cần lập trình viên đồ họa nếu họ đang sử dụng công cụ trò chơi?


55

Trong phần tín dụng của các trò chơi tôi chơi, có tên của các lập trình viên đồ họa . Nếu họ sử dụng một công cụ trò chơi, tại sao họ cần một lập trình viên đồ họa ? Không phải công cụ trò chơi đang làm công việc của họ sao?


15
Nếu bạn muốn trò chơi của mình giống hệt như mọi người khác, chỉ cần sử dụng một công cụ. Nếu bạn muốn nó khác biệt, bạn sử dụng động cơ làm điểm bắt đầu, sau đó sửa đổi nó. Tôi sử dụng một công cụ trò chơi (công cụ jmonkey) nhưng tôi cũng đã viết các shader để ghi đè một số hành vi mặc định của nó cho những điều tôi đặc biệt quan tâm)
Richard Tingle

29
Điều này giống như hỏi tại sao bạn cần một kỹ sư dân sự nếu công nhân xây dựng sẽ xây dựng cây cầu. Cây cầu không chỉ đơn giản là đập vào bê tông và kim loại. Có rất nhiều phân tích vật lý và vật liệu chi tiết mà các công nhân xây dựng sẽ không biết. Đối với một cây cầu của bất kỳ sự phức tạp và / hoặc tải trọng nghiêm trọng nào, cố gắng xây dựng mà không có kiến ​​thức đó sẽ không thể đi tốt. Theo cách tương tự, kiến ​​thức của một nhà phát triển phần mềm về cách tính toán và công cụ hoạt động sẽ trở nên vô giá trong việc xây dựng một trò chơi. (Trong trường hợp cực đoan, bạn sẽ muốn có kiến ​​thức phần cứng cấp thấp.)
jpmc26

2
@RichardTingle Về mặt kỹ thuật viết một shader không thực sự sửa đổi động cơ, nó cung cấp nội dung mới cho động cơ.
Pharap

11
Liên quan: Tại sao các công ty cần các nhà toán học và kỹ sư nếu họ có máy tính và máy tính?
xDaizu

1
khá, viết một shader hầu như không phải là một kỹ sư đồ họa. @ShuvoSarker - "Hoặc mỗi công cụ trò chơi có cách làm riêng" chắc chắn, "kỹ thuật cấp thấp" cho các trò chơi có thể bao gồm bất kỳ số kỹ năng nào. (tiêu đề "lập trình viên đồ họa" không có nghĩa gì cả
Fattie

Câu trả lời:


94

Ngay cả với một động cơ, việc có được thứ gì đó hiển thị trên màn hình theo cách bạn muốn không phải lúc nào cũng tầm thường. Sẽ có nhiều trường hợp người nào đó có kiến ​​thức lập trình được yêu cầu để làm cho đồ họa hiển thị chính xác. Những người này có thể được gọi là lập trình viên đồ họa trong các khoản tín dụng (lập trình viên đồ họa không phải là một tiêu đề được chứng nhận hoặc được bảo vệ và sự khác biệt giữa các tiêu đề khác nhau có thể khác nhau tùy theo công ty).

Hãy đưa ra một ví dụ cụ thể. Chúng ta cần một vòng tròn xoay hoạt hình, như sau:

nhập mô tả hình ảnh ở đây

Một số tùy chọn của chúng tôi là:

1 Đặt vòng tròn trên bảng quảng cáo, viết kịch bản để xoay bảng quảng cáo.

2 Sử dụng ảnh động làm nguồn.

3 Thực hiện toàn bộ trong một shader, cho phép 2 tùy chọn khác nhau:

  • Xoay bảng quảng cáo trong shader đỉnh
  • Vẽ một vòng tròn xoay trong shader mảnh.

Trong 1. ai đó cần phải viết kịch bản đó, đó là một loại nhiệm vụ lập trình phải làm với đồ họa. Đối với 2. chúng tôi không cần lập trình viên, trừ khi công cụ - giống như hầu hết - không hỗ trợ nhập gif hoạt hình, trong trường hợp đó ai đó cần lập trình phần đó. Trong 3. ai đó phải lập trình shader, có thể là nghệ sĩ hoặc lập trình viên.

EDIT để giải quyết các downvote:

Các downvote dường như là do hiệu ứng quá đơn giản và do đó sẽ không được thực hiện bởi một lập trình viên đồ họa "thực sự". Tôi thực sự không biết ai sẽ thực hiện nó nếu có một lập trình viên đồ họa chuyên dụng trong nhóm và thỉnh thoảng tôi thực hiện các hiệu ứng xoay vòng như vậy trong các shader - mặc dù thông thường xoay chỉ là một phần của tổng thể lớn hơn, như trong ví dụ này .


Bình luận không dành cho thảo luận mở rộng; cuộc trò chuyện này đã được chuyển sang trò chuyện .
Josh

65

Công cụ trò chơi giống như nhà bếp và nhà phát triển (tức là lập trình viên) giống như đầu bếp.

Công cụ trò chơi cung cấp các khả năng, trong khi các lập trình viên khai thác các khả năng này theo nhu cầu của trò chơi.

Do đó, các công ty trò chơi cần các lập trình viên đồ họa để điều chỉnh khả năng đồ họa của động cơ theo nhu cầu của trò chơi.

Nếu công cụ trò chơi quản lý mọi thứ, mà không cần tinh chỉnh, tất cả các trò chơi do công cụ đó tạo ra sẽ trông giống như cùng một khuôn mẫu: các nghệ sĩ có thể tạo ra các mô hình 3D khác nhau và nghệ thuật 2D phù hợp với tầm nhìn của các nhà thiết kế, nhưng tùy chỉnh trong trò chơi cho các đồ họa này sẽ bị giới hạn ở những gì động cơ cung cấp ngoài hộp.


Lưu ý rằng trong khi họ cho phép bạn thay đổi nghệ thuật được sử dụng, một số công cụ trò chơi không cung cấp khả năng điều chỉnh các khía cạnh đồ họa khác theo nhu cầu của trò chơi. Tôi nghĩ rằng RPG Maker là như thế: nó cho phép bạn thay đổi nghệ thuật nhưng bạn bị giới hạn về cách bạn có thể điều chỉnh trò chơi của mình để mang lại cho nó một điểm nhấn rất đặc biệt. Điều này có thể đã thay đổi trong những năm qua vì tôi đã không chạm vào phần mềm đó trong một thời gian.


Bình luận không dành cho thảo luận mở rộng; cuộc trò chuyện này đã được chuyển sang trò chuyện .
Josh

20

Ý nghĩa cụ thể của hầu hết các tựa game trong ngành công nghiệp trò chơi rất khác nhau từ studio đến studio, vì vậy hãy ghi nhớ điều đó. Điều gì tạo nên "lập trình đồ họa" trong một studio có thể thực sự có nghĩa là chỉ cần tạo các shader hoặc chỉnh sửa vật liệu, trong đó ở một studio khác có thể có nghĩa là thực hiện công việc tối ưu hóa ở mức độ tương đối thấp gần API đồ họa cơ bản, et cetera.

Điều đó nói rằng, trong các studio lớn hơn, việc lấy một số phần mềm trung gian động cơ và sử dụng nó mà không thực hiện bất kỳ sửa đổi nào là tương đối hiếm. Hầu hết thời gian, các khía cạnh cụ thể của động cơ sẽ cần phải được điều chỉnh vì nó không đáp ứng được yêu cầu hoặc do có lỗi trong phiên bản đó và công ty chưa thể nâng cấp lên phiên bản mới hơn có thể sửa lỗi, et cetera.

Đồ họa là một trong những lĩnh vực mà mọi người có xu hướng thực hiện một chút tinh chỉnh. Nó có thể không liên quan đến việc viết lại việc sử dụng Direct3D hoặc tương tự trong công cụ, nhưng vẫn có thể liên quan đến việc tùy chỉnh hoặc tối ưu hóa công cụ đổ bóng, cải thiện quản lý tài nguyên đồ họa để giải thích tốt hơn cho cấu hình sử dụng của trò chơi cụ thể, thêm các tính năng hoặc tùy chọn kết xuất mới, hợp lý hóa đường ống tài sản đồ họa để phù hợp hơn với quy trình làm việc của studio, et cetera.

Hơn nữa, có nhiều trường hợp một studio sẽ muốn tích hợp các phần mềm trung gian liên quan đến đồ họa bổ sung. Có các gói phần mềm trung gian như Granit, Enlighten và TrueSky cung cấp các tính năng khác nhau liên quan đến đồ họa (phát trực tiếp kết cấu, chiếu sáng toàn cầu, mô phỏng và kết xuất bầu trời, et cetera). Tất cả các gói phần mềm trung gian này tích hợp với Unreal, nhưng công việc là bắt buộc để tích hợp chúng. Một số trong số chúng có thể xung đột với nhau hoặc cần một số điều chỉnh để hoạt động tốt với nhau, vì tất cả chúng đều được phát triển bởi các công ty khác nhau. Các lập trình viên đồ họa có thể sẽ tham gia vào loại công việc đó.


7

Bạn có thể gửi các trò chơi mà không cần lập trình viên đồ họa khá dễ dàng ngay bây giờ vì tất cả các công cụ. Những gì bạn thường cần một lập trình viên đồ họa cho những thứ như

  1. tối ưu hóa

    Một lập trình viên đồ họa sẽ biết và / hoặc tìm hiểu cách thức một công cụ cụ thể hoạt động và có thể chỉ đạo các nghệ sĩ hoặc sửa đổi các tài liệu hoặc hợp nhất các mô hình hoặc sử dụng các kỹ thuật khác, v.v. để có được hiệu suất tốt hơn từ công cụ.

  2. hiểu và chỉ dẫn

    Một nghệ sĩ muốn đạt được một hiệu ứng nhất định. Các lập trình viên đồ họa hiểu cách thức hoạt động của động cơ có thể giải thích làm thế nào để đạt được hiệu ứng đó.

  3. tùy chỉnh và hiệu ứng

    Một số hiệu ứng có thể yêu cầu lập trình. Phần lớn kết xuất của Bound là tùy chỉnh.

Điều này không khác gì phim ảnh. Với 100 lập trình viên, ngân sách lớn và chữ viết xấu bạn có thể nhận được Star Wars: The Phantom Menace. Không có lập trình viên và viết tốt, bạn có thể có được Primer. Lập trình viên (hoặc những người kỹ thuật khác) có thể cho phép những điều mới. Các lập trình viên đã mang bùn CG đến Shrek, tóc CG cho Monsters Inc, Bullet Time to The Matrix, v.v.

Điều tương tự cũng ít nhiều đúng với các trò chơi bây giờ. Các lập trình viên đồ họa có thể cho phép các chất lỏng trong Pixel Junk Shooter hoặc tất cả các dạng hình học động của Bound nhưng nhiều trò chơi có thể được tạo ra với công nghệ động cơ tiêu chuẩn và không có lập trình viên đồ họa.


Liệu nó làm cho công việc của họ tầm thường?
Shuvo Sarker

2
Đã làm game được hơn 30 năm rồi tôi có thể thấy có rất nhiều công việc tầm thường trong phát triển game. Nhưng, tôi sẽ không nói rằng các lập trình viên đồ họa làm việc là trival. Trong thực tế nếu bạn thực sự cần một thứ thì hầu như không phải là trival.
gman

1
@immibis Nghe có vẻ như việc bạn cân bằng trò chơi là chuyện nhỏ, điều mà tôi không đồng ý, vì nó sẽ phải được thực hiện, nếu không nó có thể phá hỏng trò chơi. Tầm thường có nghĩa là nó có ít tầm quan trọng.
Grumpy nói Phục hồi Monica

2
@GrumpyCrouton một nhiệm vụ tầm thường không liên quan gì đến tầm quan trọng của nó. một nhiệm vụ tầm thường có nghĩa là nó gần như quá đơn giản để thậm chí được gọi là một nhiệm vụ. Ngoài ra, thiết kế cân bằng là khó khăn, thực hiện một số trong đó là thực tế tầm thường.
Brian H.

1
@GrumpyCrouton khóa có giá trị nhỏ như bạn đã đề cập, chúng tôi không nói về những gì nhiệm vụ đang đạt được, chúng tôi đang nói về chính nhiệm vụ đó, có rất ít giá trị. bạn thực sự thay đổi giá trị của hằng số và bạn đã hoàn thành.
Brian H.

4

Rất nhiều lần, các công cụ trò chơi sẽ không đáp ứng 100% các yêu cầu và thông số kỹ thuật của một dự án trò chơi. Điều này đặc biệt đúng đối với các tựa game triple-A luôn vượt ra khỏi ranh giới của công nghệ trò chơi. Nếu một số phần đồ họa của công cụ trò chơi không khớp với những gì các nghệ sĩ và nhà thiết kế muốn đạt được, họ có thể thuê một lập trình viên / chuyên gia đồ họa có thể giúp họ tìm ra liệu kỳ vọng của họ có khả thi hay không, và nếu có, làm thế nào để đạt được nó. Nó có thể liên quan đến việc điều chỉnh các tài sản shader / art hoặc làm lại các phần của kết xuất hoặc thậm chí sử dụng một phần mềm trung gian. Hoặc một sự kết hợp của chúng.


3

Hầu hết các kỹ thuật tiêu chuẩn sẽ được thực hiện trong bất kỳ động cơ thương mại tử tế nào, như FXAA, ánh sáng, bóng mờ, ánh xạ bình thường, v.v., nhưng không phải tất cả.

Trong trường hợp một nhà thiết kế trò chơi đã chỉ định rằng một hiệu ứng cụ thể phải xảy ra, bạn có thể xây dựng nó từ những gì đã có hoặc bạn mã hóa một shader mới hoặc sửa đổi công cụ đồ họa để cho phép nó. Trong cả hai kịch bản, một lập trình viên đồ họa là bắt buộc.


-8

Xác định công cụ, sau đó xác định công cụ đồ họa. Nếu bạn sử dụng một công cụ hiện có để tạo trò chơi thì điều đó không giống như viết một trò chơi từ đầu bằng mã. Nếu thông qua mã, người ta có thể xác định đồ họa hoặc công cụ là gì, không quan trọng bạn gọi nó là gì nếu mã của bạn mạnh. Tạo trò chơi trong công cụ nói trên, giới hạn của nó và hoặc điểm mạnh của nó hoàn toàn dựa trên khả năng của người lập trình. Sử dụng một cái gì đó như Unity hoặc thậm chí Unreal hoặc bất kỳ công cụ chuyên nghiệp nào khác không xác định khả năng của bạn, công cụ trò chơi chỉ là sự trừu tượng hóa trong mã C ++ thuần túy. Ví dụ, bạn có thể thuê các lập trình viên thậm chí là nghệ sĩ nhưng bạn sẽ bị giới hạn trong tầm nhìn hoặc giới hạn của động cơ. Vì vậy, tốt hơn là mã từ đầu sau đó sử dụng một cái gì đó đã tồn tại. Vấn đề là bạn đã thắng ' Tôi không tìm thấy câu trả lời trực tuyến như Stackexchange Tôi nghi ngờ nhiều người thậm chí còn bận tâm viết mã một trò chơi chứ đừng nói đến việc hoàn thành một dự án 2d. Tôi chỉ chần chừ một chút, có nghĩa là không có nhiều câu trả lời tự phục vụ đánh vần nó. Cách tốt nhất là học tập và thực hành!


Điều này hoàn toàn bỏ qua câu hỏi, đó là lý do tại sao mọi người cần lập trình viên đồ họa cho các dự án trong các công cụ như nhà sản xuất trò chơi.
Vịt lớn
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.