HN user

leguminous

532 karma
Posts0
Comments94
View on HN
No posts found.

I disagree. There are some new (sub-) genres and great games since that period.

* Roguelites have proliferated: Hades is the most obvious example, but there are a variety of sub-genres at this point.

* Vampire Survivors (itself a roguelite) spawned survivors-likes. Megabonk is currently pretty popular.

* Slay the Spire kicked off a wave of strategy roguelites.

* There are "cozy" games like Unpacking.

* I don't recall survival games like Subnautica or Don't Starve being much of a thing in the PS2 era.

* There are automation games like Factorio and Satisfactory.

* Casual mobile games are _huge_.

* There are more experimental games, sometimes in established genres, like Inscription, Undertale, or Baba Is You.

Not to mention that new games in existing genres can be great. Hollow Knight is a good example. Metroidvanias were established by the SNES and PS1 era, but Hollow Knight really upped the stakes.

I'm sure I'm forgetting things and people will have some criticism, but I really don't believe games have stagnated in general.

What is the advantage over blue noise? I've had very good results with a 64x64 blue noise texture and it's pretty fast on a modern GPU. Are quasirandom sequences faster or better quality?

(There's no TAA in my use case, so there's no advantage for interleaved gradient noise there.)

EDIT: Actually, I remember trying R2 sequences for dither. I didn't think it looked much better than interleaved gradient noise, but my bigger problem was figuring out how to add a temporal component. I tried generalizing it to 3 dimensions, but the result wasn't great. I also tried shifting it around, but I thought animated interleaved gradient noise still looked better. This was my shadertoy: https://www.shadertoy.com/view/33cXzM

At some point, most NTSC TVs had delay lines, too. A comb filter was commonly used for separating the chroma from the luma, taking advantage of the chroma phase being flipped each line. Sophisticated comb filters would have multiple delay lines and logic to adaptively decide which to use. Some even delayed a whole field or frame, so you could say that in this case one or more frames were stored in the TV.

https://www.extron.com/article/ntscdb3

I think they are more accessible now than when that article was written. My wife and I bought a mid-trim Hyundai Kona Electric for under $35,000. Besides, lots of people buy used cars, and there are crazy deals on used EVs. I've seen Bolts go for under $15,000. 2 year old ID.4s are selling for under $20,000 in my area. You may not find a $5,000 beater, but EVs are penetrating further into the middle of the market now.

There are also lower ongoing costs for maintenance and fuel.

There is still the secondary wealth filter of having a place to park and charge, of course.

For example, 720 is tied to 13.5 Mhz because sampling the active picture area of an analog video scanline at 13.5 MHz generates 1440 samples (double per-Nyquist).

I don't think you need to be doubling here. Sampling at 13.5 MHz generates about 720 samples.

    13.5e6 Hz * 53.33...e-6 seconds = 720 samples
The sampling theorem just means that with that 13.5 MHz sampling rate (and 720 samples) signals up to 6.75 MHz can be represented without aliasing.

There's some history on the standard here: https://tech.ebu.ch/docs/techreview/trev_304-rec601_wood.pdf

CRTs didn't have pixels at all. They had shadow masks (or aperture grilles) and phosphors, which could be a triad of rectangles, lines spanning basically the entire screen height, or dots. They did not line up with the signal, so it doesn't make sense to call them pixels.

Aerated concrete is an established building material in some parts of the world. In Europe, a big manufacturer is Ytong, and they even make precast panels in addition to blocks.

It's made differently from this, though. It is aerated through a chemical reaction rather than mechanically.

CCCP was just a collection of existing codecs, they didn't develop their own. Most of the codecs in CCCP were patented. Using it without licenses was technically patent infringement in most places. It's just that nobody ever cared to enforce it on individual end users.

I've been vegetarian for a long time and I still think Beyond burgers are great. I have a pack of them from Costco in the freezer. I like black bean burgers, too, but Beyond burgers taste like my (distant) memory of a "normal" burger.

