Sand Rendering in Journey

Поділитися
Вставка
  • Опубліковано 23 лют 2018
  • In this 2013 GDC session, thatgamecompany's John Edwards covers all the technical details of the final sand implementation in Journey, and in the process, cover thatgamecompany's approach to graphics in general.
    Register for GDC: ubm.io/2gk5KTU
    Join the GDC mailing list: www.gdconf.com/subscribe
    Follow GDC on Twitter: / official_gdc
    GDC talks cover a range of developmental topics including game design, programming, audio, visual arts, business management, production, online games, and much more. We post a fresh GDC video every day. Subscribe to the channel to stay on top of regular updates, and check out GDC Vault for thousands of more in-depth talks from our archives.

КОМЕНТАРІ • 48

  • @akaltar
    @akaltar 6 років тому +198

    I'm not the only one that tries to make shaders by adding random multiplications to it, HELL YEAH.

  • @ferna2294
    @ferna2294 5 років тому +117

    1990s: In order to simulate a 3D space, we have to be very careful with our code; CPU power is scarce.
    2020: We have to render sand, let´s use 38 bit maps and 10 shaders.

    • @wessmall7957
      @wessmall7957 4 роки тому +46

      To be fair, sand takes up 90% of the screen 90% of the time so you might as well use 90% of machines spare resources to render as beautifully as possible.

  • @cotteredwards3498
    @cotteredwards3498 5 років тому +55

    12:51 "To be a graphics programmer, you need neither intelligence nor competence."

  • @andrewcarr3703
    @andrewcarr3703 6 років тому +27

    Multiplying a normal distribution by 2 increases the standard deviation by that amount and so you see the histogram spread out as was mentioned.

  • @yor1001
    @yor1001 4 роки тому +15

    Love this talk. I really wish I was a graphics programmer.

  • @rafca7408
    @rafca7408 5 років тому +10

    21:03 BEST MOMENT OF MY LIFE. LOOK AT HIS REACTION!

  • @unvergebeneid
    @unvergebeneid 6 років тому +15

    That sand in the game did look pretty awesome, especially on the remaster.

    • @limageur
      @limageur 4 роки тому

      Is there a real difference ?

  • @raztaz826
    @raztaz826 6 років тому +20

    " I don’t like sand. It’s coarse and rough and irritating and it gets everywhere" -Anakin Skywalker :)

  • @harshdeepsinghmudhar287
    @harshdeepsinghmudhar287 3 роки тому +5

    In a way, that proves Lambert is a fundamental model. It's not complete by any means, but is a decent model to get started off.

    • @readyforlol
      @readyforlol 4 місяці тому

      Yeah, I feel that.
      Most of the time, when you think "hey, that looks terrible, changing literally anything makes it look better", it's promptly followed by "oh, if I change anything the performance is way worse" and you suddenly understand.

  • @cacheman
    @cacheman 6 років тому +8

    15:45 Oren-Nayar diffuse reflection shader.

  • @olninyo
    @olninyo 4 роки тому +6

    shout out to the 1 second of evanescence at the end of the video 👌

  • @Radicalshikami
    @Radicalshikami 6 років тому +1

    Love it, even if i don´t know how to make things i make them one way or another.

  • @ZeroZ30o
    @ZeroZ30o 6 років тому +7

    Cool talk

  • @oussamasoudassi
    @oussamasoudassi 2 роки тому

    Does anyone have the link to the blog post the questioner mentioned at the end?

  • @anonymoussloth6687
    @anonymoussloth6687 3 роки тому

    How did they get the cloth effect onhe player? Does anyone know?

  • @AntonKozikowski
    @AntonKozikowski 6 років тому +1

    lookin good baby!!

  • @MaaveMaave
    @MaaveMaave 6 років тому +5

    So janky, I love it

    • @noxabellus
      @noxabellus 6 років тому +2

      janky???????????????

  • @omerfarukbykl6097
    @omerfarukbykl6097 3 роки тому +1

    3:40

  • @noxabellus
    @noxabellus 6 років тому +4

    20:07 What the hell is an SPU?
    Does he mean a geometry shaders? Framebuffers? Wtf?

    • @Dunoid
      @Dunoid 6 років тому +14

      It's the Synergistic Processor Unit, which is unique to the PS3's Cell architecture, I believe. At least, that's the only meaning I know of.

    • @noxabellus
      @noxabellus 6 років тому +4

      Oh fascinating thanks for the lead. I don't know why googling SPU didn't reveal that

    • @SteelSkin667
      @SteelSkin667 6 років тому

      I don't know the details of PS3 hardware, but now I kind of wish I did considering how much stuff seems to be rendered using these rather than the GPU in this game, and I assume a few other first-party titles.

    • @zorksox
      @zorksox 6 років тому +5

      The PS3 has a few SPUs (8, if memory serves). They are smaller sub-processors, for a lack of a better term. You could offload all sorts of things from the Cell to the SPUs. They also accessed memory in a very unusual way. They are exactly what made the PS3 so strange to work on. It also explains why some PS3 ports of multiplatform games didn't visually live up the to the Xbox 360. Rather than massively changing their game engine to take advantage of the SPUs, lots of devs just cut back the graphics a bit and ran the entire game from the main processor. Shamus Young has a great video explaining a possible reason Sony went with this design: ua-cam.com/video/FoGnDgqNGkk/v-deo.html

    • @SteelSkin667
      @SteelSkin667 6 років тому +1

      In the PS3 it's 7 SPEs, as one is disabled to improve yield), but there were other SKUs of Cell that had all 8 SPEs active. Interestingly enough in game mode, the hypervisor lives onto one of the SPEs, leaving the PPE and 6 SPEs available to developers.
      The most comprehensive info I have found about Cell is this part of the documentation issued by Sony to Linux developers :
      www.kernel.org/pub/linux/kernel/people/geoff/cell/ps3-linux-docs/CellProgrammingPrimer.html
      It's really interesting, however it's geared towards system programming, and not game rendering stuff. It seems like there is indeed some additional memory management involved, and the SPEs can't be treated like regular CPU cores, instead you have to go through a separate API.

  • @alpers.2123
    @alpers.2123 3 роки тому +2

    Hey... dude...

  • @robertoaguiar6230
    @robertoaguiar6230 3 роки тому

    This video made me remember evanescence

  • @JETWTF
    @JETWTF 6 років тому +27

    What I got from this.. don't make a console exclusive.

    • @noxabellus
      @noxabellus 6 років тому +45

      him: *20 minutes of enlightened graphics programming discussion*
      you: "HERP DERP CANSOLE WARZ LOL"

    • @RubenGoMoRadioboyPlus
      @RubenGoMoRadioboyPlus 6 років тому

      enlightened? LOOOOOOOOOOOOOOOOOOOOOOL

    • @uicosole
      @uicosole 6 років тому

      it sucks because many people will probably never play it because of the exclusiveness, including me

    • @JETWTF
      @JETWTF 6 років тому +2

      What I got about not making a console exclusive is the hardware not being capable of doing what you want and you have to pour money and time into making a facsimile of what you wanted. You could make it for PC as you want then cull it down for the console port and save time and money and have far more market available. Enlightened.

    • @satellite964
      @satellite964 6 років тому +1

      +JETWTF And not have the achievement of conquering the SPUs of the PS3's Cell Broadband Engine?