Tại sao nhiều trò chơi không sử dụng nghệ thuật vector? [đóng cửa]


84

Dường như với tôi rằng nghệ thuật vector hiệu quả hơn về tài nguyên / khả năng mở rộng; tuy nhiên, trong hầu hết các trường hợp, tôi đã thấy các nghệ sĩ sử dụng nghệ thuật bitmap / rasterized. Đây có phải là một hạn chế đặt lên các nghệ sĩ bởi các lập trình viên / nhà thiết kế trò chơi? Là một lập trình viên, tôi nghĩ nghệ thuật vector sẽ lý tưởng hơn, vì nó cho phép tăng độ phân giải mà không phải tạo lại nghệ thuật, tạo ra đồ họa thực sự lớn hoặc làm cho đồ họa trở nên mờ.

Câu hỏi: tại sao không có nhiều người sử dụng SVG / AI để tạo nghệ thuật trò chơi 2D? Nó thực sự sẽ được ưa thích (và ai thích nó)? Đồ họa bitmap là một tiêu chuẩn hay một giới hạn (hoặc có thể không)?

Bối cảnh: Tôi đang làm việc trên một công cụ, và tôi đã có một số ý tưởng tuyệt vời cho đồ họa dựa trên vector; tuy nhiên, tôi không muốn chọc giận các nghệ sĩ trong tương lai.

Tôi đoán đây là một câu hỏi tập trung vào chủ nghĩa thực dụng và phát triển trò chơi.


1
Nó có thể có liên quan đến cách GPU và phần cứng hoạt động hiệu quả trên các hình ảnh raster kích thước nhất định , như 256x256 (hoặc sức mạnh của hai nói chung).
tro999

4
Hầu hết các lần tôi thấy các câu hỏi tôi quan tâm ở đây là "dựa trên quan điểm" và chúng là "đóng". Quá tệ!
Joe Huang

Trò chơi vector hiệu quả hơn, trò chơi Pixel thanh lịch hơn. Tôi thích nghệ thuật pixel hơn vector chỉ vì tôi có thể đánh giá cao nỗ lực tạo ra chúng, và chúng sắc nét và hấp dẫn trực quan. Trò chơi vector nhanh hơn để thực hiện và thân thiện hơn với máy ảnh. Ngay khi một nghệ thuật pixel được kéo dài hoặc nén, nó không còn được nhìn thấy như dự định, và cũng có thể là nghệ thuật vector. Đối với tôi, nghệ thuật vector là mờ và bực bội.
Dmitry

Đó không chỉ là trò chơi mà còn xem xét truyện tranh, ví dụ: đồ họa raster thường được sử dụng nhiều hơn ở đó với Photoshop so với Illustrator. Thật khó để vẽ các màu sắc tinh tế, pha trộn các pixel, làm mềm các cạnh, v.v ... theo cách rất chính xác bằng cách sử dụng đồ họa vector. Bạn không thể bôi các pixel xung quanh một cách dễ dàng như vẽ trên vải với đồ họa vector. Chúng có xu hướng khá sắc nét - phù hợp với một số phong cách hoạt hình nhất định nhưng không quá nhiều để vẽ các hình tròn tinh tế, bóng mềm, sfumato, v.v.

Câu trả lời:


58

Không giống như các loại hình nghệ thuật khác, nghệ thuật vector đòi hỏi độ chính xác cực cao, khiến nó không phù hợp với nhiều phong cách nghệ thuật. Các hình dạng cơ bản và dễ dàng sử dụng nghệ thuật Vector nhưng thật khó để thêm các chi tiết nhỏ sẽ rất dễ vẽ. Vì vậy, loại của nó bị hạn chế trong các phong cách "tượng trưng" rất đơn giản. Đối với mọi thứ khác, bức tranh chỉ hoạt động tốt hơn.

Nghệ thuật vector nào phù hợp, là biểu tượng và thiết kế và ở đó bạn sẽ không tìm thấy nhiều nghệ sĩ sẽ sử dụng thứ gì đó khác biệt.

