Mostra notizie nelle discussioni
  • Avatar
    ☺
    Scritto da
    altg
    utente che non utiene
    il 2014-03-04 04:08:11.0 alle 2014-03-04 04:08:11.0
    Trollate totali: 11540
    Cydonia, aggiornamento per il gusto di...
    ...rompere i coglioni agli altri e per la cortesia di tenere informato GS.
    Al momento c'e` niente di nuovo da vedere, perche` sto "cambiando paradigma".
    Ho deciso che le shadow maps avrebbero in gran parte fatto cacare sempre & comunque.

    Sicche` ho deciso di passare agli shadow volumes (tanto ho tutti gli stencil buffers che voglio, in software), ma devo trovare un modo per ottimizzarli e fare il rendering doppio del minor numero di oggetti possibile, e oltretutto ho intenzione di cancellare solo le parti dello stencil buffer che si sovrappongono alla forma dell'oggetto, per mezzo di un altro stencil buffer che avevo gia` e che chiamo "ID stencil". Al suo fianco ci sono il consueto depth buffer e poi ci sara` il tipico stencil delle ombre, su cui renderizzare gli shadow volumes (probabilmente in Carmack's reverse).

    Prima di tutto pero` serve un cambio di paradigma piu` a monte: Cydonia usava il depth buffer senza interpolare le profondita` pixel per pixel (in assenza di UVmap, richiede una divisione per pixel e pensavo potesse gravare sui tempi, invece e` risultato che non grave una sega: meglio) e disegnava facce a Z costante. Questo non e` accettabile per gli shadow volumes perche` li renderebbe tassellati nonostante siano potenzialmente precisi nell'ordine del singolo pixel. Sicche` oggi mi sono dedicato a riscrivere i vari stadi di clipping e rendering in modo che comunicassero la profondita` dei vertici al rasterizzatore finale (che e` un Bresenham che riempie un paio di arrays di minimi e massimi con gli estremi di una scanline).

    Alla fine della fiera per provare se le profondita` erano corrette ho fatto il solito rendering scambiando i colori con grigi piu` o meno chiari a seconda della profondita`, e ho inclinato follemente la casina per farla penetrare nel terreno e vedere se il depth fail la clippava bene. L'immagine di prova e` venuta suggestiva: A bocca aperta

    Immagine postata dall'utente

    Nebbiolina bianca attorno a una casa affondata... Fantasma

    A parte questo, ok, funziona. Stasera me la sono vista con l'identificazione delle facce adiacenti e dei loro lati condivisi, costruendone una tabellina che mi servira` per estrudere i volumi d'ombra. Se tutto va bene, le ombre portate stavolta saranno perfette. Nel complesso, la rifattorizzazione del depth buffering portandolo a essere preciso pixel per pixel ha comunque ridotto le necessita` di tassellare troppo la scena, sicche` e` gia` un vantaggio.

    Ecco, e` tutto. Geek
    • Avatar
      Scritto da
      Non Autenticato
      il 2014-03-04 16:15:21.0 alle 2014-03-04 16:15:21.0
      Re: Cydonia, aggiornamento per il gusto di...
      > ...rompere i coglioni agli altri e per la cortesia di tenere informato GS.

      Più che giusto, tanto di quel che è scritto lì sotto ho capito tutto...

      > Al momento c'e` niente di nuovo da vedere, perche` sto "cambiando paradigma".
      > Ho deciso che le shadow maps avrebbero in gran parte fatto cacare sempre & comunque.
      >
      > Sicche` ho deciso di passare agli shadow volumes (tanto ho tutti gli stencil buffers che voglio, in software), ma devo trovare un modo per ottimizzarli e fare il rendering doppio del minor numero di oggetti possibile, e oltretutto ho intenzione di cancellare solo le parti dello stencil buffer che si sovrappongono alla forma dell'oggetto, per mezzo di un altro stencil buffer che avevo gia` e che chiamo "ID stencil". Al suo fianco ci sono il consueto depth buffer e poi ci sara` il tipico stencil delle ombre, su cui renderizzare gli shadow volumes (probabilmente in Carmack's reverse).
      >
      > Prima di tutto pero` serve un cambio di paradigma piu` a monte: Cydonia usava il depth buffer senza interpolare le profondita` pixel per pixel (in assenza di UVmap, richiede una divisione per pixel e pensavo potesse gravare sui tempi, invece e` risultato che non grave una sega: meglio) e disegnava facce a Z costante. Questo non e` accettabile per gli shadow volumes perche` li renderebbe tassellati nonostante siano potenzialmente precisi nell'ordine del singolo pixel. Sicche` oggi mi sono dedicato a riscrivere i vari stadi di clipping e rendering in modo che comunicassero la profondita` dei vertici al rasterizzatore finale (che e` un Bresenham che riempie un paio di arrays di minimi e massimi con gli estremi di una scanline).
      >
      > Alla fine della fiera per provare se le profondita` erano corrette ho fatto il solito rendering scambiando i colori con grigi piu` o meno chiari a seconda della profondita`, e ho inclinato follemente la casina per farla penetrare nel terreno e vedere se il depth fail la clippava bene. L'immagine di prova e` venuta suggestiva: A bocca aperta
      >
      > Immagine postata dall'utente
      >
      > Nebbiolina bianca attorno a una casa affondata... Fantasma
      >
      > A parte questo, ok, funziona. Stasera me la sono vista con l'identificazione delle facce adiacenti e dei loro lati condivisi, costruendone una tabellina che mi servira` per estrudere i volumi d'ombra. Se tutto va bene, le ombre portate stavolta saranno perfette. Nel complesso, la rifattorizzazione del depth buffering portandolo a essere preciso pixel per pixel ha comunque ridotto le necessita` di tassellare troppo la scena, sicche` e` gia` un vantaggio.
      >
      > Ecco, e` tutto. Geek

      ... ma tanto a me basta guardare le figure. Ficoso
      • Avatar
        ☺
        Scritto da
        altg
        utente che non utiene
        il 2014-03-04 18:16:15.0 alle 2014-03-04 18:16:15.0
        Trollate totali: 11540
        Re: Cydonia, aggiornamento per il gusto di...
        > > ...rompere i coglioni agli altri e per la cortesia di tenere informato GS.
        >
        > Più che giusto, tanto di quel che è scritto lì sotto ho capito tutto...

        Be', parto dall'assunto che se uno e` curioso cerca i termini su wikipedia, dove c'e` spiegato tutto (si fa per dire). Fantasma

        > ... ma tanto a me basta guardare le figure. Ficoso

        La figura e` artisticamente suggestiva per puro caso. Comunque ci vorra` un po' per implementare gli shadow volumes: di per se` non e` difficile, ma ci sono tanti modi per gestirli e devo trovare il piu` efficiente per Cydonia. E poi prima di partire sto dando una pulita e una riordinata al resto... incidentalmente trovando altre ottimizzazioni e avendolo intanto portato a un po' piu` di mezzo secondo al fotogramma. Ma non punto al real-time sugli ambienti finali, perche` non voglio dover animare credibilmente e per la motion sickness e insomma non mi piace, sicche` se alla fine va abbastanza veloce mi limito a complicare gli ambienti infoltendo erba, alberi, siepi...
        • Avatar
          Scritto da
          Non Autenticato
          il 2014-03-04 18:43:48.0 alle 2014-03-04 18:43:48.0
          Re: Cydonia, aggiornamento per il gusto di...
          > > > ...rompere i coglioni agli altri e per la cortesia di tenere informato GS.
          > >
          > > Più che giusto, tanto di quel che è scritto lì sotto ho capito tutto...
          >
          > Be', parto dall'assunto che se uno e` curioso cerca i termini su wikipedia, dove c'e` spiegato tutto (si fa per dire). Fantasma
          >
          > > ... ma tanto a me basta guardare le figure. Ficoso
          >
          > La figura e` artisticamente suggestiva per puro caso.

          Sembra una Near Death Experience.

          > Comunque ci vorra` un po' per implementare gli shadow volumes: di per se` non e` difficile, ma ci sono tanti modi per gestirli e devo trovare il piu` efficiente per Cydonia. E poi prima di partire sto dando una pulita e una riordinata al resto... incidentalmente trovando altre ottimizzazioni e avendolo intanto portato a un po' piu` di mezzo secondo al fotogramma. Ma non punto al real-time sugli ambienti finali, perche` non voglio dover animare credibilmente e per la motion sickness e insomma non mi piace, sicche` se alla fine va abbastanza veloce mi limito a complicare gli ambienti infoltendo erba, alberi, siepi...

          Sì infatti, l'ottimizzazione è rivolta soprattutto a questo, non s'era capito?
<softv>

Pagina generata in 60 millisecondi

Utenti attivi: 12 nell'ultimo minuto, 24 negli ultimi cinque minuti, 48 negli ultimi 15 minuti