Pages: [1]
  Print  
Author Topic: Mike Dailly Blog Stuffs  (Read 387 times)
Offline (Male) Goombert
Posted on: January 11, 2014, 04:27:24 PM

Contributor
Location: Cappuccino, CA
Joined: Jan 2013
Posts: 2988

View Profile
I recently found Dailly is updating his blog again.
http://dailly.blogspot.com/

The most recent post is rather intriguing because it contains a lot of details about how he did Studio's graphics. And well basically, it is pretty much the same as I did, an underlying system for drawing primitives and batching them into a triangle list and then firing a flush on state changes. The only difference here is that ours still out performs his without even using full hardware acceleration, we don't even handle T&L on the GPU yet.

There are some other things that are interestingly different.
Quote
you'll be left with a single vertex buffer (or multiple depending on lines and points),
My mesh class does not do that, it converts the lines and point primitives into the exact same vertex buffer, so there is only ever 1 vertex buffer MAXIMUM for a model in ENIGMA.

Quote
It'll also handle more extreme cases, where you set blends several times, then set a different one, and then set more blends several times. The engine will also recognise this, and will only submit 3 batches - or however many blend state batches are actually needed. This is incredibly powerful, and a major playing in rendering performance.
I don't believe that, because in theory that sounds like a great idea, but in practice it would screw up depth ordering.

There is also some good information there about how Game Maker is a Virtual Machine now, much like ohhhh somebody else we know the JVM a.k.a. the Java Virtual Machine.
« Last Edit: January 14, 2014, 02:30:41 AM by Robert B Colton » Logged
Welcome to ENIGMO, the game engine built by fucking aliens.

Offline (Unknown gender) TheExDeus
Reply #1 Posted on: January 11, 2014, 08:40:24 PM

Developer
Joined: Apr 2008
Posts: 1886

View Profile
Quote
I don't believe that, because in theory that sounds like a great idea, but in practice it would screw up depth ordering.
It wouldn't. I pretty sure what he describes is meant to be in depth order. So of course changing depths will cause more flushes, but it wouldn't break anything. This is actually what we are doing in GL3 tiles right now. Only one model is made, but then rendered with different textures when textures change. So it can cause 50 render calls if you change 50 times between even only two textures. Right now we sort tiles by background id before rendering (and THAT breaks depth ordering), but that can be removed if needed. Good read though actually. Will probably read the whole posts where he describes all the stuff from 2009 to now.
Logged
Pages: [1]
  Print