Nhân tiện: Khả năng mở rộng thực sự không phải là vấn đề đối với đồ họa raster, vẽ ở độ phân giải 10 lần không khác nhiều so với vẽ ở độ phân giải mà nó sẽ được hiển thị. Một cái gì đó được thực hiện khá nhiều hiện nay (thường được quảng cáo là "Đồ họa HD").


ahhh điều này có ý nghĩa!
Parris

1
@ Mr.Beast Tôi biết câu hỏi này đã được trả lời cách đây một thời gian, nhưng bức tranh ở độ phân giải 10 có nghĩa là gì?
bitbitbot

@bitbitbot Nếu sprite của bạn thường được hiển thị ở 20x20 pixel, hãy vẽ nó ở 200x200 pixel. Bằng cách đó, nó sẽ tiếp tục sắc nét khi phóng to. Nó không cần phải chi tiết hơn, chỉ để tránh nó trông thật sắc sảo.
API-Beast

1
-1 Tôi nghĩ rằng chủ yếu là do lịch sử của Trò chơi bắt đầu bằng các họa tiết được hiển thị pixel chỉ nhằm mục đích thực hiện. Bạn phải nhớ rằng việc xử lý các vectơ là cách tham lam CPU nhiều hơn so với các mảng rasterized đơn giản, tại thời điểm đó, giải pháp này đơn giản là không thể với các CPU hiện tại. Nó cũng không đơn giản như thoạt nhìn có vẻ ngoài các vectơ, ví dụ như một công cụ trò chơi trở nên phức tạp hơn nhiều khi xử lý các vectơ thay vì các sprite thô thông thường. Ngày nay chỉ để nhắc nhở bạn rằng hầu hết các trò chơi đang sử dụng nội dung 3D và mức độ chi tiết chỉ đơn giản là đáng kinh ngạc.
dùng14170

39

Đồ họa vectơ thường hiệu quả hơn đồ họa raster để lưu trữ (nghĩa là kích thước tệp nhỏ hơn) nhưng hiệu quả thấp hơn đáng kể đối với hiệu suất (tức là mất bao nhiêu thời gian để máy tính vẽ hình ảnh).

Để hiển thị hình ảnh, máy tính phải rasterize hình ảnh đó (nghĩa là tính toán các pixel trong hình ảnh). Do đồ họa raster theo định nghĩa đã được rasterized nên không có nhiều tính toán mà máy tính phải thực hiện trước khi đổ các pixel vào bộ đệm phía sau.

Tuy nhiên, vấn đề này phụ thuộc vào việc bạn đang nói về việc sử dụng đồ họa vector trong thời gian thực trong trò chơi hay nếu bạn đang nói về các họa sĩ vẽ trong Illustrator và sau đó xuất sang các định dạng raster như png.


1
Tôi cho rằng tôi chủ yếu nghĩ về việc vẽ đồ họa vector thời gian thực; tuy nhiên, rastering chúng có thể có ý nghĩa. Tôi nghĩ tại thời điểm đó không có nhiều khác biệt so với việc chỉ sử dụng một công cụ đồ họa raster.
Parris

3
Đồ họa vectơ không phải lúc nào cũng hiệu quả hơn cho việc lưu trữ - nói chung, vì chi tiết trong một hình ảnh tăng quá mức độ phức tạp của biểu diễn của nó như một hình ảnh vector. Thực tế thường có một điểm mà hình ảnh chi tiết trên thực tế sẽ nhỏ gọn hơn ở dạng raster so với dạng vectơ - tôi tin rằng hầu hết các kết cấu đều thuộc loại này, đó là một lý do chính đáng tại sao các raster được sử dụng nhiều hơn vectơ.
Mac

7
@Parris Kết xuất đồ họa vector trong thời gian thực đang rastering chúng; Bản thân bộ đệm khung là một mảng raster, vì vậy tại một số điểm trong quy trình - cho dù đó là trong đường ống công cụ của bạn, trong động cơ của bạn hoặc trong các trình điều khiển bên dưới động cơ của bạn - đồ họa vector sẽ được chuyển đổi thành raster và chuyển đổi đó sẽ mất một số thời gian. Không nhất thiết là rất nhiều thời gian - nhưng một lượng không đáng kể.
Steven Stadnicki