In any case, I assume Beyond was relying on getting more market penetration past just vegetarians and vegans. There just aren't enough of us to get to the revenue they seem to be targeting. Personally, I'll be disappointed if they end up disappearing.

Nobody is out there policing flicker rates.

Actually, Energy Star and California's Title 24 have flicker standards. They may not go as far as some people like, but you can look for these certifications to know that a bulb at least meets a certain minimum standard.

As far as I know, that's only support for the container format. You can't actually decode HEIC without also installing libde265, which you are supposed to have a license for. I'm not even sure how you'd go about getting an individual license.

On my 8-bit-per-channel monitor, I can easily see banding, though it is mostly obvious in the darker areas in a darkened room. Where this commonly manifests itself is "bloom" from a light object on a dark background.

I can no longer see banding if I add dither, though, and the extra noise is imperceptible when done well, especially at 4k and with a temporal component.

Some amount of vertical blending often occurred because scanlines tapered off in brightness, bleeding into the next scanline. For example, if the electron beam spot has a two dimensional gaussian profile, then the vertical profile of a scanline at a constant value will also be gaussian. If the height of the scanline (full width at half maximum of the gaussian) is around 1x the distance between scanline centers (a reasonable value at full brightness), then there will be significant overlap between neighboring scanlines. The point between the scanline centers will be a blend of them both.

How much blending there is depends on the brightness at that particular area (brighter parts of the image will have wider scanlines and more blending) and the characteristics and configuration of the particular TV.

If I wanted sharp pixels, I would use something like the pixel-art-scaling shaders in Retroarch. I like bandlimit-pixel and pixel-aa, but most of them look pretty similar. They basically try to antialias the pixel edges. I prefer to fill the screen as much as I can using the correct aspect ratio and not worry about integer scaling.

For more realistic blending, CRT shaders are pretty good now.

When my wife had some minor surgery (not fully anesthetized), there was a nurse present who counted all of the sponges, etc. that were used, then made sure there were that many on the tray at the end. They didn't match up, and it turned out that the surgeon had dropped one off of the table.

The article mentions that counting is standard procedure, so hopefully this is how it works everywhere. It definitely seems like having someone who isn't the surgeon doing the counting would be the way to go. The surgeon is already very focused and it's easier to say "I'm sure I didn't leave anything" when someone else isn't telling you otherwise.

Part of the reason the US government needs to use consultants is because they can't actually pay enough to hire senior developers directly due to the constraints imposed by the GS pay scales. Often times the top levels of the pay scale aren't even available because there is some rule about how people can't be paid more than someone else. So instead they pay for consultants and all of their overhead.

(Of course there are more reasons as well, but this is a popular one that some of my friends in government agencies complain about.)

Some US states require lead screening (blood tests) for babies and toddlers. In that case they are covered by insurance. My son has been tested once so far.

Using `mix()` isn't necessarily bad. Using boolean operations like `lessThan()` is probably better than `step()`. I just tested two ways of converting linear RGB to sRGB. On AMD, they compile to the same assembly.

Method 1.

    float linear_to_srgb(float v) {
        return v < 0.0031308 ? v * 12.92 : 1.055 * pow(v, 1.0 / 2.4) - 0.055;
    }
    
    vec3 linear_to_srgb(vec3 rgb) {
        return vec3(linear_to_srgb(rgb.r), linear_to_srgb(rgb.g), linear_to_srgb(rgb.b));
    }
Method 2:
    vec3 linear_to_srgb(vec3 rgb) {
        bvec3 cutoff = lessThan(rgb, vec3(0.0031308));
        vec3 upper = vec3(1.055) * pow(rgb, vec3(1.0 / 2.4)) - vec3(0.055);
        vec3 lower = rgb * vec3(12.92);
        return mix(upper, lower, cutoff);
    }

Those high COPs are probably for relatively small temperature deltas. Heat pumps get _less_ efficient when the temperature deltas are larger. See page 18 of the manual linked below for an example. As the temperature gets lower, the heating COP gets lower. The same should be the case with cooling (higher outdoor temperatures lead to lower COPs), but the data is not presented in the same way.

