Perché altri giochi non usano l'arte vettoriale? [chiuso]


84

Mi sembra che l'arte vettoriale sia più efficiente in termini di risorse / scalabilità; tuttavia, nella maggior parte dei casi ho visto artisti che usano l'arte bitmap / rasterizzata. È una limitazione posta agli artisti dai programmatori / progettisti di giochi? Come programmatore penso che l'arte vettoriale sia più ideale, poiché consente di aumentare la risoluzione senza dover ricreare l'arte, creare grafica molto grande o rendere sfocata la grafica.

Le domande: perché non sono più le persone che usano SVG / AI per creare arte di gioco 2D? Sarebbe effettivamente preferito (e chi lo preferisce)? La grafica bitmap è uno standard o una limitazione (o forse nessuno dei due)?

Background: sto lavorando su un motore e ho avuto alcune idee fantastiche per la grafica vettoriale; tuttavia, non voglio far incazzare gli artisti in futuro.

Immagino che questa sia più una domanda incentrata sul pragmatismo e sullo sviluppo di giochi.


1
Probabilmente ha a che fare con il modo in cui le GPU e l'hardware funzionano in modo efficiente anche su immagini raster di determinate dimensioni , come 256x256 (o potenze di due in generale).
ashes999,

4
Il più delle volte ho scoperto che le domande che mi interessano qui sono "basate sull'opinione" e sono "chiuse". Peccato!
Joe Huang,

I giochi vettoriali sono più efficienti, i giochi Pixel sono più eleganti. Preferisco la pixel art rispetto al vettore solo perché posso apprezzare lo sforzo fatto per renderli e che sono nitidi e visivamente accattivanti. I giochi vettoriali sono più veloci da realizzare e sono più amichevoli con le fotocamere. Non appena una pixel art viene allungata o compressa, non viene più vista come dovrebbe essere e potrebbe anche essere stata arte vettoriale. Per me, l'arte vettoriale è sfocata e frustrante.
Dmitry

Non sono solo giochi, ma consideriamo i fumetti, ad esempio: la grafica raster viene generalmente utilizzata più lì con Photoshop che con Illustrator. È difficile disegnare gradazioni sottili di colore, sfumare pixel, ammorbidire i bordi, ecc. In un modo molto preciso usando la grafica vettoriale. Non puoi diffondere pixel così facilmente come dipingere su una tela con grafica vettoriale. Tendono ad essere piuttosto nitidi - adatti a determinati stili di cartoni animati ma non tanto per disegnare sottili arrotondamenti di forme, ombre morbide, sfumato, ecc.

Risposte:


58

A differenza di altre forme d'arte, l'arte vettoriale richiede una precisione estremamente elevata, rendendola non adatta a molti stili artistici. Forme di base e simili sono facili usando l'arte vettoriale, ma è solo un dolore aggiungere piccoli dettagli che sarebbe davvero facile da dipingere. Quindi è un po 'limitato a stili "simbolici" molto semplici. Per tutto il resto la pittura funziona meglio.

A cosa è adatta l'arte vettoriale, sono le icone e il design e lì non troverai molti artisti che userebbero qualcosa di diverso.

A proposito: la scalabilità non è nemmeno un problema per la grafica raster, dipingere con una risoluzione 10x non è una grande differenza rispetto al dipingere nella risoluzione che verrà visualizzata. Qualcosa che viene fatto parecchio al giorno d'oggi (spesso pubblicizzato come "HD-Graphics").


ahhh questo ha senso!
Parris,

1
@ Mr.Beast So che questa domanda ha avuto risposta qualche tempo fa, ma cosa significa dipingere con risoluzione 10x?
bitbitbot

@bitbitbot Se lo sprite viene solitamente visualizzato a 20x20 pixel, disegnalo a 200x200 pixel. In questo modo continuerà ad essere nitido quando ingrandito. Non ha bisogno di essere più dettagliato, è solo per evitare che sbiadisca.
API-Bestia