1
@StevenStadnicki đúng là như vậy! Tôi cho rằng làm điều đó trước khi ra tay gần như là một tối ưu hóa.
Parris

17

Trong thực tế, có một số trò chơi 2d sử dụng số tiền cho nghệ thuật vector; Chẳng hạn, Ghost Trick: Phantom Detective, về cơ bản tạo ra các nhân vật trong động cơ của nó dưới dạng đồ họa vector. (Nói chính xác hơn, tôi tin rằng chúng được đưa ra dưới dạng các vùng đa giác phẳng, trong trường hợp này tương đương với điều tương tự). Nói rộng hơn, các mô hình đa giác nói chung có thể được coi như 'véc tơ' dữ liệu - họ đại diện cho đỉnh, cạnh và khuôn mặt của một đối tượng - như trái ngược với (màn hình có độ phân giải) 'raster' dữ liệu, vì vậy trong một số cách trò chơi 3d nhất sử dụng mô tả dữ liệu vector hóa.

Nhưng tôi nghi ngờ câu hỏi của bạn là về nghệ thuật 2d, và có một số yếu tố xuất hiện. Như ông Beast nói, các chi tiết nhỏ làm cho nghệ thuật vector khá phức tạp hơn để xây dựng; tưởng tượng một cái gì đó giống như một quả lựu đạn trên một nhân vật, trong đó ngay cả một chút sao chép thông minh của lựu đạn cá nhân vẫn sẽ không tiết kiệm được cả tấn thời gian cho nỗ lực này. Tôi nghĩ vấn đề lớn hơn, tuy nhiên, là đồ họa vector mất một kiểm soát đitừ nghệ sĩ; như bạn lưu ý, nghệ thuật véc tơ có thể được nhân rộng tốt hơn đáng kể, nhưng vấn đề thực sự nằm ở độ phân giải thấp hơn, trong đó các chi tiết khó hiểu của quá trình raster hóa có thể thay đổi đáng kể hình ảnh trông như thế nào. Ví dụ, tưởng tượng mắt của một nhân vật; ranh giới bên ngoài có thể là một hình bầu dục không quá mười hoặc hai mươi pixel và có thể chỉ là một số pixel nhỏ về chiều cao. Ở các độ phân giải đó, làm thế nào dữ liệu vectơ - có thể là đường thẳng, cung tròn hoặc đường cong Bezier - được rasterized trở thành một vấn đề quan trọng và trừ khi các nghệ sĩ của bạn có thể làm việc trực tiếp trong động cơ - điều đó có nghĩa là tạo ra một chương trình vẽ vector hoàn toàn mới - sau đó họ có một thời gian khó đảm bảo rằng sự xuất hiện của các đối tượng trong trò chơi của họ sẽ phù hợp với sự xuất hiện trong công cụ của họ. Hơn nữa chỉ xuất hiện chính xác ở một độ phân giải là không có gì đảm bảo rằng chúng sẽ xuất hiện chính xác ở bất kỳ độ phân giải nào khác; một lần nữa, tỷ lệ hoạt động tốt khi bạn xử lý các đối tượng có các chi tiết có kích thước hàng chục hoặc hàng trăm pixel, nhưng khi bạn đi xuống các tính năng ở quy mô nhỏ hơn thì kết xuất tỷ lệ của bạn sẽ chạy chính xác vào các chi tiết rasterization.

Điều đó nói rằng, kết xuất vector hóa không phải lúc nào cũng không phù hợp và nó thường có thể là một lựa chọn phong cách cho hiệu quả tuyệt vời. Nhưng nó không phải là thuốc chữa bách bệnh cho các vấn đề bạn nêu ra với đồ họa raster, và nó cũng phát sinh các vấn đề mới.


7

