Fotoxx navigates an image collection using a thumbnail browser to choose images to view or edit. Edit functions include brightness, contrast, color, gamma, white balance, tone mapping, red eyes, sharpen, blur, noise suppression, smart erase, trim (crop), resize, rotate, add text, bend/warp, many art effects, HDR, HDF, stack, and panorama. Edit functions use movable curves and sliders. Feedback is live using the whole image. RAW files can be edited and saved with deep color. Areas or objects can be selected using freehand draw, follow edge, and tone matching. Selections can be edited in place with adjustable blending. They can also be cut and pasted into other images. Any metadata can be edited, reported, and searched (filenames, tags, dates, geotags, comments, captions, ratings, etc.). Collections (arbitrary subsets) can be defined and viewed. Batch functions are available for rename, resize/export, RAW conversion, and more.
The Noble Ape Simulation is a collection of a number of autonomous simulation components including a landscape simulation, biological simulation, weather simulation, sentient creature (Noble Ape) simulation, and a simple intelligent-agent scripting language (ApeScript). Noble Ape also contains a social simulation where the Noble Apes can be tracked in terms of social groups and also over many generations to explain social phenomenon to users looking to study this kind of interaction. It has been in development for more than a fifteen years.
Reindeer is a C library for the rendering of virtual scenes, mainly in three dimensions. The library dynamically loads backend modules to do the rendering. Currently there is only a backend for OpenGL, but ideas for future backends are a raytracer and perhaps Direct3D. Any number of rendering contexts can live at the same time. Contexts are tied to a backend, and backends are automatically loaded and unloaded on demand. Resources are defined globally and can be used by any number of contexts at the same time, even in different backends. The main goal is to make it easier for developers to write applications that have many rendering contexts with shared resources and automatic state management. Another advantage is that the user can choose in which way a scene should be rendered without recompiling the application. For example, a scene could be rendered with a rasterizer like OpenGL at one point, and with a raytracer at another. Reindeer can also be used to get portable graphics output. Reindeer is not a scene-graph library or a game engine, but it can be used to implement them. It's still up to the application to create and manage the native contexts that the Reindeer backends can work on. For example, an application would still need to use GLX or equivalent to be able to use the OpenGL backend. The Reindeer project also provides a package called GTK-Reindeer that makes this easier for developers of GTK+ applications.