1
-1 Penso che sia principalmente dovuto alla storia dei giochi che è iniziata con sprite con rendering di pixel solo a scopo prestazionale. Devi tenere presente che la gestione dei vettori è molto più avida di CPU rispetto ai semplici array rasterizzati, a quel tempo questa soluzione semplicemente non era possibile con le attuali CPU. Inoltre non è così semplice come potrebbe sembrare a prima vista oltre i vettori, ad esempio un motore di gioco diventa molto più complicato quando si tratta di gestire i vettori anziché i normali sprite grezzi. Oggi solo per ricordarti che la maggior parte dei giochi utilizza contenuti 3D e il grado di dettaglio è semplicemente sorprendente.
user14170,

39

La grafica vettoriale di solito è più efficiente della grafica raster per l'archiviazione (cioè la dimensione del file è più piccola) ma considerevolmente meno efficiente per le prestazioni (cioè quanto tempo impiega il computer a disegnare l'immagine).

Per visualizzare un'immagine, il computer deve rasterizzare quell'immagine (cioè calcolare i pixel nell'immagine). Poiché la grafica raster è per definizione già rasterizzata, non c'è molto calcolo che il computer deve fare prima di scaricare i pixel nel back buffer.

Tuttavia, questo problema dipende se stai parlando dell'utilizzo della grafica vettoriale in tempo reale nel gioco, o se stai parlando degli artisti che disegnano in Illustrator e poi esportano in formati raster come png.


1
Suppongo che stavo pensando principalmente al rendering in tempo reale della grafica vettoriale; tuttavia, rasterizzarli potrebbe avere senso. Penso che a quel punto non ci sia molta differenza rispetto all'uso di uno strumento di grafica raster.
Parris,

3
La grafica vettoriale non è sempre più efficiente per l'archiviazione - in generale, poiché i dettagli in un'immagine aumentano, aumenta anche la complessità della sua rappresentazione come immagine vettoriale. Di solito arriva un punto in cui un'immagine dettagliata sarà in effetti più compatta in forma raster rispetto a quella vettoriale - credo che la maggior parte delle trame rientri in questa categoria, motivo per cui i raster vengono utilizzati più dei vettori.
Mac

7
@Parris Il rendering della grafica vettoriale in tempo reale li sta rasterizzando; il frame buffer stesso è un array raster, quindi a un certo punto del processo - che si tratti della pipeline degli strumenti, del motore o dei driver sotto il motore - la grafica vettoriale verrà convertita in raster e quella conversione ci vorrà un po 'di tempo. Non necessariamente molto tempo, ma un importo non trascurabile.
Steven Stadnicki,

1
@StevenStadnicki sì, è vero! Suppongo che farlo prima sia quasi un'ottimizzazione.
Parris,

17

In effetti, ci sono un certo numero di giochi 2D che usano ciò che equivale alla grafica vettoriale; Trucco fantasma di Capcom: Phantom Detective, ad esempio, genera essenzialmente i suoi personaggi all'interno del motore come grafica vettoriale. (Per essere più precisi, credo che siano indicati come regioni poligonali piene, che in questo caso equivalgono alla stessa cosa). Più in generale, i modelli poligonali in generale possono essere considerati come dati "vettoriali" - rappresentano i vertici, i bordi e le facce di un oggetto - al contrario dei dati "raster" (risoluzione dello schermo), quindi in qualche modo la maggior parte dei giochi 3d sono usando descrizioni di dati vettoriali.

Ma ho il sospetto che la tua domanda riguardi più l'arte 2d, e che entrino in gioco diversi fattori. Come dice Mr. Beast, piccoli dettagli rendono l'arte vettoriale un po 'più complicata da costruire; immagina qualcosa come una cintura granata su un personaggio, dove anche un po 'di copia-incolla intelligente di singole granate non risparmierà ancora un sacco di tempo sullo sforzo. Credo che il problema più grande, però, è che la grafica vettoriale prendono un certo controllo viadall'artista; come notate, la grafica vettoriale può sembrare notevolmente migliorata, ma i problemi reali sono a risoluzioni più basse, dove i dettagli difficili della rasterizzazione possono cambiare sostanzialmente l'aspetto di un'immagine. Immagina l'occhio di un personaggio, per esempio; il confine esterno potrebbe essere un ovale di non più di dieci o venti pixel e forse solo una piccola manciata di pixel in altezza. A queste risoluzioni, il modo in cui i dati vettoriali - che si tratti di linee, archi circolari o curve di Bezier - viene rasterizzato diventa un problema critico e, a meno che i tuoi artisti non possano lavorare direttamente nel motore, il che significa essenzialmente creare un programma di disegno vettoriale completamente nuovo, allora essi fare fatica a garantire che l'aspetto dei loro oggetti nel gioco corrisponda all'apparenza nel loro strumento. Cosa c'è di più, solo apparire corretti a una risoluzione non garantisce in alcun modo che sembreranno corretti a nessun'altra; ancora una volta, il ridimensionamento funziona bene quando hai a che fare con oggetti in cui i dettagli hanno dimensioni di dozzine o centinaia di pixel, ma man mano che scendi verso le caratteristiche di scala più piccola, il rendering in scala viene eseguito esattamente con gli stessi dettagli di rasterizzazione.

Detto questo, il rendering vettoriale non è sempre inappropriato e spesso può essere una scelta stilistica di eccellente effetto. Ma non è una panacea per i problemi che sollevi con la grafica raster e solleva anche nuovi problemi.


7

Credo che sia principalmente una combinazione di tradizione, strumenti, tecnologia e aspettative, che si alimentano a vicenda.

  • tradizione: la grafica raster era il modo più semplice per eseguire il rendering di immagini dettagliate per la maggior parte della storia dello sviluppo del gioco e in tal modo il modo di lavorare ha preso piede tra programmatori e artisti, risalente a un tempo prima che gli artisti fossero persino ampiamente coinvolti nei giochi. Il codice esistente ruota attorno alle bitmap e gli artisti esistenti hanno imparato a lavorare con le bitmap. Ed è sempre costoso ri-addestrare e riprogrammare.
  • strumenti e tecnologia - gli artisti tendono a iniziare con la grafica bitmap e gli strumenti di fotoritocco per impostazione predefinita, forse perché assomiglia più da vicino ai media tradizionali, ma qualunque sia il motivo del risultato è che i buoni editor di vettori sono meno comuni e meno noti di buoni editor di bitmap. Inoltre è solo relativamente di recente che la tecnologia di rendering dei vettori è stata abbastanza veloce per i giochi: gli sviluppatori che utilizzano Flash per i giochi in genere utilizzavano l'interfaccia bitmap fino a poco tempo fa e anche le tecnologie di tipo Canvas / SVG sono relativamente nuove in termini di supporto efficiente. Inoltre non esiste davvero una libreria di rendering vettoriale dominante (che io conosca) che le persone possono ampiamente utilizzare, rispetto ad alternative come SDL, XNA, pygame, ecc., Quindi i programmatori non vedono questo come un percorso molto praticabile. Ma ciò' I programmatori non lo impongono necessariamente agli artisti - di solito gli artisti sono molto più a loro agio con l'editing bitmap. (Dopotutto, gli artisti non sono sempre grafici).
  • aspettative: i giocatori si sono sempre aspettati giochi sempre più realistici con l'avanzare della tecnologia. Ciò può essere stato guidato dai giocatori stessi, dagli editori e dal marketing, o dai produttori di hardware desiderosi di vendere schede grafiche o da esperti che pensano che i giochi siano fondamentalmente film interattivi o una combinazione di quanto sopra. Ma indipendentemente da chi ha causato questo, è un fattore, e quindi il mercato generalmente spinge verso una grafica realistica. I vettori sono scarsamente adatti alla grafica realistica e quindi è solo relativamente recentemente, dove la grafica converge sul fotorealismo e quindi perde identità, che c'è una rinascita nella grafica stilizzata e un interesse per diversi stili di presentazione come l'arte vettoriale.

La cosa interessante di questi punti è che puoi vedere che le cose stanno cambiando. Forse l'uso della grafica vettoriale riprenderà nel prossimo futuro. L'hardware grafico moderno è adatto alla grafica vettoriale, quindi il problema è proprio quello di creare una buona catena tecnologica per far entrare l'arte nel gioco e sullo schermo.


5

Imho, è la differenza di approccio ... si tratta più di costruire la tua arte piuttosto che disegnarla. Preferisco l'arte vettoriale per la sua facilità di modifica, riutilizzo, ridimensionamento e la sensazione di cartone animato che posso creare con facilità. L'artista più "addestrato" preferisce un approccio al disegno e alla pittura, mentre molti artisti grafici amano usare i vettori.

Dai un'occhiata al mio blog: http://2dgameartforprogrammers.blogspot.com.au/

È utile iniziare dall'inizio e leggere prima i tutorial precedenti. :)


2

Ho letto un articolo chiamato Icon Design: Bitmap vs Vector qualche tempo fa che mostra la chiarezza dei dettagli che si perde quando si ridimensiona un'immagine vettoriale. Non si verifica alcuna perdita, è che può essere finemente ottimizzato come bitmap.

Dai un'occhiata a questo esempio di icona di una stampante (l'immagine cerchiata è il master in ogni caso):