https://backend.daikincomfort.com/docs/default-source/produc...

This is a good point that I had not considered, and I will add a few additional thoughts:

* In cold weather, solar heat gain can work in your favor as well. Much of the effect will depend on the orientation, shading, and properties of your windows, though. On the other hand, as another commenter pointed out, more sun in southern, cooling-dominated climate can also mean more, cheaper electricity.

* If you have a heat pump water heater, it will actually _cool_ your space significantly. The heat is transferred from your home to your water and mostly goes down the drain with it.

* At 65F (18.3C), most people I know would already be wearing a jumper/sweater. That's why I chose a lower target temperature for Berlin. The best source I could find[1] indicates that in November-December of 2022 (in the context of rising energy prices due to Russia's war with Ukraine), Germans actually kept their houses at 19.4C, on average.

* Maybe I'm moving the goalposts a bit, but I chose Berlin mostly because the numbers worked out conveniently. As someone who grew up in the American upper midwest, I wouldn't consider Berlin to be particularly cold. Phoenix, on the other hand, is the hottest city in the country and its summers are some of the hottest in the world. In general, the hottest cities are still closer to what we'd consider room temperature than the coldest are.

[1] https://www.cleanenergywire.org/news/80-percent-german-house... (original report is on German)

What's the average monthly leccy bill in Phoenix during the summer? $400?

The average high temperature in Phoenix in July is 106.5F (41.4C). If you are cooling to 70.0F (21.1C), that's a difference of 36.5F (20.3C).

The average January low in Berlin is 28.0F (-2.2C). If you are heating to 65.0F (18.3C), that's a difference of 37.0F (20.5C).

I feel like many people living in climates that don't require air conditioning have this view that it's fantastically inefficient and wasteful. Depending on how you are heating (e.g. if you are using a gas boiler), cooling can be significantly more efficient per degree of difference. Especially if you don't have to dehumidify the air, as in Phoenix.

That sounds like bufferbloat[1]. You can usually address that by using a router that supports active queue management, but it's a little esoteric. Newer versions of DOCSIS also specify support for simple active queue management on the modem, and I think this has become a little bit better in recent years. I used to have Comcast/Xfinity service and they didn't do terribly with regard to bufferbloat. They didn't do well, either, but it used to be much worse.

Some of the cable ISPs also have such asymmetric service that you can use most of the upload bandwidth just with ACKs while downloading. They often use ACK suppression to reduce the number ACKs and use the link more efficiently.

[1] https://en.m.wikipedia.org/wiki/Bufferbloat

I have done something like this with a Lanczos kernel (a=1) downsizing repeatedly by 2x, a small Gaussian kernel, and then repeatedly upsizing by 2x with simple hardware bilinear sampling.

The (2D) Lanczos downsizing can be done with only four samples using the bilinear sampling tricks that you mention, and I avoided expensive trigonometric functions, divisions, and the singularity at 0 by using an even 8th order polynomial approximation. I would be curious to see the results using this kernel, but the Lanczos is so far the best that I've tried.

I assume that, if you aren't being sarcastic, you're European? Or at least not American?

You're currently down voted, but many Americans probably don't realize that some countries don't allow vented dryers. Vented dryers are standard here and many Americans have never seen anything else. They are indeed terribly inefficient, using the nice, conditioned, inside air once, heating it and then dumping it outside. All the air that is exhausted from the inside has to get replaced with air from the outside and has to be heated or cooled again.

I was using Taichi recently to prototype some fragment shaders (I just mocked out texelFetch, texture, etc and wrote a for loop over each pixel). I found it convenient to be able to run on the CPU and also not have to deal with any OpenGL or Vulkan setup.

One thing that was frustrating was that I couldn't template a function with another function (as far as I know). That lead to some copied and pasted code when I had multiple implementations that I wanted to compare. Can Metashade do that?