Rendering & Textures |
← Implicit Surfaces (Ray Marching) · Contents · Sounds & Audio →
The Renderer dock is organized around three independent choices: the rendering style of the surface, the edit target that the colors and textures act upon, and — on multi-mesh surfaces — the scope those controls apply to.
Rendering Style (Surface) |
Density u / Density v (WireFrame only) do not add resolution — that is Steps in the Equations dock — they rebalance the two families of coordinate lines, useful when the shape stretches one parameter far more than the other (long tubes, thin ribbons).
Headlight (Ray Marching) |
Implicit surfaces are lit by two fixed lights, one from the side and one from behind. Between them they leave some faces dark whatever you do: the inside of a cavity, a tube seen down its own axis, a face turned edge-on to the view. The Headlight slider adds a third light that comes from the observer, so it always illuminates what you are looking at — which is exactly what a cavity needs.
Raise it only when something you want to see is in shadow.
Multi Mesh (All / Mesh) |
A surface built from several independent grids (see Multi-Mesh Surfaces in the Script Guide) can be styled grid by grid. The Multi Mesh box decides the scope of the appearance controls — colour, transparency, Light Intensity and the Solid/Phong/WireFrame choice:
Switching to All suspends the per-grid settings without erasing them: they come back when you switch to Mesh.
Meshes sets how many copies of the surface, or of the curve in Solid Curve, are drawn: the equations tell them apart with mesh (0, 1, 2…), and the field stays off until they use it. It takes a number or an expression with the constants, such as A*A, so a slider can add and remove copies.
Per-mesh limits (u_a / u_b / v_a / v_b) |
Below the selector, four fields set the parametric domain — the portion of the surface each grid actually draws. They follow the same scope rule as the controls above, and they take the same expressions as the U/V limits of the Equations dock (numbers, pi, tau, the constants A–F and S):
v_b draws half of that grid and leaves the others whole — a way to open a figure up and look inside it without touching the script.The value you type wins over the script. A grid whose domain you edited keeps it through Run and reload, and stops following its own //MESH_BEGIN section. To hand it back to the script, type the values that section declares, or load the preset afresh.
Note: the U/V limits in the Equations dock govern single-mesh surfaces. On a multi-mesh surface each grid carries its own domain, so those fields no longer drive the geometry — these do.
Edit Target (Shape / Border / Background) |
These three buttons decide what the color sliders, the Texture checkbox and the Library textures act upon.
Background Shape (Fixed / Sphere / Cylinder / Cube / Poincaré Ball) |
With Background selected and a background texture on, five choices decide how the texture sits in the scene:
Sphere, Cylinder and Cube turn with the view — when the camera rotates, by hand or along a 3D or 4D path — but not with the object or its 4D rotations, as a distant sky would. The Poincaré Ball does the same, and changes also when the camera moves.
Procedural Textures (GLSL) |
Besides loading images (PNG/JPG), you can write custom GLSL scripts to generate mathematical textures in real-time.
// Example Texture Script float r = sin(u * 10.0); float g = cos(v * 10.0); return vec3(r, g, 0.5);
Putting an Image on a Single Mesh |
Like procedural textures, an image can be given to one grid at a time. With the Multi Mesh scope on Mesh, select a grid and load an image from Textures > Images: it lands on that grid only, motionless, and the rest of the surface keeps what it had. Select another grid, load another image, and each grid keeps its own. Records save them grid by grid.
With the scope on All an image covers the entire surface, as always, and the images of the single grids are set aside until you go back to Mesh.
Animating it. The Animated Images folder, under Textures > Procedurals in the Library, holds procedural scripts that redisplay an image rather than generating a pattern of their own. Two steps:
Every grid keeps its own image, its own framing and its own movement — so one photograph can drift on one branch of a surface while a different one rotates on another. A grid without an image of its own shows, through these scripts, the image of the whole surface (the one loaded with the scope on All).
Choosing the preset. Still Image shows the image motionless — the way to bring the surface's image onto a single grid without loading it again. Each script carries its parameters (speed, amount) at the top of its code.
← Implicit Surfaces (Ray Marching) · Contents · Sounds & Audio →