inserisci qui la descrizione dell'immagine

Il punto debole è ridimensionare utilizzando il vettore, quindi regolare con raster. Quindi suppongo che ciò che sto dicendo sia che potrebbero usare il vettore ma il risultato finale è raster.


10
-1. Stai confrontando mele e arance qui. Dici che un'immagine raster è migliore, perché puoi aggiungere più dettagli. Puoi anche creare un'icona grafica vettoriale per ogni dimensione dell'icona (con i dettagli appropriati, la larghezza del tratto ecc.) E funzionerebbe altrettanto bene. È chiaro che il ridimensionamento di una grafica vettoriale non aggiungerà magicamente più dettagli .. ma il ridimensionamento di una bitmap comporterebbe una qualità ancora peggiore.
bummzack,

4
"Potresti anche creare un'icona grafica vettoriale per ogni dimensione dell'icona" concordata. Sia la creazione di molte immagini vettoriali che molte immagini raster creano più lavoro. Il mio punto era che sarebbe stato bello poter creare un'unica immagine vettoriale con tutti i dettagli che potevano essere ridimensionati per tutte le dimensioni. Nell'articolo, mostra che purtroppo non è così facile in tutte le circostanze.
PhilJ,

@PhilJ è quello che stavo pensando. Aggiungendo tutti i dettagli che desideri, ridimensionali se necessario, ma non sarebbe strano se lo ridimensionassi.
Parris,

