HNHacker News
TopNewBestAskShowJobs

Voltage

67 karma · joined April 15, 2008

submissionscomments
Voltage··on ASM Shader Toy
Here's the mini write up about how they achieved real time raytracing on the CPU 25 years ago:

https://web.archive.org/web/20060213141031/http://www.demosc...

Voltage··on Show HN: Beats, a web-based drum machine
https://www.youtube.com/watch?v=wYPY9-yjclo

Squeezing 3 hits (evenly placed) in the time that you'd expect to hit 2 hit.

Voltage··on Show HN: Beats, a web-based drum machine
https://beats.lasagna.pizza/?name=lo-fi+dust&bpm=95&i0=K0100...

Fun!

I'd love to be able to add triplets.

Voltage··on My AI skeptic friends are all nuts
Yeah, I'm very familiar with the tech, I've been interested in games dev and web dev for a few decades now. So you could be right, that the models aren't ready to "play on their own" yet.

I tried doing a warcraft 1 clone, but that felt too complex for the model being used (openai 4.1). That model was just the default setting in copilot.

I dug a little deeper this morning, and it turns out I hadn't actually enabled my copilot 'pro' mode, which has granted access to some more current or dev focused models. So I'll take them for a spin to see what they're capable of.

My goal here is to roughly get a sense for when a task is too complex for an "agent" to handle.

I also want to try adding custom tools to suit certain project needs. For example, Unreal Engine has a python editor interface, so I'd like to have an agent drive the editor to build something. I have my doubts.

Once I have a feeling for what level of complexity can be handled, I'll see if I can manage the tools better using this understanding, by breaking large and complex projects into appropriate chunks of work / complexity.

/endBrainDump

Voltage··on My AI skeptic friends are all nuts
I will. I'm just trying to evaluate the tools on a medium size task. I'm trying copilot's agent mode with the goal of creating a warcraft 1 clone. Or something resembling it.
Voltage··on My AI skeptic friends are all nuts
* It's not mobile friendly, and you use arrow keys to move around
Voltage··on My AI skeptic friends are all nuts
I'm on the side of AI is a huge productivity booster (by my guess... 10x)

But I don't want to make the claim lightly, so I did an experiment.

I signed up for copilot pro, and have been using their 'edit' feature. This is more than just their auto complete.

I set myself a goal to create a playable web game of classic frogger.

It took 4 hours with copilot "edit" and my full attention.

I didn't write a single line of code, but I did ask it to refactor and gave it a project description.

I suspect this would have taken me 4 days full time to get to this level.

Try it out:

https://dev.zebrar.com/jd/frogger/

Voltage··on Simulating water over terrain
Given my interest in games and demos, I feel the opposite. I'm always in search of the real-time method that looks plausible and can cover huge areas in 3d space.

Computational accuracy is not important to me at all.

Voltage··on Ask HN: What's the most creative 'useless' program you've ever written?
Yeah the demoscene jumps out as a good candidate to represent "creative 'useless' programs". :)

I make a few demos, but my personal favourite was this 4k (windows executable less than 4096 bytes):

https://www.youtube.com/watch?v=sBcwQCBpEiE

It uses all the fancy compressing linker tech (called crinkler) along with a tiny music player and a glsl raymarcher.

I tried to download it but all I get is virus warnings now... I guess malware devs also like crinkler. :(

Voltage··on Liquid Layers
https://david.li/fluid/
Voltage··on Build WebGPU apps with PlayCanvas
1) Can build to web mobile 2) Editor for the art team
Voltage··on Write shaders for the (sim) Vegas sphere
A big smiley face. :)

    uniform float time;
    varying vec2 vUv;

    // https://iquilezles.org/articles/distfunctions2d/ (Thanks IQ!)
    float sdRing( in vec2 p, in vec2 n, in float r, float th )
    {
        p.x = abs(p.x);
   
        p = mat2x2(n.x,n.y,-n.y,n.x)*p;

        return max( abs(length(p)-r)-th*0.5,
                length(vec2(p.x,max(0.0,abs(r-p.y)-th*0.5)))*sign(p.x) );
    }

    void main() {

        // create coordinates at visual centre (y coords doubled for circles)
        vec2 centre = vec2(0.25, 0.25);        
        vec2 uv = vUv * vec2(1.0, 0.5) - centre;

        // mirror x to get both eyes for the price of one, and find eye offset
        float eyes = length(vec2(abs(uv.x), uv.y) - vec2(0.035, 0.03));
        // carve them out using smoothstep
        eyes = smoothstep(0.015, 0.016, eyes);

        float mouth = sdRing(vec2(uv.x, -uv.y + 0.03), vec2(7), 0.65, 0.1);
        mouth = smoothstep(0.02, 0.025, mouth);

        float shade = min(eyes, mouth);
    
        vec3 yellow = vec3(0.9, 0.7, 0.0);
        vec3 color = shade * yellow;

        gl_FragColor = vec4(color, 1.0);
    }
