You are browsing as a guest. Sign up (or log in) to start making projects!

appleroll

@appleroll

Joined June 1st, 2026

  • 24Devlogs
  • 1Projects
  • 1Ships
  • 15Votes
australia based high school coder working on ethan's wierd ikea sim
Ship

I made a custom non-euclidean game engine, built from scratch with Vite and WebGPU. In this demo, you can explore a highly simplified and abstract IKEA simulation, largely inspired by my experiences shopping at IKEA (the endless rows of... boxes and furniture), as well as SCP-3008 (I only found that out while making this project).
.
The most challenging part were the endless bugs encountered while adding seamless Non-Euclidean geometry, which I had decided to solve by mixing Euclidean geometry with portals, which is how most games simulate Non-Euclideanness. I could've opted for a pure mathematically non-euclidean game engine, but that would've made making IKEA itself much harder as I would have to wrap my head around non-euclidean geometry.
.
I had numerous Non-euclidean things planned, such as a tunnel that was longer/shorter on the inside. However, it was hard to integrate them into the actual IKEA due to its non-euclidean shell (meaning it has varying amounts of rooms inside what looks like a building with only 4 rooms).
.
In the end, I'm very proud of my project as a whole and how I went from a total graphics noob to someone who could make a graphics engine and something IKEA-resembling, entirely from scratch. I certainly enjoyed the moments I spent coding (and debugging) this project, and I hope you enjoy it too!

  • 24 devlogs
  • 28h
  • 18.39x multiplier
  • 519 Stardust
Try project → See source code →
Open comments for this post

21m 33s logged

Prepared for ship! Wrote some more in the README, including references used in my IKEA (I’m not trying to copy IKEA, but it can’t be completely different). Hopefully you all enjoy the product I’ve made, because I certainly did enjoy making it!

0
0
20
Open comments for this post

22m logged

Fine-tuned some values, especially in movement. I decided it would be better to just hide the near threshold portal bug as a whole and compromise by having this wierd outline surrounding the portal. Maybe I’ll drop some insane IKEA lore explaining how it was a feature and not a bug

0
0
13
Open comments for this post

38m 16s logged

Cleaned up the code, not much ig. Honestly, I don’t even know if I want to, and should, build the whole IKEA. I’ve been considering turning this into a noneuclidean IKEA storage simulation.
.
The benefits of this is that it’s much easier to make while still keeping the potential for glTF objects for Blahaj and friends, and also makes it so my project is more narrowly focused, but the downsides is that it probably has less variance, and has not much room for future upgrades.
.
I might implement the solution where it is a storage simulator for now, ship it, and later I can add code to turn it into a more “detailed” IKEA simulator if I decide graphic computing is for me.

0
0
5
Open comments for this post

2h 33m 51s logged

I. Solved. The. Bug

Turns out, after spending 3 days on the bug, asking the Stardance Slack multiple times, having discussions with multiple chatbots, and also loosing maybe 10-15 strands of hair, I’ve finally done it. Turns out, the solution was to change a decimal place, from 0.1 to around 0.01.
.
Not gonna lie, before this I had completely lost faith in this project. Like seriously. Maybe I’ll keep working on it now that this bug is solved.
.
“Now Ethan, what exactly is the bug??” you may ask? Well, if you didn’t read my previous devlogs (or maybe i didnt write abt it, idk lol i kinda just.. forget most of my devlogs), I had an issue where there would be a frame of blue in between portal transitions. It completely ruined the “magic trick” of the noneuclidean IKEA.
.
I can now sleep tonight in peace :)

0
0
9
Open comments for this post

1h 45m 30s logged

Changed the soundtrack, and updated the home page! Not really much to say, same bugs as usual, same features to add, I haven’t been procrasting a lot not gonna lie these bugs are kinda hard to solve. It’s hard to blend when I should add based on IKEA and what to sacrifice based on what I can do.

0
0
9
Open comments for this post

1h 29m 17s logged

Just fixed a bug where the portal would have this weird wireframe surrounding it making it very obvious theres a portal here. However, I’ve been trying to fix the issue where for 1 frame something appears on the screen when u enter a portal. My guess on why this is is because since the portal is a very thin cube, the inside of the cube still exists, hence the blue part. This would require modifying my cube engine into a multi-object engine (pretty hard), but I will give it a try.

0
0
7
Open comments for this post

1h 58m 34s logged

