mastodon.world is one of the many independent Mastodon servers you can use to participate in the fediverse.
Generic Mastodon server for anyone to use.

Server stats:

9.6K
active users

#computergraphics

2 posts2 participants0 posts today

Doing some experiments with #RayTracing #ComputerGraphics using #Bonzomatic #GLSL #shader editor.

I define a 24-cell as the intersection of 24 half-spaces in 4D (with normals all permutations of (±1,±1,0,0)), then slice through constant 4th coordinate to get a 3D object, and simulate it as a glass-like material with reflection and refraction.

Future enhancement ideas:

- handle polarised light properly (currently I ignore polarisation, simply averaging the Fresnel reflection coefficients)

- wavelength-dependent index of refraction and absorption

- anti-aliasing (currently the edges are steppy as there is only 1 sample per pixel in a regular grid)

- improve efficiency (internal ray bounce is O(N^2) where N is the number of surfaces, could probably be O(N) with some extra maths insights)

- do 4D->3D slicing on CPU instead of every ray bounce

- add other 4D shapes

#Polarisation is something I haven't done before, so I'm curious to see how to implement it and how it changes appearance.

Wrote some more about extending the "HAKMEM 149 line algorithm" to a quad rasterizer to be able to draw billboards (sprites) up to 3D sprites, the HAKMEM approach (and forward mapping) lose a bit of interest when degrees of freedom (and projection) are added up though but it was fun to retrace the sprites history a bit. :blobcatcomfysmirk:

onirom.fr/wiki/codegolf/main/#

I stumbled upon an interesting blog today while searching for an image of the Silicon Graphics 3D cube logo. Named "Abort Retry Fail" by Bradford Morgan White, the blog's articles document computer history. I eventually wound up reading three of them.

#1 "The Rise and Fall of Silicon Graphics"

abortretry.fail/p/the-rise-and

Abort Retry Fail · The Rise and Fall of Silicon GraphicsBy Bradford Morgan White

ProtoGS: Efficient and High-Quality Rendering with 3D Gaussian Prototypes

arxiv.org/abs/2503.17486

arXiv logo
arXiv.orgProtoGS: Efficient and High-Quality Rendering with 3D Gaussian Prototypes3D Gaussian Splatting (3DGS) has made significant strides in novel view synthesis but is limited by the substantial number of Gaussian primitives required, posing challenges for deployment on lightweight devices. Recent methods address this issue by compressing the storage size of densified Gaussians, yet fail to preserve rendering quality and efficiency. To overcome these limitations, we propose ProtoGS to learn Gaussian prototypes to represent Gaussian primitives, significantly reducing the total Gaussian amount without sacrificing visual quality. Our method directly uses Gaussian prototypes to enable efficient rendering and leverage the resulting reconstruction loss to guide prototype learning. To further optimize memory efficiency during training, we incorporate structure-from-motion (SfM) points as anchor points to group Gaussian primitives. Gaussian prototypes are derived within each group by clustering of K-means, and both the anchor points and the prototypes are optimized jointly. Our experiments on real-world and synthetic datasets prove that we outperform existing methods, achieving a substantial reduction in the number of Gaussians, and enabling high rendering speed while maintaining or even enhancing rendering fidelity.

#GameDev #ComputerGraphics #Normals #Meshes I am already well familiar with the concepts of vertex and face normals, and I know ways to calculate them for simple, or even quite complex cases. Simple being all smooth, or all facetted. Moderately complex being where we have some sharp and some smooth edges, maybe based on an angular threshold, and can share or split verts/normals accordingly.

But... but... what do we do when the mix of sharp and smooth edges is ambiguous, like in the picture. The red edge is sharp and the three blue ones are smooth, so how do we treat the 4 polygons where they meet at the vertex? There is no clean division between polys which connect smoothly and ones which should be separate rotating anticlockwise from A to D, all the edges should be smooth, so A should share a normal with B, and thus with C and eventually D, but going the other way, from A straight to D, we'd like the line to be sharp and we'd like them not to share. Obviously we can't have both. It's a puzzler...

🚩 "Startup claims its Zeus GPU is 10X faster than Nvidia's RTX 5090: Bolt's first GPU coming in 2026"

The Zeus GPU seems like a ray/path-tracing specific solution, not a real-time gaming GPU. I imagine it would be useful for offline 3D rendering... which I can live with 👍

tomshardware.com/pc-components

Tom's Hardware · Startup claims its Zeus GPU is 10X faster than Nvidia's RTX 5090: Bolt's first GPU coming in 2026By Anton Shilov
#Zeus#GPU#ZeusGPU