Oddly aesthetic bug.
seen from Malaysia
seen from Netherlands

seen from United Kingdom
seen from Yemen

seen from Mexico

seen from Malaysia

seen from United States
seen from United States

seen from United States
seen from Türkiye

seen from United States

seen from Malaysia

seen from Türkiye

seen from United Kingdom
seen from United States

seen from Singapore
seen from Italy

seen from United States
seen from United Kingdom

seen from United States
Oddly aesthetic bug.

Anya is live and ready to show you everything. Watch her strip, dance, and perform exclusive shows just for you. Interact in real-time and make your fantasies come true.
Free to watch • No registration required • HD streaming
Hackweek - Thursday
This day was mostly spent debugging problems, and doing it in a stupid way. I think now the intense hacking is starting to get to me, and I am being inefficient.
I have been having problems that I've blamed on myself and my inability to get the math right - in particular I couldn't get the alpha sort to work as it should, things were behaving oddly.
Finally, I managed to figure out that the problem I was having was really an OpenGL issue: I wasn't handling my VAOs and VBOs correctly, and things got broken in ways that I thought looked like bad math.
I could have figured this out much sooner by using something like vogl or just thinking calmly about what I was seeing. Instead I've been changing things here and there and staring at a gdb prompt.
You'd think I would have learned this lesson by now, but to my defense it's been years since I wrote software in plain C, and years since I last wrote any 3D code at all.
VAOs and VBOs
So, the key insight that solved this for me was when I read that OpenGL 3.2+ core profile no longer allows you to use the default VAO, instead requiring that all VBO draw calls are wrapped in a VAO. When I just started out I created two different concepts, one I called mesh which wrapped a VBO for vertex data and an optional VBO for index data, and one I called renderable which wrapped a VAO. When I then started rendering chunks, I never actually created any renderables, I just created meshes and called glDrawArrays directly.
Unfortunately, this worked. Sort of. Until I started rendering in passes.
Now I have merged these into a single mesh object which holds the VAO and VBOs.
Now I need to go back and fix the controls and collisions...
Lighting fixes.
Hackweek, wednesday
Yesterday I got stuck on collision detection. I have the Christer Ericson book but haven't read it in a long time, and clearly I've forgotten most of it. So today I decided to focus on something simpler, and implement lighting. I've got basic sunlight working now - no propagation yet, and the AO needs to flip some triangles to look good - I get artifacts seen above as described in this article. I'm not implementing that exact lighting algorithm, but the fix of flipping certain triangles should work for me too, I just need to implement it.
Still a long way to go before I have anything more than a lame tech demo...
Debugging collisions.

Anya is live and ready to show you everything. Watch her strip, dance, and perform exclusive shows just for you. Interact in real-time and make your fantasies come true.
Free to watch • No registration required • HD streaming
hackweek11 has begun