Alex Goldring

774 posts

Alex Goldring banner
Alex Goldring

Alex Goldring

@SoftEngineer

Building Shade — next-gen Web graphics engine | Graphics engineer

Katılım Ağustos 2009
41 Takip Edilen2.3K Takipçiler
Alex Goldring
Alex Goldring@SoftEngineer·
Added denoiser and temporal resampling to ReSTIR DI, finally put the T in the name.
English
2
0
29
1.7K
Octamed
Octamed@Octamed·
@SoftEngineer @Stretchedwiener Perception of value is everything when you want an audience. Do whatever you like for yourself. I don't do art, so I'm not talking about me. "1. your art is void of originality 2. your art is void of skill" that's a completely baseless assumption. If anything it's the opposite
English
1
0
1
11
Alex Goldring
Alex Goldring@SoftEngineer·
There's an essay from 1958, called "This pencil". The premise is that the common wooden pencil, could not be made by any single person on the planet, because too many skills and expertise go into it. If you take AI away from and "AI artist" - he can't create as effectively. If you take Photoshop from a digital artist - he can't create as effectively. You can continue this chain and * take away modern acrylic paints * take away oil based pre-mixed paints * take away pigments * take away the brushes * take away the textiles that make up the canvas * take away the paper We always rely on something. As an example - 100 years ago a typical work week was 6 days and 12 hours / day. Today we rely on the abundance of leisure time. Not going to make a claim on whether that's good or bad. But a modern person does lot live in a vacuum and being completely self-sufficient and independent is an illusion. As far as AI goes, there is an argument that a company X (no relation) could just take away your AI access. But there are already very competent free models, and some of them are already small enough to run on moderately powerful machine like a mac mini.
Molody 🇨🇱@MolodyGs

Democratization is great, and many past technologies have made art more accessible or simplified technical processes. I don’t think generative AI is inherently bad; technology itself is not evil. The problem, to me, is the kind of democratization it creates. Now anyone can generate a “pretty illustration” or an AI video, but many people seem more focused on the final result than on actually understanding how to make art. As you said, in 10 years a child might see Photoshop as outdated. But if you take AI away from that child, they may no longer be able to create anything, because AI was their main tool. If you take Aseprite away from me, I may stop making pixel art in that specific way, but my artistic knowledge remains. I could still pick up a canvas and draw traditionally. That is my concern: AI makes creating art so easy that many artistic and technical skills may be lost. People could become so dependent on it that learning anatomy, composition, or other fundamentals may seem unnecessary. I don’t think using generative AI is bad. What I find problematic is when 100% of the work is made with AI.

