Pinned post

Here's Tangerine, my main personal project: github.com/aeva/tangerine

This is a CSG system built around composing signed distance functions in Racket. These are translated to an evaluator that can be ran on the CPU, and generated shaders for fast rendering. Models can be rendered in real time, or exported to common file formats for other purposes like 3D printing.

Pinned post

ok. i have two mastodon accounts i'm planning on using now:

mastodon.social/@aeva is where i'll post everything, and be more likely to follow back

mastodon.gamedev.place/@aeva is where i'll post the "gamedev" subset of all that (math, Tangerine, etc)

aeva boosted

Do you like mazes? This is from an old project I want to go back to at some point.

Dynamically generated circular hedge mazes that can change on the fly. Probably made by some wizard up to no good!

aeva boosted

Escape the office, lure your coworkers out of the way with coffee? (Also found a bug while recording this lol)

aeva boosted

Not sure what I'm going to make the gameplay like but here's what I have so far of the next minigame for my playdate pack...

aeva boosted

Why can't I sync my Steam achievements to LinkedIN? 😤

I wonder if it would be worth writing a Tangerine "importer" for UE5. This would just be a plugin that embeds Tangerine to pipe the mesh exporter into Nanite. It seems like something that should be "easy", but I don't know that I have any motivation to do any kind of Unreal development outside of work.

This tool I made to debug my occlusion culling system is pretty neat.

aeva boosted

Obsidian revolutionized my way of taking notes & how I structure information. Strongly recommend it to anyone that needs to keep things clear, dynamic & creative.
Got lucky enough to get to redesign how we share information internally. Created a streamlined system, as long as you get access to the top of the "stream", you will be able to flow your way further down with ease. In its core is Obsidian. Minimizing the usual "info-maze" devs struggle with.

obsidian.md/

aeva boosted

It's a lovely thing to see something you created grow and being used for everyone's benefit.


Show thread

an idea: if a given voxel hasn't moved or otherwise changed shape since the prior frame, the culling test could be made stricter to eliminate false negatives for empty voxels in front of the actual rendered surface 🤔

Show thread

Also I pushed a new build to itch w/ the WIP occlusion culling system active aeva.itch.io/tangerine

Show thread

Yes! Haha! Yes! I fixed Tangerine's occlusion culling tonight. While this isn't the silver bullet I was hoping it would be, it does substantially improve the draw time of my worst models. The most extreme case brings one of my interpreted models down from ~83 ms to ~30ms.

The fix itself isn't that interesting, but I wrote up my perf analysis and ideas for further improvements in the commit message, should that be interesting to anyone:
github.com/Aeva/tangerine/comm

Huh. If I try to calculate the surface gradient w/ the common central diff or tetrahedron methods, I get a NaN gradient for a sphere radius=1 at point (sqrt(.5), 0, sqrt(.5)) 🙃

If I wanted to get started with "VR development" what should I search for? Is "OpenXR" the thing? Do I need some proprietary SDK?

aeva boosted
aeva boosted
aeva boosted
aeva boosted

got a new editor with a delightfully animated cursor that leaves small amount of ✨ pixiedust ✨ as it moves around 🤩

aeva boosted

Tangerine can now render multiple csg models at once, and a basic callback that can be used to update model instance transforms!

a lot of game engines are going through a rough time right now, make sure to check in with yours to see if it's doing ok

Show older

aeva's choices:

Gamedev Mastodon

Mastodon server focused on game development and related topics.