Voltage··on Math breakdown: Anime homing missiles
Thanks for the tip.

I thought I recognized your handle! You wrote the "A Primer on Bézier Curves" article. Thanks for providing that amazing resource, it's been invaluable during my learning process.

Voltage··on Math breakdown: Anime homing missiles
Great article! I didn't know about Rotation Minimizing Frames or the double reflection method.

I've run up against the issue of unexpected twisting of splines at work more than once.

Voltage··on Australians ‘complacent’ to rapid growth in digital surveillance
As an Australian, is the best approach to encrypt all my storage and communications? Is that even possible when the potential threat is the government?
Voltage··on Apple’s app review prevents developer from submitting fix to game for the blind
I wholeheartedly disagree with this assessment of Apple. As a long time business owner and developer, I've had nothing but pain as a developer working with Apple technologies.

We've created over 100 cross platform experiences, and I'm seriously considering a #FckApple tattoo.

Voltage··on How to Hack APIs in 2021
Counter point: Often I am faced with doing it right or doing it within budget for an activation that is designed to live for a few weeks only. I aim for 100% compatibility with different hardware, OS, browser, user experience, client expectation and non suicidal business practices.
Voltage··on Satan should chair your meetings: A literature lover’s guide to office politics
"Satan should chair your meetings"

...

She already does.

Voltage··on Ask HN: What was the biggest contributor to your happiness in the past year?
Congrats on your PPL!

I did 10 hours 15 years ago, but stopped when my first baby came along.

Voltage··on Fitting Cubic Bézier Curves
I won't pretend to understand the intricacies in your article here, but have you seen this paper / video by Cem Yuksel (University of Utah)....

By my layman understanding the curves discussed in the following paper may be of use.

http://www.cemyuksel.com/research/interpolating_splines/a_cl...

https://www.youtube.com/watch?v=pK4zy5OKbHs

Voltage··on How to Read Assembly Language
In Example 3, there is a 'pushq %rax' but no subsequent pop command.

Error or is the stack being manipulated in another way elsewhere?

Voltage··on SuperRT – Realtime Raytracing on the SNES
Very cool indeed. Seems like a good platform to apply the demoscene trick of "adaptive subsampling" to greatly improve performance at the cost of a little image quality.

It takes advantage of the fact that pixels that are close together in screenspace are likely to be similar enough to interpolate from it's neighbours where possible. It focuses the computation time on areas where neighbouring pixels are very different, such as object boundaries, shadow boundaries and large lighting differences.

https://web.archive.org/web/20101123123238/http://exceed.hu/...

Voltage··on Questions to help people decide what to learn
As a long time self learner (35 years), I really enjoyed the learning format (and learning focus!).

I was surprised how much I enjoyed clicking I learned something, even though I got the yes/no answer "correct".

Well done Julia. You have me thinking if I should prep my own content to direct new users to when fundamental questions are asked.

Voltage··on Ask HN: Why isn’t visual programming a bigger thing?
I use Unreal Engine Blueprint visual scripting a lot, and I like it too.

Regarding your point about complex logic and number crunching can be alleviated by using a 'Math Expression' node... which allows math to be written in textual form in a node.

Voltage··on “Toggle-plexing” Sprites on the Commodore 64 (2019)
https://csdb.dk/release/?id=48577

You can actually get 9 sprites on a raster line, but only in a very specific configuration.

This absolutely blew my nerd mind when I saw it.

The famous English saying.... "Death, Taxes and 8 sprites per raster" no longer holds true.

Voltage··on Software Folklore – A collection of weird bug stories
A real life Heisenbug.

https://en.wikipedia.org/wiki/Heisenbug

Voltage··on A song that was constructed to reduce anxiety
I'm with you on both counts.

I like fast music without lyrics. Lyrics are distracting when I'm coding.

Voltage··on Music for Programming (2011)
If you haven't coded to Infected Mushroom, then you haven't lived. :)

http://www.youtube.com/watch?v=dLWXSsYJoWY&feature=list_rela...

Voltage··on 10 PRINT CHR$(205.5+RND(1)); : GOTO 10 (2012)
You could also do I=RND(-TI)

Providing a neg number to RND would "reseed" the random number generator. TI was a "system" variable that updates every 60th of a second.

Voltage··on 10 PRINT CHR$(205.5+RND(1)); : GOTO 10 (2012)
In CBM BASIC RND(1) returned a floating point value between 0.0 (inclusive) and 1.0 (exclusive).

205 + RND(1) would always evaluate to 205 when truncated.

205.5 + RND(1) pseudo randomly selects between 205 and 206

Page 1 of 2Next →