HN user

ehaliewicz2

225 karma
Posts0
Comments174
View on HN
No posts found.
No Graphics API 7 months ago

Seb is incredibly passionate about games and graphics programming. You can find old posts of his on various forums, talking about tricks for programming the PS2, PS3, Xbox 360, etc etc. He regularly posts demos he's working on, progress clips of various engines, etc, on twitter, after staying in the same area for 3 decades.

I wish I still had this level of motivation :)

Social Cooling (2017) 10 months ago

Damn, so you can just choose to not have guns pointed in your face? Regardless of where you live?

Everyone who has had a gun pointed in their face must have been really stupid then.

It definitely makes it simpler. You can do a per-screen window sort, rather than per-pixel :).

Per-pixel sorting while racing the beam is tricky, game consoles usually did it by limiting the number of objects (sprites) per-line, and fetching+caching them before the line is reached.

It depends on your network though. In my case the image quality was good, but going to the link cable was a substantial improvement in quality and latency.

Last year I emailed Ken Silverman about an obscure aspect of the Build Engine while working on a similar 2.5D rendering engine. He answered the question like he worked on it yesterday.

Sometimes "just thinking harder" works, but often not. A debugger helps you understand what your code is actually doing, while your brain is flawed and makes flawed assumptions. Regardless of who you are, it's unlikely you will be manually evaluating code in your head as accurately as gdb (or whatever debugger you use).

I think a lot of linux/mac folks tend to printf debug, while windows folks tend to use a debugger, and I suspect it is a culture based choice that is justified post hoc.

However, few things have been better for my code than stepping through anything complex at least once before I move on (I used to almost exclusively use printf debugging).

Those were the 90s. Modern rasterizers* all use barycentric coordinate based algorithms for a few reasons.

Easier to implement with proper fill conventions and multisampling, and much easier to parallelize in hardware and software.

* Hardware even back in the 90s used this type of approach :)

Bop Spotter 2 years ago

If your headphones are blocking sound, yeah it can be hazardous.

Bop Spotter 2 years ago

I'm willing to bet 99.99% of the time you hear music from outside a car it's not due to someone being hard of hearing, unless they caused that issue themselves by listening to music too loud.

However, if you are hard of hearing to the point where you are actually disturbing others, I would recommend headphones.

Bop Spotter 2 years ago

Realizing that you enjoyed being forced to listen to music you didn't decide to listen to doesn't mean you might be an asshole for not enjoying it at other times. That's ridiculous.

Yeah, for example, movs between registers are generally effectively no-ops and handled by the register renaming hardware.

Sure, but lack of perspective correct texturing is a separate issue, with a separate visual artifact.

Jittery polygons refers to the artifacts you get when polygon vertices are snapped to integer pixel coordinates, rather than taking into account subpixel positions. Quake did not have this issue, despite not using floating-point calculation in it's rasterization. It did use floating point when texturing spans, after rasterization, but this was more of an optimization than a fundamental requirement for accurate texturing :)

I'm guessing, just guessing, that most of the people who don't think slow execution is bad are probably not that interested in what the machine actually has to do to execute their code, and hence, are not actually well educated in making those tradeoffs.

Quake did not use floating point in it's rasterization math, and it exhibited none of the jittery polygon issues that the ps1 did. It's largely a lack of subpixel accurate rasterization causing it (not even sure if PS1 is pixel accurate, let alone subpixel :)) .

MVG isn't exactly an expert on 3D graphics.

It is not really any more 3D than the Saturn as it still does texture mapping in 2D space, same as the saturn. It's biggest advantage when it came to 3D graphics, aside from higher performance, was it's UV mapping. They both stretch flat 2D textured shapes around to fake 3D.

The N64 is really far beyond the other two in terms of being "fully 3D", with it's fully perspective correct z buffering and texture mapping, let alone mipmapping with bilinear blending and subpixel correct rasterization.

If it was an issue, and a simple gap buffer isn't fast enough, you could do a linked list of gap buffers. Would still be pretty simple, and probably very fast.

You didn't answer my hypothetical. Do they have the right to ensure that I am looking at their ads?

I don't see how they could, I can always look away. In that case, what is the effective difference between that and ad blockers that control what code/images run/display on my computer?