Worked on the shelving for the self-service area. Once I was finished with this, I realised that IKEA stores go counterclockwise, while mine is designed to go clockwise (in the clip I went clockwise bc the storage stuff are always at the end). Well… its a feature now
.
After all, this project isn’t really designed to be that realistic. If it was super realistic, it wouldn’t be a single floor and it definitely won’t have buggy portals everywhere.

0
0
6
Open comments for this post

21m 2s logged

It is my pleasure to announce that we have undergone a name change. “Super Noneuclidean” just didn’t describe my project enough, so using my last 3 braincells left today I decided I should rename it to “wierd ikea simulator”.
.
I know, I know, you might be thinking, “but why Ethan? This name sounds actually horrible”. Well, there’s a pretty good reason for this name, let me explain.
.
A year ago, I was obsessed with state-of-the-art AI. And making money. Mainly the latter. But anyways, entrepeneurship is like 5% coding and 50% arguing to others about why your product is good, and another 45% fixing bugs and later headaches. I don’t exactly hate my experiences with AI, but I definitely need a break from corporate marketing and actually do something dumb for once. During the name change, I decided “super noneuclidean” didn’t have any “IKEA” in it, and I thought I could make it even more dumb, so using reverse psychology the dumbest name is the one that sounds the most plain, direct, and, well… dumb, hence my name.
.
So far, this project has really saved my mentality, pretty cool indeed.
.
(and yes I wrote on my last 2 braincells at 9pm while sleepy af. thanks for reading tho)

0
0
6
Open comments for this post

1h 41m 20s logged

I. Fixed. The. Bug

It wasn’t a bug, it was just me forgetting to add a feature. In other words, I thought my code was broken when in reality I didn’t even code a recursive rendering system in the first place, so portals were always blue.

So… IKEA is going pretty well. The noneuclidean shell is basically complete. It’s time to work on some interior deco, but first I might have a bit of a look on the code and clean up some AI slop.

(Oh. yeah, and idk if IKEA has the yellow door thing world-wide. It does in my local IKEA, so I added it)

but now… its BLAHAJ TIME

0
0
8
Open comments for this post

1h 0m 11s logged

Noneuclidean IKEA shell coming together nicely! Got the colours pretty right too. Only issue is that theres this wierd blue thing covering portals rendered behind portals, but that should be solved in another day

0
0
5
Open comments for this post

40m 39s logged

After numerous experiments, I have screwed up. I should’ve created the IKEA design before I started working on the Noneuclidean files, because now I have to delete all of them.

Well there goes my 8 hours

(I don’t know what image to attach here)

0
0
8
Open comments for this post

2h 19m 52s logged

Aight. It’s been a couple of weeks and i found a job (hooray), so unfortunately i havent been able to do much coding, except maybe plan the idea.

The idea

“Instead of building JUST a noneuclidean thing (bc everyone’s been doing that for years now), i make it an IKEA simulator”
bc we ALL know that IKEA rooms are secretly noneuclidean mazes that trap us into buying 347 chairs (speaking from experience trust)

The plan

I currently have 2 things made: a noneuclidean tunnel, and a noneuclidean room where it looks like a 4-roomed house, but it actually has 6 rooms (note: still broken), so I think I can get started with the first floor and the market-hall for now. A quick search of “ikea layout” shows a redditor’s very useful intentionally-confusing floor plan, so I will be using that with a few adjustments to fit in with my idea

The problems

we got some few problems

  1. idk how to get obj models into my custom from-scratch engine
  2. i still need to fix a ton of bugs, and i need to adapt my hard-coded code to the new ikea idea

nevertheless, im quite excited about this project, i will continue working on it. my blueprint is attatched here

0
0
5
Open comments for this post

59m 54s logged

I’ve had some exams recently, so I didn’t really do much. I added another room where the inside is longer than the outside which is cool, but it has a bug where the block looks really close to the portal? I don’t now how to describe it lol. Anyways, I’ll just leave it for now, once I finish my exams I’ll continue working on it.

0
0
139
Open comments for this post

1h 16m 58s logged

After like 5 hours of working. THE. BUG. FINALLY. FIXEDDDD.

I can’t believe it. It literally took 3 lines of code changing. But well, it was a good experience.

Now, everything shown in the other portal looks proportionate. Also, if you didn’t notice, i changed some files, like adding the noneuclidean code to the noneuclideans/ folder.

0
0
14
Loading more…

Followers

Loading…