Mental Ray (stylized as mental ray) is a production-quality ray tracing application for 3D rendering. Its Berlin-based developer Mental Images was acquired by Nvidia in 2007 and Mental Ray was discontinued in 2017. Mental Ray has been used in many feature films, including Hulk, The Matrix Reloaded & Revolutions, Star Wars: Episode II – Attack of the Clones, The Day After Tomorrow and Poseidon. In November 2017 Nvidia announced that it would no longer offer new Mental Ray subscriptions, although maintenance releases with bug fixes were published throughout 2018 for existing plugin customers. Features The primary feature of Mental Ray is the achievement of high performance through parallelism on both multiprocessor machines and across render farms. The software uses acceleration techniques such as scanline for primary visible surface determination and binary space partitioning for secondary rays. It also supports caustics and physically correct simulation of global illumination employing photon maps. Any combination of diffuse, glossy (soft or scattered), and specular reflection and transmission can be simulated. Mental Ray was designed to be integrated into a third-party application using an API or be used as a standalone program using the .mi scene file format for batch-mode rendering. Currently there are many programs integrating it such as Autodesk Maya, 3D Studio Max, Cinema 4D and Revit, Softimage|XSI, Side Effects Software's Houdini, SolidWorks and Dassault Systèmes' CATIA. Most of these software front-ends provide their own library of custom shaders (described below). However assuming these shaders are available to mental ray, any mi file can be rendered, regardless of the software that generated it. Mental Ray is fully programmable and infinitely variable, supporting linked subroutines also called shaders written in C or C++. This feature can be used to create geometric elements at runtime of the renderer, procedural textures, bump and displacement maps, atmosphere and volume effects, environments, camera lenses, and light sources. Supported geometric primitives include polygons, subdivision surfaces, and trimmed free-form surfaces such as NURBS, Bézier, and Taylor monomial. Phenomena consist of one or more shader trees (DAG). A phenomenon looks like regular shader to the user, and in fact may be a regular shader, but generally it will contain a link to a shader DAG, which may include the introduction or modification of geometry, introduction of lenses, environments, and compile options. The idea of a Phenomenon is to package elements and hide complexity. Since 2010 Mental Ray has also included the