English
7
0
4
2.9K
Alex Goldring
Alex Goldring@SoftEngineer·
To me that's a matter of how you look at it. If you take a brush and wave it around like a madman, then have a look around - you will have chaos, that's true. But it would not be complete chaos, it would be chaos limited by how many times you waved your hand, how big the brush was, how viscous the paint etc. And those thing in turn will be somewhat predictable. If asked to do this, an average person will pick a brush with a tight normal distribution, will perform motions with force and acceleration within a tight distribution, and even the number of motions. If, on the other hand, you placed a very precise jet gun in the middle of the room, that could shoot precisely 1 droplet of pain at high speed, and then you feed white noise to an algorithm that would pick a direction and a color - that could be a lot more chaotic. My argument is that something like midjourney is much closer to a human here, the result that you get is something that looks like a coherent picture, but only because of the viewing lens. There is "chaos" in a sense, it's just expressed differently, projected differently to the output. Imagine you told a guy "xasadqydsfnsdyfwwqpnsdfahq%2!" and then push him blindfolded into a room with a canvas and a brush dripping with paint. He would produce "chaos". Then, you bring in a professionally trained artist, and ask that artist to not get creative for you, not make any artistic choices, just interpret what they see on the canvas as best they can, as conservatively as they can, and paint a picture. I think most people would agree that there's little creativity or artistic expression involved in the process, most artists would loathe this kind of process. But you would get close to midjourney in a sense. Hope my perspective makes sense?
English
0
0
0
13
Wetterschneider
Wetterschneider@Stretchedwiener·
All good, Alex. I was a bit spicy. My viewpoint is that media (oil pastels, watercolor paint) doesn't "make choices" - it is a choice we make when we choose to use them, because of our understanding of their nature and application. Yes, they have physical properties - one is thick, the other might be drippy. We're choosing to use them because we understand that. If I close my eyes and splat watercolors around, the result will be a chaotic mess. If I close my eyes and pound the keyboard while using Midjourney, the result will be... a chaotic mess? No, Midjourney will output an image. Saying MJ is making "choices" is a metaphor. Obviously it isn't, because it is software and has no will or thought process or anything. But the output having the subject there and background like that and the lighting coming from this direction - those are the kinds of "choices" I'm referring to. AI generative software will "make" them, when prompted for "still life of apple on table".
English
1
0
1
25
Alex Goldring
Alex Goldring@SoftEngineer·
I think this is fine. If you're getting told "this is ai" it's one of two things: 1. your art is void of originality 2. your art is void of skill In which case - it's probably something you should work on. It could be that people just want to insult you or get a reaction of course. The 3 second argument and 3 months - this is sad to me. Effort is commendable, effort is morally positive, but effort does not make good art. I'm incredibly slow as an artist, not that I draw or paint at all in recent years. It used to bother me that someone spends 10 minutes on a sketch that looks just as good as something that took me hours. It doesn't bother me anymore, some people are just more talented, some people are more creative, some people have put in way more effort into training their skill to the point where they are just that efficient.
English
1
0
0
25
Octamed
Octamed@Octamed·
@SoftEngineer @Stretchedwiener Whether it qualifies as art or not, the simple matter is there's no way of knowing if someone put 3 seconds or 3 months worth of effort in. People will assume the 3 seconds and that's what it will be worth. Already actual artists constantly get 'this is ai' on their life's work.
English
1
0
2
11
Alex Goldring
Alex Goldring@SoftEngineer·
A bit late, but why not. I don't know much about you, so I apologize if it comes out one way or another. If you want to paint with the highest fidelity, realistic to life, and in a way that lasts - you paint with oil. Or at least you used to "back in my day". If you want airy and light feel - you paint with watercolor. If you want control - you go acrylic. Now, acrylic is quite dull, or, again, used to be back in my day. Let's say you go with oil paint - your creative freedom is limited by the tool. You could say you chose it, but you likely didn't choose every aspect of it, you made a practical decision and embraced the rest. Personally I can't do watercolor, because the diffusion bothers me too much, I can't control it, and I can't refine anything - you only get one pass. But I love seeing good watercolor. My point is - your choice of art tools is a limitation, you could call it choice, but in the same way you'd have to accept that choosing, say Midjourney is a choice, and it just comes with an entirely new set of limitations. So, yes, I disagree with your statement that more traditional media doesn't make choices for you. If you're a professional working with AI art, not just a casual amateur - you're doing a lot more than just writing prompts. Comparing ai, prompted with "draw apple" to traditional media, the closest comparison would be a coloring book or paint by numbers. And those don't offer a whole lot of choices to the artist either. It goes both ways, AI offers a lot more choices when used as a part of a workflow than most opponents of the technology seem to think. At the same time, traditional media offers a lot less "freedom" for expression than some people seem to think.
English
1
0
0
35
Wetterschneider
Wetterschneider@Stretchedwiener·
@SoftEngineer @Octamed If you want to pretend you didn't say what you said - delete the original tweet first. You definitely, absolutely, didn't say "the opposite actually".
Wetterschneider tweet media
English
2
0
2
19
Alex Goldring
Alex Goldring@SoftEngineer·
@sampavlovic Yep, use it a lot throughout the engine. It's a very elegant solution, love it.
English
1
0
1
71
Sam Pavlovic
Sam Pavlovic@sampavlovic·
@SoftEngineer Have you tried À-Trous denoising? Found it very useful for purely spatial denoising that gives us result almost the same as temporal over many frames for a shadow mask
English
1
0
1
194
JetBoats
JetBoats@JetBoatsGame·
@SoftEngineer if only an infinite amount of rays could be cast, and rendered without deferring
English
1
0
1
16
Alex Goldring
Alex Goldring@SoftEngineer·
Megalights-style ReSTIR DI (direct illumination). Basically ray-traced shadows for unlimited number of lights. Here every candle is its own separate soft light source with correct penumbra. No TR part yet, and a bunch of optimization missing still. #WebGPU #WGSL in the browser
English
3
3
70
3.6K
Tom
Tom@CompilingTom·
@SoftEngineer Impressive! WebGPU + JS? I’ve thought about experimenting with trying to build a small WebGPU demo with C++
English
1
0
1
25
Alex Goldring
Alex Goldring@SoftEngineer·
@_dan_jackson You're right, I will look into it. I was afraid that downsampling would destroy some of the bright features or introduce temporal instability.
English
0
0
1
33
Dan
Dan@_dan_jackson·
@SoftEngineer Looks great! I think if you sample a downscaled texture you can avoid the gaps in the bokeh kernel
English
1
0
1
54
Alex Goldring
Alex Goldring@SoftEngineer·
@dgant I'm just glad we got something😅 But yeah, would love to have HW RTX, along with a bunch of other goodies like mesh shaders and compute graphs, honestly the gap is pretty wide and it will keep widening over the coming years as WebGPU standard stands largely still.
English
0
0
2
70
Alex Goldring
Alex Goldring@SoftEngineer·
It really depends, but shadows are pretty fast nowadays, so unless you're working on a massive scale it's usually fine to just render those with some clever culling. If not - typically static shadow caches are employed, as they can be much faster to compute and they plug into the existing shadowing pipeline very nearly
English
0
0
0
26
Alex Goldring
Alex Goldring@SoftEngineer·
Added a denoiser and fixed the seams. Pretty happy with the results. The lightmap mode is mixed, meaning only indirect is baked in, so that direct lighting continues to work as before. This is pretty standard, but a lot of frameworks get this wrong.
Alex Goldring tweet mediaAlex Goldring tweet media
Alex Goldring@SoftEngineer