Tôi tin rằng đó chủ yếu là sự kết hợp giữa truyền thống, công cụ và công nghệ và kỳ vọng, tất cả đều ăn nhập với nhau.

  • truyền thống - đồ họa raster là cách dễ nhất để hiển thị hình ảnh chi tiết cho hầu hết lịch sử phát triển trò chơi và do đó cách làm việc đã được các lập trình viên và nghệ sĩ nắm giữ, có từ thời trước khi các nghệ sĩ thậm chí còn tham gia rộng rãi vào các trò chơi. Mã hiện tại xoay quanh bitmap và các nghệ sĩ hiện tại đã học cách làm việc với bitmap. Và nó luôn luôn tốn kém để đào tạo lại và lập trình lại.
  • các công cụ và công nghệ - các nghệ sĩ có xu hướng bắt đầu với đồ họa bitmap và các công cụ chỉnh sửa ảnh theo mặc định, có lẽ vì nó gần giống với phương tiện truyền thống hơn, nhưng dù lý do gì thì kết quả là các trình chỉnh sửa vector tốt ít phổ biến và ít được biết đến hơn biên tập bitmap tốt. Thêm vào đó, gần đây chỉ có công nghệ kết xuất vectơ đã đủ nhanh cho các trò chơi - các nhà phát triển sử dụng Flash cho trò chơi thường sử dụng giao diện bitmap cho đến gần đây và các công nghệ loại Canvas / SVG cũng tương đối mới về hỗ trợ hiệu quả. Thêm vào đó, thực sự không có một thư viện kết xuất vectơ thống trị (mà tôi biết) mà mọi người có thể sử dụng rộng rãi, so với các giải pháp thay thế như SDL, XNA, pygame, v.v., vì vậy các lập trình viên không xem đây là một lộ trình rất khả thi. Nhưng nó' s không phải lập trình viên nhất thiết phải thực thi điều này trên các nghệ sĩ - thường thì các nghệ sĩ sẽ thoải mái hơn rất nhiều với việc chỉnh sửa bitmap. (Rốt cuộc, các nghệ sĩ không phải lúc nào cũng là nhà thiết kế đồ họa.)
  • kỳ vọng - người chơi trò chơi đã luôn mong đợi ngày càng nhiều trò chơi thực tế hơn khi công nghệ tiến bộ. Điều này có thể được điều khiển bởi chính người chơi, hoặc bởi các nhà xuất bản và tiếp thị, hoặc bởi các nhà sản xuất phần cứng mong muốn bán card đồ họa, hoặc bởi các chuyên gia nghĩ rằng trò chơi về cơ bản là phim tương tác, hoặc một số kết hợp ở trên. Nhưng bất kể ai gây ra điều này, đó là một yếu tố, và do đó, thị trường thường đẩy mạnh vào đồ họa thực tế. Các vectơ rất kém phù hợp với đồ họa thực tế và vì vậy nó chỉ tương đối gần đây, nơi đồ họa hội tụ về hiện tượng quang học và do đó mất bản sắc, rằng có sự hồi sinh trong đồ họa cách điệu và quan tâm đến các phong cách trình bày khác nhau như nghệ thuật vector.

Điều thú vị về những điểm này là bạn có thể thấy rằng mọi thứ đang thay đổi. Có thể việc sử dụng đồ họa vector sẽ phát triển trong tương lai gần. Phần cứng đồ họa hiện đại rất phù hợp với đồ họa vector, vì vậy vấn đề thực sự chỉ là tạo ra một chuỗi công nghệ tốt để đưa nghệ thuật vào trò chơi và lên màn hình.


5

Imho đó là sự khác biệt trong cách tiếp cận ... đó là về xây dựng nghệ thuật của bạn hơn là vẽ nó. Tôi thích nghệ thuật vector vì nó dễ dàng thay đổi, tái sử dụng, nhân rộng và cảm giác hoạt hình mà tôi có thể tạo ra một cách dễ dàng. Hầu hết các họa sĩ 'được đào tạo' thích cách tiếp cận vẽ và vẽ trong khi rất nhiều họa sĩ đồ họa thích sử dụng các vectơ.

Kiểm tra blog của tôi: http://2dgameartforprogrammers.blogspot.com.au/

Thật hữu ích khi bắt đầu từ đầu và đọc các hướng dẫn trước đó. :)


2

Tôi đã đọc một bài báo có tên là Thiết kế biểu tượng: Bitmap so với Vector một lúc trước cho thấy sự rõ ràng của chi tiết bị mất khi thu nhỏ hình ảnh vector. Không phải bất kỳ mất mát nào xảy ra, nó có thể được điều chỉnh một cách tinh vi như một bitmap.

