Earlier quoted context omitted.
Unrelated but wrt. modern rendering versus 90s rendering I'd imagine that a lot of the performance shims used in the 90s might not apply because the critical problem is different. Performance based development these days isn't so much on maximizing usage of the cycles of the machine (I mean, ok fundamentally it's still about that, but-), rather it's about getting the microcode to do the right thing. E.g. LUTs being e…
If modern high performance code relies on making the microcode do "the right thing", and making sure the right data is in cache then why don't CPU manufacturers allow control over such things?
Bunnymark GL in Jai – 200k sprites at 200fps [video]
61–70 of 70 posts
Re: Bunnymark GL in Jai – 200k sprites at 200fps [video]
#62It's been awhile since I've done game engine work, but is this impressive? The first thing that comes to mind is they're using instanced rendering. This allows the CPU to only deal with 1 sprite, while telling the GPU to render multiple instances of the sprite, and use a GPU buffer to find each sprite's transformation matrix. All the CPU has to do is update that mmap'ed buffer with new position information (or do som…
https://old.reddit.com/r/Kha/comments/8hjupc/how_the_heck_is...
Re: Bunnymark GL in Jai – 200k sprites at 200fps [video]
#63Earlier quoted context omitted.
It isn't released. That said, from people I know, it seems like you can just ask nicely and show some interest and he'll let you try it out.
That only applies if you are a known name (probably being known among his fans works too), or have somebody in his circle vouch for you. Regular people don't get in.
Re: Bunnymark GL in Jai – 200k sprites at 200fps [video]
#64Earlier quoted context omitted.
Pretty sure overdraw / fillrate bottlenecks before vertex processing. Also you could draw that quad using strips which would then amount for only one more processed vertex compared to triangle. Edit: okay surely with modern architecture there is no pixel write because of some early alpha cut but you still have to fetch the texture to make it so texture fetch (memory) will bottleneck first. I guess.
You shouldn't use strips, they're slower than triangle lists on most GPUs. If by alpha cut you mean "discard", that's going to be much slower than two triangles. Two triangles will have a tiny bit of quad overshading on the seam, compared to a full extra triangle's worth in the alpha cut case.
Re: Bunnymark GL in Jai – 200k sprites at 200fps [video]
#65Earlier quoted context omitted.
You shouldn't use strips, they're slower than triangle lists on most GPUs. If by alpha cut you mean "discard", that's going to be much slower than two triangles. Two triangles will have a tiny bit of quad overshading on the seam, compared to a full extra triangle's worth in the alpha cut case.
Yeah discard use to be slow because it flushes pipelines or mess with branching predictions I don't remember which, I just assumed they "fixed" that by now.
More vertices is not a big problem, doubling your vertex count is not a big deal, since most GPUs process vertices in groups of 32 or more, and whether multiple instances get packed in the same group depends on the GPU vendor.
Re: Bunnymark GL in Jai – 200k sprites at 200fps [video]
#66Re: Bunnymark GL in Jai – 200k sprites at 200fps [video]
#67Earlier quoted context omitted.
Just to be clear - you're writing a "software-based" 3D renderer, right? This is the sort of thing I excelled at back in the late 80s, early 90s, before the first 3D accelerators turned up around 1995 I think. What features does your renderer support in terms of shading and texturing? Are you writing this all in a high-level language, e.g. C, or assembler? If assembler, what CPUs and features are you targeting? And o…
> you're writing a "software-based" 3D renderer, right? Yes. This is 100% what you are familiar with. > What features does your renderer support in terms of shading and texturing? I have a software-defined pixel shading approach that allows for some degree of flexibility throughout. Each object in the scene currently defines a function that describes how shade its final pixels based on a few parameters. > Are you wri…
Plus, of course it will run on anything.
I hope you'll be willing to open the code at some point...
Re: Bunnymark GL in Jai – 200k sprites at 200fps [video]
#68Earlier quoted context omitted.
> One fun thing I discovered is just how low latency a pure CPU rasterizer can be compared to a full CPU-GPU pipeline i'm definitely going to have to test that! always trying to minimize input delay
I think it can reduce input delay enough to change streaming gaming economics, but the current state of cloud economy makes it difficult to scale in practice.
Re: Bunnymark GL in Jai – 200k sprites at 200fps [video]
#69Earlier quoted context omitted.
That only applies if you are a known name (probably being known among his fans works too), or have somebody in his circle vouch for you. Regular people don't get in.
this is untrue. (source: firsthand)
Re: Bunnymark GL in Jai – 200k sprites at 200fps [video]
#70Earlier quoted context omitted.
this is untrue. (source: firsthand)
Curious. Did that change more recently? When did you enter?