2

È principalmente un problema tecnico che la maggior parte delle aziende non utilizzerà la pura arte vettoriale nei propri giochi. Conosco molti artisti che realizzano le loro creazioni in Flash o Illustrator, solo per pompare un'immagine rasterizzata che viene schiaffeggiata su uno sprite poligonale. È solo un ostacolo tecnico che la maggior parte delle grandi aziende non è troppo entusiasta di provare a capire.

Di seguito è riportato un esempio di personaggio animabile, realizzato in IA, con circa 13 parti mobili. Sarebbe bello poterlo usare, ma abbiamo dovuto posizionare scrupolosamente ogni pezzo all'interno della propria immagine separata. L'unico vantaggio era che avevamo queste risorse pronte per essere ridimensionate per qualsiasi arte di marketing.

Esempio di carattere vettoriale per l'animazione

Un altro motivo per cui potrebbe non essere più popolare è che il formato EPS ha standard diversi rispetto all'intelligenza artificiale. Quindi tutti gli artisti di campane e fischietti che amano mettere nelle loro immagini vengono calpestati quando convertiti in EPS.

Alla fine, non so cosa serve per implementare l'arte vettoriale in un gioco, ma so per certo che la maggior parte degli ingegneri con cui ho lavorato ha optato per sputare un png invece di occuparsene.


1

Non posso parlare per tutti, ma per esperienza personale, i programmi di grafica vettoriale (leggi: Inkscape, l'unico che ho provato) sono più difficili da usare e non sono così intuitivi come i programmi di grafica bitmap. Tutti capiscono il pennello e il secchio. Le curve sono più difficili.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.