Working on an in-engine lightmap baker. Atlas generation solved, using existing engine's path tracer for irradiance. Still a few rough edges to sort out around borders and seams + a denoiser. Bake is entirely on the CPU, but it's fully progressive.

English
2
1
36
2K
Alex Goldring
Alex Goldring@SoftEngineer·
Working on a Depth of Field effect
Alex Goldring tweet mediaAlex Goldring tweet media
English
0
0
21
3.4K
Alex Goldring
Alex Goldring@SoftEngineer·
Spatial audio with acoustic simulation in the browser. Heavily inspired by Steam Audio ( of @Steam ). The solution is probe-based. Unlike Steam, the probe mesh is sparse and connections are partial, making the graph much smaller and faster to traverse. Sparse probes also mean that it adapts to spaces, requiring fewer parameter tweaks and scaling to huge spaces. There are a number of different features, including pathing if you want it, which routes sound around corners with correct attenuation and transmittance. There are participating media volumes, allowing you to mix air and water for example with support for arbitrary shapes. Surfaces have acoustic material representation, with absorption and transmittance per-band. When pathing is enabled - this demo runs simulation at ~1ms per frame and scaling sub-linearly in number of probes, without pathing it's constant 0.1ms, regardless of number of probes. When simulation is enabled for an emitter - we cast primary visibility (audibility) rays towards the listener, so we get primary occlusion even if pathing is disabled. The leaking that you can hear outside of the walls is transmittance of the materials, allowing some of the lower frequencies through and subtly shifting others. Pathing seems easy, but it's not, because we have to model reflection, the sound can't just travel between 2 probes, it depends where the sound is coming from and where it's going to around each probe. We bake that using spherical gaussians, the end result is very convincing and takes advantage of the materials' existing scatter/absorb properties.
English
2
2
45
3.4K
Alex Goldring
Alex Goldring@SoftEngineer·
@we_arent_here It is, but sometimes you don't have access to the GPU, such as on the server. Also, for lightmap baking, often speed is not that important. It's a really nice thing to have, but you bake lightmaps very rarely.
English
0
0
1
60
Alex Goldring
Alex Goldring@SoftEngineer·
Working on an in-engine lightmap baker. Atlas generation solved, using existing engine's path tracer for irradiance. Still a few rough edges to sort out around borders and seams + a denoiser. Bake is entirely on the CPU, but it's fully progressive.
Alex Goldring tweet media
English
2
2
62
5K
Alex Goldring
Alex Goldring@SoftEngineer·
@ggsimm Ha, same here, I've been tinkering with fluid sims for years, but that presentation specifically was really inspiring
English
0
0
0
12