Cafu on the Raspberry Pi

News about the Cafu Engine. Subscribe to the related ImageCafu News feed to stay informed.
User avatar
Carsten
Site Admin
Posts:2170
Joined:2004-08-19, 13:46
Location:Germany
Contact:
Cafu on the Raspberry Pi

Post by Carsten » 2016-09-09, 11:00

Well, I could barely believe this myself: I checked out Cafu on a Raspberry Pi 2 for the very first time, compiled – and without further ado, it worked! Simple as that. :wohow:

This is remarkable because Cafu, even though designed for cross-platform portability, has never been run on an ARM architecture before. I'm very glad that making it operational went so smoothly!
2016-09-08-103124_1280x1024_scrot.jpg
2016-09-08-103751_1280x1024_scrot.jpg
2016-09-08-105021_1280x1024_scrot.jpg
2016-09-08-105537_1280x1024_scrot.jpg
There were some issues with some of our subsystems, but all minor: Vendor libraries that are available only for x32/x64 architectures had to be omitted, specifically the Cg based renderers and the FMOD based sound system, whereas the pure OpenGL and OpenAL based graphics and sound systems compiled flawlessly.

The Raspberry Pi's OpenGL driver is still rated as experimental, and it turned out that it could not run our RendererARBprogs renderer. Using the proper command line in order to use the OpenGL 1.2 renderer instead worked immediately:

Code: Select all

./build/linux2/g++/release/Ca3DE/Cafu -clRenderer Libs/build/linux2/g++/release/MaterialSystem/libRendererOpenGL12.so
Yes, I know, OpenGL 1.2 is ancient and lame. But it was readily available, and as soon the the Raspberry Pi's driver improves, we can switch to the ARBprogs renderer at once. Also note that the frame rate in the screenshots is low, mostly because I took them with the debug build of Cafu. Using the release build, it is more than 3 times the value indicated in the screenshots. And of course, nothing has been optimized specifically for the Raspberry Pi yet.

The point of running Cafu on the Raspberry Pi though is that it is proven to flawlessly work on the ARM architecture. That means that it will work on other platforms that use the ARM architecture as well – and that means that we're very well prepared for all these mobile devices out there...! :up:
Best regards,
Carsten
Post Reply

Who is online

Users browsing this forum: No registered users and 10 guests