A brief history of the evolution of grammars, parsers and compilerse from 400 BCE onwards.
Running @aras's current C++ ToyPathTracer on my tablet (6650U/Iris540 = 23/80 Mr/s) & desktop (2500K/1070 = 30/465 Mr/s) is going on the list of why I should grab a new Ryzen later in the week.
Sanity check: the 1070 score almost perfectly predicts boost GFLOPS vs http://aras-p.info/blog/2018/04/16/Daily-Pathtracer-10-Update-CsharpGPU/; my Iris seems to be slightly ahead (maybe as it was before thermal throttle kicked in).
So this is interesting (& expect more once full reviews are out next week) - Ryzen CPUs running games with two different 3200MHz RAM kits with enough gap to be meaningful (presumed to be due to mobo tweaks/bugs impacting latency). https://www.gamersnexus.net/news-pc/3283-ryzen-2-pre-test-x470-vs-x370-scaling-memory-r7-2700x
I think it's brave of AMD PR/OEM partners to tell semi-informed consumers that they've got all-old Radeon 500Xs (the new 'X' meaning nothing has changed except the name) a week before they release new Ryzen 2000s that are actually revised parts with faster clocks & some architecture tweaks. 🤦
It's nice how much knowledge is embodied into Rust's type system, with traits, associated types, PhantomData for wrappers, etc. A lot of it just happens during compilation time and no artifacts remain in the object code - it's all compile-time enforced consistency; no runtime overhead.
The default binary sizes for Rust programs is a bit of a shock from C (but also you can't just rely on the platform having the std lib installed) so here's a good checklist when size matters (some tools you may need to find Windows equivalents): https://jamesmunns.com/update/2018/04/01/tinyrocket.html
I'll write a series of "n00b tries to pathtracer" blog posts. Mostly for laughs, and also to have something embarrassing in the future :) http://aras-p.info/blog/2018/03/28/Daily-Pathtracer-Part-0-Intro/
Something I've not seen noted in the discussion of HDR's value as a standard pushing high-nits output: that's only a peak output for white lights. The brightest R/G/B primary light you can display is about a third of that. If you want a 500 nits red traffic light, you need a screen that can push 1500 nits.
So with the hybrid real-time ray tracing stuff, my attention is being drawn towards how it needs us to better manage level-of-detail stuff (interacting with distant rays, based on ray density we presumably calculate on top of our denoise + temporal blend system?) - idly thinking on the Twitter convos that Aras's blog post linked to.
Best DXR/RTX thing I've read so far (kinda eager to play with & see costs vs existing RT SS GI/AO [hacks] on typical hardware): https://www.ea.com/seed/news/seed-gdc-2018-presentation-slides-shiny-pixels
TIL: If you have a window that can have either an OpenGL or a Vulkan context bound, and _every trace_ of that window is not completely expunged from OpenGL, creating a Vulkan swapchain for that window will fail with an utterly mysterious and undocumented VK_ERROR_INITIALIZATION_FAILED
Some quick incoherent (ha!) thoughts on DX Raytracing. http://aras-p.info/blog/2018/03/21/Random-Thoughts-on-Raytracing/
Most people are travelling to GDC this weekend but I'll be enjoying it from afar. Today, I'm wondering if the asset fidelity arms race is actually part of sustainable growth & if it'll be mainly slowing down anyway soon? http://blog.shivoa.net/2018/03/the-asset-fidelity-arms-race.html
Today has mainly involved reading details of current T(SS)AA solutions (with a side of HDR-done-right). Thanks to everyone who has written up/presented their engine's methods.
I realise it's not the first (free) documentary on the Steam video service but it's interesting to see more projects adding that to their distribution list (vs relying on YouTube/Google bandwidth). Wonder if Twitch/Amazon/(Prime?) have ambitions in this area. http://store.steampowered.com/app/804410/
The float_cmp crate can now handle librsvg's needs: https://github.com/mikedilger/float-cmp/issues/13
This is awesome. We no longer have "==" comparisons of floating-point numbers, which were almost always wrong.