Hãy xem ví dụ này về biểu tượng máy in (hình ảnh được khoanh tròn là chủ trong mỗi trường hợp):

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

Điểm ngọt là quy mô sử dụng vector sau đó điều chỉnh bằng raster. Vì vậy, tôi đoán những gì tôi đang nói là họ có thể sử dụng vectơ nhưng kết quả cuối cùng là raster.


10
-1. Bạn đang so sánh táo và cam ở đây. Bạn nói rằng một hình ảnh raster là tốt hơn, bởi vì bạn có thể thêm chi tiết. Thay vào đó, bạn cũng có thể tạo một biểu tượng đồ họa vector cho từng kích thước biểu tượng (với các chi tiết phù hợp, chiều rộng nét, v.v.) và nó cũng hoạt động tốt. Rõ ràng rằng việc nhân rộng một đồ họa véc tơ sẽ không thêm chi tiết một cách kỳ diệu .. nhưng việc nhân rộng một bitmap sẽ dẫn đến chất lượng thậm chí còn tồi tệ hơn.
bummzack

4
"Bạn cũng có thể tạo một biểu tượng đồ họa vector cho mỗi kích thước biểu tượng" đã đồng ý. Cả hai tạo ra nhiều hình ảnh vector hoặc nhiều hình ảnh raster tạo ra nhiều công việc hơn. Quan điểm của tôi là thật tuyệt nếu bạn có thể tạo một hình ảnh vector lớn với tất cả các chi tiết có thể thu nhỏ cho tất cả các kích cỡ. Trong bài viết, nó chỉ ra rằng thật không may, nó không dễ dàng trong mọi hoàn cảnh.
PhilJ

@PhilJ đó là những gì tôi đã nghĩ. Thêm tất cả các chi tiết bạn muốn sau đó thu nhỏ lại nếu cần, nhưng sẽ không có gì lạ nếu bạn tăng tỷ lệ.
Parris

2

Đây chủ yếu là một vấn đề kỹ thuật mà hầu hết các công ty sẽ không sử dụng nghệ thuật vector thuần túy trong các trò chơi của họ. Tôi biết nhiều nghệ sĩ tạo ra các tác phẩm của họ trong Flash hoặc Illustrator, chỉ để đưa ra một hình ảnh rasterized bị tát vào một hình đa giác. Đó chỉ là một trở ngại kỹ thuật mà hầu hết các công ty lớn không quá quan tâm đến việc cố gắng tìm ra.

Dưới đây là một ví dụ về một nhân vật hoạt hình, được tạo ra trong AI, với khoảng 13 phần chuyển động. Sẽ thật tuyệt khi có thể sử dụng nó, nhưng chúng tôi đã phải cố gắng đặt từng mảnh bên trong hình ảnh riêng biệt của họ. Lợi ích duy nhất là chúng tôi đã có những tài sản này sẵn sàng để được thu nhỏ cho bất kỳ nghệ thuật tiếp thị nào.

Ví dụ về ký tự vector cho hình ảnh động

Một lý do khác có thể không phổ biến hơn là định dạng EPS có các tiêu chuẩn khác nhau mà AI. Vì vậy, tất cả các nghệ sĩ chuông và còi muốn đưa vào hình ảnh của họ được dậm chân khi chuyển đổi thành EPS.

Cuối cùng, tôi không biết cần phải triển khai nghệ thuật véc tơ vào trò chơi gì, nhưng tôi biết một thực tế là hầu hết các kỹ sư mà tôi đã làm việc đã chọn chỉ phun ra một png thay vì đối phó với nó.


1

Tôi không thể nói cho tất cả mọi người, nhưng từ kinh nghiệm cá nhân của tôi, các chương trình nghệ thuật vector (đọc: Inkscape, người duy nhất tôi đã thử) khó sử dụng hơn và không hoàn toàn trực quan như các chương trình đồ họa bitmap. Mọi người đều hiểu cọ sơn và xô. Đường cong khó hơ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.