Rain on a window has this strange effect of collapsing sound and space. You can’t hear dogs and sirens and traffic anymore – the things that give the city scale and make you feel small in it. There’s just the immediacy of rippling and tapping water on the window, as if there’s nothing and no-one else at all.
Sorry this is another one in the ‘I got too lazy to stop’ type of post. Thank you 148-ish weekly readers. If you like this let me know, if you don’t, keep it to yourself. [The first bit here is a bit introspective, self-aggrandising, pathetic and reflexive, though it does talk a bit about how I go about making these sketches. If you’d rather some maths and a fun speculation, skip to part 2.]
I Can’t Keep Up With My Dissatisfaction
I was watching Grayson’s Art Club last night. I really like it in the same way that I like watching videos of animals being rescued on Facebook; it’s sort of meaningless but it makes you feel good. It’s probably quite staged or at least misrepresented but it feels intimate and real and I’m perfectly happy to shut down critical faculties to smile a bit. Anyway, he was talking about flow and where to start and where to stop when making art and I was disheartened at how satisfying he finds that process and those questions. I find it endlessly frustrating. I’m not trying to claim these sketches as art so perhaps the comparison is mute but I get to this horrible point every week where the idea of the sketch starts receding into impossibility. Like this week, I started with a really simple premise ‘What would a frozen explosion look like?’ Not like a bullet-time Hollywood thing more like what if someone froze an explosion and put it in a museum?
I was inspired by the images of the Challenger shuttle disaster which are almost like a museum piece; like a moment in time that was captured by dozens of cameras from dozens of angles. It’s profoundly sad for many reasons but it’s a spectacle in its sadness. The subject also provided a technical challenge which was to use Blender’s new Mantaflow smoke simulator to try and get as close as possible to a specific explosion. So, I began by endlessly reiterating the simulation; running it, tweaking, running it, tweaking, running it ad infinitum. Most of my Saturday morning was just fram-ing (I’m using this word I just made up in the same way that you might say ‘inching’ but moving a frame at a time) keyframes to get the effect as close as possible.
There was lots of new stuff to figure out here. Mnataflow is quite different to Blender’s previous in-house system. It’s faster and more accurate but needs more care to get there. Then I wanted to get the lighting right, so I imagined it would be artificially lit with blue indirect sky light and yellow-white from the sun. So I set up area lights and position them and then modelled big stadium floodlights. Then it needs something to control it, so I put in rods to hold it up and a server to keep the fire ‘warm.’ Anyway, it goes on and on and after six or seven hours I just realise that the point where I’m happy is only getting further away. And that’s when I chose to stop and send it to render. And it’s the same every time. I’ve never reached the fabled ‘yeah, I’m happy with that, time to stop.’ I give up at ‘I can’t keep up with my dissatisfaction.’
It’s a feeling I get a lot in other things too; that I can keep working forever and never get it right, so I stop there. It’s the same, for example, with hard books. If after a few chapters I’m still in ‘no, I don’t get it’ I give up because I know there’s just more to re-read if I keep going. The acceleration of my not-understanding outpaces the possibility of my understanding and there’s only so much damn time.
Anyway, this all made me think about another accelerating relative cost; the energy required to accurately simulate energy:
The Solar Cost of Realism
This week’s digital sketch was produced in Cycles which is Blender‘s ray-tracing engine. As a quick explanation of what those words mean, Blender is a 3D rendering program that can model and simulate things in 3D. You can use it for architecture or 3D printing but it’s best geared for images and animation which is what I do. Blender has a couple of engines which are basically the ways it runs certain processes. An engine is a good analogy actually, it’s similar to having to having a car which you can switch between electric and diesel; it moves forward but the way in which it does that is different and has different qualities. (This is a bad analogy in that electric engines are clearly superior to diesel engines while the different engines in Blender serve different purposes.)
Last year, Blender released Eevee to great excitement, and rightly so. Eevee is an attempt to compete with Epic’s Unreal engine, which is basically what a load of video games and increasing amount of cinematic special effects are made in. I’ve been playing around with Eevee since release last summer and all the sketches I’ve done here have been made with it. The difference between Eevee and Cycles is simple: Eevee is quick, Cycles is accurate. The main way they do this is a bit more complex but not too complex:
Cycles uses ray-tracing. This is a process where the engine attempts to trace the path of all the light rays from all the light sources as they bounce around all the stuff in the scene and end up in the camera. This means you get a greater degree of accuracy the more sampling you do: The more time you leave the engine to iterate over and over again on the rays being traces, the more accurate the lighting. So in this week’s rendering it used 256 samples; each pixel has been checked 256 times for the right colours based on the light bouncing around in the scene. This takes about 8 and a half minutes per full HD frame, this is not real-time rendering when you think that a frame is about a twenty-fifth or so of a second on a good day.
Eevee is a real-time (ish) rendering engine that uses light-mapping AKA rasterizing AKA direct lighting instead of ray-tracing. Instead of tracing the path of the light sources, the engine sort of ‘paints’ things like shadows on to surfaces receiving them and generates a flat image (or ‘map’) of the colours of those surfaces. This is how video games generally work, although contemporary hardware is able to get pretty good at real-time ray tracing. The down side of this process is a loss of accuracy; reflections, bouncing, indirect lighting, ambient light and other incidental artefacts of physical reality are very difficult to get in real-time so you get much less accuracy. But, a frame takes about 20 seconds to render.
Unreal is a remarkable exception to this law of cost vs accuracy they’re very close to closing the gap on accuracy and speed as the Unreal 5 demos showed and their use in recent on-set special effects shows. So, while tapping my feet for 58 hours, waiting for this week’s sketch to render I wondered about the relative costs. How far do we go for realism? When does realism actuall start to tug at reality in the cost of producing it? How much light do you need to produce realistic light?
Well, Cycles runs off a graphics card and I can calculate, to a reasonable degree of accuracy the power that card draws…
- My NVIDIA Geforce GTX 1070 uses a maximum 150 watts power according to NVIDIA’s specifications, 161 watts according to this site but Tom’s Hardware agrees on 150 so let’s go with that.
- The NVIDIA software on the PC shows it averaging 67.5% of maximum power which is
150 x 0.675 = 101.25 watts
. - The rendering is taking about 8 minutes 30 seconds per frame for 415 frames:
8.5 x 415 = 3527.5 minutes
or58.791667 hours
or58 hours and 47 minutes
. - So, in kilowatt-hours that’s
101.2 x 58.791667 = 5,949.71667004 watt-hours or 5.95 kilowatt-hours
. - How much power a solar panel produces is 🤷 dependent on a bunch of stuff but seems to be in the range of 250-400 watts. If we had continuous sunlight for 58.7 hours then this Blender would be using approximately half of it. At the moment the UK is getting around 11.5 hours sunlight a day but… it’s Britain. On a cloudy day, solar panels operate at approximately 10-25% efficiency. So…
- Best-case scenario:
400 watts x 0.25 x 11.5 hours = 1150 watt-hours
or1.15 kilowatt-hours
. - Worst-case scenario:
250 watts x 0.1 x 11.5 hours = 287.5 watt-hours
or0.2875 kilowatt-hours
- Let’s average it out to
0.8625kwh
per day.
- Best-case scenario:
- It’s going to take
(58.791667 / 24) = 2.4496527917 days
to render.0.8625 x 2.4496527917 = 2.1128255328
kwh
produced by our imaginary solar panel in that time in British weather. While we need5.95 kwh
. So we’d need three solar panels, just to run the GTX 1070 to produce this week’s digital sketch. This obviously doesn’t include any other part of the computer, the screen or my flat.
So Cycles is terrible for the environment and I’m never happy anyway so back to Eevee next week. At least it doens’t put a big dent in the planet to use it.
Short Stuff
- I already opined about the ‘oh my god they kept all the health data in Microsoft Excel’ story over on the hateful Irish microblog. Listen, what did you think big data was exactly, it was always just bigger Excel files? In parallel, this story about Palantir’s upcoming IPO came out recently. The short version is that Palantir basically makes nice interfaces and isn’t actually that smart.
- St. Vincent is really into Fortnite and is now doing livestreams.
- I loved the new Watchmen series. I don’t know if that’s the right thing to say or if it’s problematic or not but I just though it was so fucking smart. I’m sure someone will tell me why I’m wrong.
- Open AI continues to undermine its credentials, its mission and, you know, its actual name by licensing GPT-3 exclusively to Microsoft. (I made a promise, which I’ve definitely told you about before, to stop spending energy being outraged at hypocrisy, so this is just an FYI rather than a ‘can you fucking believe it?!’)
- I’ve been spending a lot of time on the proper bike and not much on the fixed gear, I got on it the other day to go into town and was shocked at how hard it was to push along for something that for the last fifteen years has bene as natural as walking. Anyway, I’ve definitely posted this before but here again is Ana Puga’s Hotline which I always turn to for inspiration. She’s an incredible mover; proper ‘I’m a leaf on the wind’ stuff. Which is nice to see again after how janky men’s racing has been over the last few weeks.
I’ve been trying to call people I haven’t spoken to in ages just to chat. Lots of folks have reflected on how the various states of lockdown have given them perspective and I realised that I don’t spend time talking to the people who inspire me enough. Anyway, if you’d like to just have a chat, let me know. I’d love to chat with you. If not, I’ll write you again next week. Love you as always.