I published "Computer Graphics: Follow the light". My talk at Paestum Tech Days, 1st of September 2024. Italian with english subtitles.
https://www.youtube.com/watch?v=2r3eyy8Y3Bw
Naive pathtracing needs a high number of samples per pixels to get an acceptable result, and shooting too many rays drastically affects FPS. But then look at the result once it starts importance sampling the light! π‘
#vulkan #raytracing #rust #rustgpu
19.6.2024 19:44Naive pathtracing needs a high number of samples per pixels to get an acceptable result, and shooting too many rays drastically affects FPS....After several weekends spent debugging validation layer errors and my iterative pathtracing algorithm, I can finally enjoy a bit of home-made real-time interactive raytracing.
#Vulkan #RaytracingPipeline #Rust #rustgpu
15.6.2024 16:14After several weekends spent debugging validation layer errors and my iterative pathtracing algorithm, I can finally enjoy a bit of...ANGLE finally has a ninja target for installing it to a user-defined prefix with pkg-config files for libEGL and libGLES*! π€
https://chromium-review.googlesource.com/c/angle/angle/+/5553797/5
3.6.2024 09:53ANGLE finally has a ninja target for installing it to a user-defined prefix with pkg-config files for libEGL and libGLES*! π€...I encountered a file.c which first line is a comment suggesting to run it with ππ ππππ.π
I laughed hysterically for 5 minutes.
19.8.2023 08:14I encountered a file.c which first line is a comment suggesting to run it with ππ ππππ.πI laughed hysterically for 5...Er, close enough.. #egui
27.7.2023 15:38Er, close enough.. #eguiI mean, I just wanted to draw a series of diagonal lines, but that's nice enough. #egui
27.7.2023 15:21I mean, I just wanted to draw a series of diagonal lines, but that's nice enough. #eguiWow, this is new..
#pathtracing
Sometimes I am not sure if there is a bug in my raytracer or I am just making digital art.
7.4.2023 17:07Sometimes I am not sure if there is a bug in my raytracer or I am just making digital art.When using a variable, the compiler looks for it in the list of symbol tables from the most recent (back of the list) to the least recent (front of the list).
If it does not find it, a ππππππππ πππππππππ error is emitted.
When defining a variable, a new entry (ππππ, πππππππ ππ ππππππ’) is added to the most recent symbol table (local scope, back of the list).
21.11.2022 08:18When defining a variable, a new entry (ππππ, πππππππ ππ ππππππ’) is added to the...Variables in the #Cal programming language: the compiler maintains a list of symbol tables.
Each function has its own scope for local variables, effectively appending a new symbol table to that list, and popping it when the function's scope ends. π§΅
21.11.2022 08:18Variables in the #Cal programming language: the compiler maintains a list of symbol tables.Each function has its own scope for local...Just added support for expressions to the #Cal programming language, defined recursively as (ππππ, πΎπππππ(πΎπππππππ, π΄π‘ππππππππ)). With this I can write code such as π· + πΈ + πΉ + πΊ + π» ... and so on, until the stack overflows. π€
18.11.2022 08:05Just added support for expressions to the #Cal programming language, defined recursively as (ππππ,...3. Clone lsp-sample and add the npm package as a dependency. https://github.com/Microsoft/vscode-extension-samples/tree/main/lsp-sample
4. Improve server.ts πππππππππππ‘ππ³πππππππ() by calling πππππ(πππ‘π) and catch any πΉππ²πππ΄ππππ to generate diagnostics.
5. Enjoy your productivity tool. π§βπ»
1. Implement a function πππππ(ππππ: &πππ) returning ππππππ<(), πΉππ²πππ΄ππππ>, where the error contains both a message and a range.
2. Use π πππ-ππππ πππππ --ππππππ and publish to GitHub npm registry.
I implemented a language server #VsCode extension for my #Cal programming language. It was quite simple. π§΅
16.11.2022 14:20I implemented a language server #VsCode extension for my #Cal programming language. It was quite simple. π§΅Translation to VM instructions requires improving the π²πππ instruction, adding a list of expression which are going to be the argument values, to the name of the function to call: π ππΈππππππππππ::π²πππ("πππ", ππ‘πππππππππ)
15.11.2022 17:23Translation to VM instructions requires improving the π²πππ instruction, adding a list of expression which are going to be the...Adding support for parameters to function calls in the #Cal programming language:
- the parser eats (
- checks whether it can parse any ππππππππππ: ππ’ππ separated by commas
- eats the final )
Adding support for calling a function in the #Cal programming language is straightforward. I parse an identifier followed by (), and then emit a π
ππΈππππππππππ::π²πππ. Thanks intermediate representation!
Adding support for args is the next step.
Adding support for local variables to my programming language. The easy way: allocating a ππ°π€π’π segment on the stack with size = (ππππππ ππ πππ ππππππππππππ) * (ππ’πππ ππππππ πππ ππππ ππππππππ)
13.11.2022 10:12Adding support for local variables to my programming language. The easy way: allocating a ππ°π€π’π segment on the stack with...