Cinema 4D
Poly Haven has an addon for Blender. Cinema 4D gets a ZIP file.
Thousands of genuinely good CC0 HDRIs, textures and models — and in C4D the workflow is still download, unzip, create a material, drag seven maps into seven slots and fix the colour spaces by hand. Here is that process written out properly for both Redshift and Octane.
C4D is the DCC where this hurts most, because there is no single answer. Blender artists have one shader and one addon. A C4D artist is on Redshift or Octane, each with its own node system, its own dome light, its own colour space handling and its own way of attaching a normal map. Whatever you memorise for one is wrong for the other.
Loading a Poly Haven HDRI by hand
Download the .hdr or .exr at a sensible resolution, then follow whichever
column applies.
Redshift
- Create a Redshift Dome Light in the scene.
- In its object settings, load the HDRI into the texture slot.
- Leave the colour space as raw / linear — an HDR file is already linear and must not get an sRGB transform.
- Rotate with the dome light's own transform rather than a texture offset, so reflections and lighting stay locked together.
- Decide whether the dome should be visible to camera or only contribute light, via the dome light's background settings.
Octane
- Add an Octane HDRI Environment to the scene.
- Load the HDRI into its texture slot as an Image Texture.
- Set the image node's gamma to 1.0 — HDR data is linear and a 2.2 gamma will crush it.
- Use the environment's rotation parameters to orient it.
- If you want a different backplate from the lighting, add a second environment in the Visible Environment slot.
A 16K HDRI is roughly sixty-four times the pixels of a 2K one. For lighting contribution that difference is invisible and the memory cost is not. Reach for the big files only when the environment is sharply visible in frame.
Wiring a Poly Haven texture set by hand
A Poly Haven texture download is a folder of maps sharing a name stem and differing by suffix. The job is matching each suffix to the right input with the right colour space.
| Suffix | Channel | Colour space |
|---|---|---|
| _diff | Base colour / diffuse | sRGB |
| _nor_gl | Normal, OpenGL green — use this one | Raw |
| _nor_dx | Normal, DirectX green — do not use here | Raw |
| _rough | Roughness | Raw |
| _ao | Ambient occlusion | Raw |
| _metal | Metalness | Raw |
| _spec | Specular level | Raw |
| _disp | Displacement / height, often 16-bit | Raw |
| _arm | Packed AO (R) / Rough (G) / Metal (B) | Raw |
| _bump | Bump height | Raw |
Redshift Standard Material
- Create a Redshift material and open it in the node editor.
- Add a texture node per map. Set the base colour texture to sRGB and every other map to Raw — this is the step people skip.
- Connect
_diffto Base Colour,_roughto Roughness,_metalto Metalness. - Route
_nor_glthrough a Bump Map node set to Tangent-Space Normal, then into the material's bump input. Connecting a normal map straight to a colour input is a classic and silent mistake. - For
_disp, add a Displacement node and connect it to the Displacement port on the Redshift output, then enable tessellation on the object's Redshift tag. - Ambient occlusion is optional and usually better left out, or multiplied lightly into base colour rather than fed anywhere structural.
Octane Universal Material
- Create an Octane Universal material.
- Add Image Texture nodes for each map. Gamma 2.2 on base colour, gamma 1.0 on every data map.
- Connect
_diffto Albedo,_roughto Roughness,_metalto Metallic. - Connect
_nor_glto the Normal input directly — Octane has a dedicated normal input and does not need a bump conversion node. - Use
_dispin the Displacement slot with a vertex displacement node, and keep the height small — Poly Haven displacement maps are full-range.
Multiply that by however many surfaces a scene needs. It is not difficult work, it is just the same work repeatedly, and every repetition is another chance to leave one map on the wrong colour space and spend the afternoon wondering why the render looks flat.
From here on I am describing my own software. Everything above works without it and costs nothing. What follows is the automated version, which I have an obvious interest in you wanting.
The same thing in one click
Kiosk has the Poly Haven catalogue built into its browser and a Cinema 4D plugin that keeps a live session open. The sequence becomes: find the asset, click it, and the material exists in your scene wired for whichever renderer you are actually using.
- It knows which renderer you are on. Redshift gets a Redshift graph with the bump-map node in place; Octane gets an Octane graph using its native normal input. You do not pick.
- Colour spaces are set per channel. sRGB on base colour, raw on the data maps, every time, without you remembering.
- HDRIs create or retarget the dome. Send an HDRI and you get the dome light set up; send another with a light selected and it swaps the texture instead of stacking a second dome.
- Downloaded assets stay in your library. They land in a local folder you own and are indexed alongside everything else, so the second use needs no download at all.
- Old downloads count too. A folder of Poly Haven assets you pulled from the website years ago indexes like any other source.
Questions
Is there an official Poly Haven plugin for Cinema 4D?
No. Poly Haven maintains an official addon for Blender only. Everyone else downloads a ZIP from the website and wires it up by hand. This is not an oversight on Poly Haven's part — they are a small CC0 asset project, not a plugin vendor — but it does mean C4D artists do the setup manually every single time.
Can I use Poly Haven assets commercially?
Yes. Everything on Poly Haven is CC0, which is as permissive as licensing gets — commercial use, modification and redistribution are all fine, and no attribution is required. Attribution is still a decent thing to give a project that funds itself through donations, but it is not a legal obligation.
Which HDRI resolution should I download for Cinema 4D?
For lighting alone, 2K or 4K is almost always enough — the light contribution is low-frequency and the extra pixels cost memory for nothing. Download 8K or 16K only when the HDRI is visible in-frame as a sharp background, for instance a reflective product shot against a detailed environment.
Why does my Poly Haven texture look washed out in Redshift?
Almost always a colour space error. The base colour map is sRGB; roughness, normal, displacement, AO and metalness are not — they are data, and must be loaded as Raw or linear. If a roughness map is interpreted as sRGB its values are pushed around by the transfer curve and the surface reads as too shiny or too flat. This is the single most common Poly Haven setup mistake in any renderer.
Should I use the nor_gl or nor_dx normal map?
Poly Haven ships both. Use nor_gl (OpenGL convention, green channel up) for Cinema 4D with Redshift or Octane. The nor_dx variant has an inverted green channel and is intended for DirectX-convention engines. Picking the wrong one does not error — the surface just lights as though the bumps are dents.
Is there any way to automate this in C4D?
Yes, two ways. You can build a preset material once and swap the texture paths per surface, which is free and works well if you stay on one renderer. Or a third-party asset manager with a C4D plugin can detect the suffixes and build the graph for whichever renderer is active — Kiosk, which I develop, is one of those.
Related: the same walkthrough for Maya and Houdini, and the cross-library PBR suffix cheat sheet.
The free edition includes the Cinema 4D plugin, the full material wiring for Redshift and Octane, and the Poly Haven library built into the browser.
Download the free edition