For at least six years I have had a little vision of a 3D ’toy’ model of one of two scenes. They’re not very interesting but don’t seem to be going away, so perhaps I should just try to make them. Better out than in, basically. I think I’m going to write about what these scenes are, what I need to learn to make them, and perhaps why they keep popping into my mind. Note: I’m not some expert feigning ignorance of how to get this done: I really don’t know, nor know how much I don’t know. Let’s see how it goes.

The first step will be a physical sketch of what I want to make, then a list of things I might need to know to get it done, plus a list of the technologies I have chosen to get to done. I have a feeling my choices for technology will hobble me a bit, but basically this is a learning experience so I don’t mind.

Okay, but first I need to not down what I have been trying, some of which will explain the context above. I have a Raspberry Pi (okay, a few) and have been trying to get a graphics benchmark working. The excellent Big Mess o’ Wires 3D performance demo from a few years back. I recall I got this working some years ago on the RPi1, but again, can’t remember if I needing to gack the build, install a package or three, change the GPU memory share or heaven knows whay. Anyway a default up-to-date Raspbian install in November 2019 was giving link errors about EGL. One the following commands seemed to get everything working with a plain make, but I’m not sure which:

sudo apt update
sudo apt dist-upgrade
sudo apt autoremove
sudo apt install libegl1-mesa
sudo apt install libegl1-mesa-dev
sudo apt install libgles2-mesa libsdl2-dev

This gets me to a point where the build works, but runtime fails with:

rasperf3d.exe: util/native.cpp:61: bool InitDisplay(uint32_t*, uint32_t*, bool): Assertion `s >= 0' failed.

which is the following failing with:

    int s = graphics_get_display_size(0 /* LCD */, &display_width, &display_height);
    assert(s >= 0);

.. and this is as far as I have got today.