Articles

NARS Cosmetics CGI Style: Intensity, Contrast & Texture in Houdini

Includes one exclusive complete course

The exclusive course — a full production tutorial you won't find anywhere else, never sold alone.

Best Seller
Most Loved
Tutorial Camera Rig

ADVANCED CUSTOM CAMERA RIG

ANIMATION · CONSTRAINTS · CUSTOM UI

BUILD A FULLY CUSTOM CONSTRAINT-BASED CAMERA RIG IN HOUDINI WITH A CUSTOM UI PANEL. DESIGN FLEXIBLE SYSTEMS FOR PRECISE, CINEMATIC CAMERA ANIMATION ON ANY PROJECT.

€29.99

Freebies
Free Studio HDRI Pack box by Artivoxa showing 60 studio lighting setups with softboxes wrapped around the packaging

Studio HDRI Collection

ASSETS · EXR & HDR · 60 HDRIS

DOWNLOAD 60 STUDIO HDRIS CAPTURED IN A REAL PHOTO STUDIO. LIGHT YOUR PRODUCT AND BEAUTY RENDERS LIKE A PHOTOGRAPHER — SOFTBOX, LANTERN, STRIP AND GRID SETUPS, READY FOR ANY RENDERER.

FREE

ARTILABZ™

Everything You Need to master Houdini.

ARTILABZ™ gives you unlimited access to all Houdini courses, 3D assets, simulation files, textures and tools. updated every month.

01

Premium Houdini Tutorials

Full access to every course — fluid simulation, procedural FX, brand visuals and more.

02

Monthly New Content

Fresh tutorials and assets added every month — your library grows with you.

03

Instant Access to Everything

The moment you join, the full library is yours — no drip-feed, no waiting.

04

Project Files Included

Every tutorial comes with the full Houdini scene file — open every node, learn every detail.

FROM 14.99€/MONTH

NARS Cosmetics CGI Style: Intensity, Contrast & Texture in Houdini

Are you grappling with the challenge of recreating the signature look of NARS Cosmetics in CGI? Do your renders fall flat when it comes to capturing that vibrant Intensity and nuanced Contrast that defines high-end beauty visuals?

In a world where every specular highlight, every subtle gradient, and every micro-texture counts, it’s easy to feel stuck. Are your lighting rigs failing to deliver the depth you need? Is your shading network in Houdini too rigid to emulate the soft yet bold finish of premium cosmetics?

The root of the problem often lies in how we approach Texture layering and light interaction. Misplaced roughness maps or overly aggressive color corrections can dilute the effect, leaving your work missing that luxury allure. Sound familiar?

In this article, you’ll dive into the core principles behind the NARS Cosmetics CGI style. You’ll discover targeted Houdini workflows to control intensity, sharpen contrast, and craft textures that bring every product to life onscreen.

What measurable visual attributes define the NARS cosmetics look and how do you translate them into technical briefs for production?

To capture the signature NARS cosmetics aesthetic, start by isolating core attributes: high color intensity, deep contrast in specular highlights and matte zones, and fine-scale texture variation. Quantify each attribute using image-analysis tools or spectrometry on product photography to set reproducible targets for digital shading and lighting.

Measurement typically involves capturing raw images under controlled lighting and extracting numeric data. Use a spectrophotometer to record pigment reflectance curves. Analyze histograms in linear color space to define highlight-to-shadow ratios. Establish region-of-interest (lipstick surface, powder pan) to derive per-channel mean and standard deviation values for saturation and brightness.

When you draft a technical brief, specify numeric ranges and reference workflows. Document target values for each attribute, accompanied by annotated stills and LUTs. Define tolerances (e.g., ±5% on luminance peaks) and note procedural steps: color-space conversions, gamma settings, and output format. This clarity aligns creative intent with technical execution.

  • Color Saturation: H ≥ 340°, S ≥ 0.65 in HSL; use 3D LUT from spectrophotometer captures.
  • Specular Contrast: Peak reflectance ≥ 80% at 45°; roughness .10–.20 in PBR shader.

In Houdini, translate these specs into a procedural CGI style pipeline. Leverage the Principled Shader in Solaris for PBR attributes, feeding custom roughness and specular maps generated in COP2 or via VEX in an Attribute Wrangle. Drive micro-detail with high-frequency noise in a HeightField SOP and convert to a normal map for consistent bump scales.

Deliver a package including SOP networks for geometry, VOP material graphs with parameter presets, and a Solaris LOP template set to the approved HDRI lighting rig. Attach a PDF cheat sheet of key values and a test render sequence for approval. This ensures every department—shading, lighting, compositing—works from a unified, data-driven technical brief.

How to construct layered, physically-plausible cosmetics materials in Houdini that reproduce NARS intensity, contrast and finish

Material composition: base pigment, multi-layer coatings, sheen and subsurface – VOP/MaterialX patterns

In Houdini’s MaterialX workflow, define each layer as a separate shader network. Use a base pigment node feeding standard_surface or Principled Shader’s base_color, driven by spectral or RGB maps. In a VOP Builder, parameterize absorption depth and scattering coefficients. Organize your graph to isolate pigment density and albedo before adding coatings.

Next, overlay a thin sheen coating using a coat node. Feed procedural microfacet noise into coat_roughness to simulate fine powder or glossy lipstick. Beneath that, insert a subsurface scattering stage: assign scatter and absorption values (e.g., 0.1–0.3) and link a color_map for internal light diffusion. This layered approach replicates NARS’s semi-matte finish with realistic light penetration.

Key parameters to control: specular IOR, coat weight, roughness microvariance, anisotropy and tint maps

  • Specular IOR: set between 1.45 and 1.55 for accurate oil and wax reflections
  • Coat weight: adjust 0.05–0.15 to balance reflectivity and core pigment visibility
  • Roughness microvariance: inject CellNoise or Gabor noise in VOP at 0.02–0.1 amplitude
  • Anisotropy: align 0.1–0.3 along UV tangents to mimic brushstroke directionality
  • Tint maps: use layered UV sets driving subsurface_color and coat_tint for localized color shifts

Fine-tune in Houdini’s IPR Render View, exposing only high-impact controls in the material editor. Bake procedural microstructure into 4K textures to maintain contrast and intensity across scales. This procedural-to-baked pipeline ensures consistency shot-to-shot, preserving the signature finish of NARS cosmetics.

Which lighting and camera setups in Houdini reliably produce the high-contrast, vivid look typical of NARS product photography?

Reproducing NARS’s signature punch requires a disciplined Houdini lighting strategy that balances specular highlights with deep shadows. Start by organizing all lights in Solaris, leveraging USD area_lights and IES profiles. This approach ensures predictable falls and vivid color saturation while preserving fine texture on lipstick tubes and compacts.

Begin with a classic three-point layout tailored for cosmetics:

  • Key Light: Large rectangular area_light, intensity around 300–500 lux, color temperature 5500K. Use light_linking to target only the product mesh.
  • Fill Light: Soft sphere_light or dome_light at 30% key intensity. Position below camera to lift shadows without flattening texture details.
  • Rim Light: Narrow tube_light or distant_light with an IES pattern. Place behind and above to carve edges with crisp highlights, reinforcing separation from the background.

Control contrast further by placing low-bounce cards (invisible to render) around the fill to dial ambient spill. Use Light Mixer LOP to fine-tune each contribution in-context. Group lights by purpose—key, fill, rim—so you can adjust global contrast or isolate an individual channel for creative tweaks.

On the camera side, emulate a macro setup: set /stage/camera focal_length to 100 mm and aperture f/8. This focal length yields minimal distortion and a tight frame on small surfaces. Match FocusDistance to the average product center via a Fetch LOP or expression tied to object bounds. Set near clip to 0.01 and far clip to 100 to compress depth subtly.

Enable physical DOF in the camera node. In the Karma settings, lower pixelvariance to 0.01 and use a shutter time of 1/60. Boost camera_samples to 64 for smooth bokeh around specular highlights on glossy finishes. Adjust the blade_count parameter to six or eight to shape highlight falloff and reinforce that polished look.

Finally, embed an ACEScg workflow in your Render Settings LOP. Apply a custom lift/gamma/gain transform to stretch midtones and deepen blacks. If necessary, add a TOPs post-process with an edo_stretch node to boost saturation without clipping highlights. This ensures each render emerges vibrant, contrast-rich, and unmistakably NARS.

How to create and author microtexture for powder, cream and gloss: displacement, micro-normal workflows and procedural detail

Authentic CGI cosmetics rely on layered microtexture to convey powder’s matte grit, cream’s smooth undulations and gloss’s fine surface imperfections. In Houdini, you can author these details procedurally, then bake out displacement and micro-normal maps for efficient look development in your renderer of choice.

Core steps:

  • Generate a base heightfield using HeightField Noise and Erode nodes for primary variation
  • Blend directional noises (e.g., brush strokes for powder, swirl patterns for cream) inside a HeightField VOP
  • Convert the heightfield to polygonal terrain via HeightField Convert, or to VDB & back for smooth displacement
  • Bake height and normal maps on your UV layout using Bake Texture SOP or ROP COP Output

For powder, introduce a high-frequency fractal noise (Frequency = 50–200, Amplitude = 0.01–0.05 units) modulated by a mask representing applied region. Use HeightField Slump to accentuate grain clustering. For cream, combine low-frequency undulations (Noise Frequency 5–20) with faint high-frequency bump (0.005 units) to mimic emulsified pigments. Gloss textures demand nearly zero displacement but require micro-normal scratches: generate directional ripple patterns in a VOP and overlay them via a micro-normal pass.

Once maps are baked, import them into your shader. In Mantra’s Principled Shader, link the displacement map to the Displacement tab and assign the micro-normal map in the Bump Map slot. Set Displace Bound to your maximum height and enable High Quality Micropolygon Displacement or switch to micropolygon mode for GPU renderers. This two-layer approach—macro surface plus procedural microdetails—ensures your NARS Cosmetics renders exhibit realistic intensity, contrast and texture.

How to configure render settings, AOVs and color management (ACES/LUTs) so intensity and contrast remain controllable in compositing

Maintaining precise intensity and contrast through post allows each NARS Cosmetics shot to preserve brand-defining punch. In Houdini, start by targeting a high dynamic range output: enable 32-bit float EXR, set Pixel Samples to 4×4 (or use Adaptive Sampling with a low variance threshold under 0.005) and disable any automatic clamp. This ensures you capture shadow and highlight detail without baked-in contrast.

Next, configure your AOVs in the Karma or Mantra render node. Rather than a single beauty pass, split contributions for granular control. In the Extra Image Planes (Mantra) or AOV Templates (Karma XPU), add:

  • diffuse_direct and diffuse_indirect
  • specular_direct and specular_indirect
  • sss and emission
  • cryptomatte and depth for masks

Label each plane with clear prefixes (e.g., beauty_diffuse), so in Nuke or After Effects you can adjust mid-tones and highlights independently. When mixing, you’ll maintain consistent exposure and tweak contrast curves per component without re-rendering.

For color management, adopt an ACES workflow: install the aces_1.2 OCIO config, set HOUDINI_OCTLR_ENABLED to 1, and select ACEScg as your working space in Mantra/Karma render properties. Apply the ACES RRT+ODT view transform in the /mat context or via the Color Management tab. If you need a filmic LUT that matches NARS’s signature look, bake a 3D LUT from Houdini’s COP2 using a graded test ramp, then plug that LUT into your comp as a final view transform. This layered pipeline retains full linear data until the composite stage, where you dial in contrast, saturation, and intensity exactly to spec.

What quality-control, review and delivery processes ensure brand compliance and reproducible results across teams and vendors?

Establishing a quality-control pipeline starts with a centralized Houdini Digital Asset (HDA) library versioned in Git or Perforce. Each asset—materials, shaders, simulation rigs—uses a strict naming convention and metadata tags (e.g., “NARS_Matte01_v03”) to enforce brand compliance. Automated pre-commit checks validate color space, texture resolution, and node parameters against a master reference scene.

For review, we integrate Houdini’s PDG (Procedural Dependency Graph) to automate batch renders in Solaris using Hydra. Each work-in-progress generates low-res playblasts, calibrated via an ACES workflow. Automated scripts extract AOV differences against a golden frame, flagging deviations in color consistency and contrast. Pass/fail reports feed into ShotGrid or FTrack for centralized feedback.

  • Version control: asset tagging, semantic versioning, preflight checks
  • Lookdev sign-off: interactive sessions using Tone Mapping LOPs
  • Automated QC: PDG jobs compare renders to baseline, report pixel deltas
  • Review board: cross-team sign-off via integrated review tools
  • Delivery packaging: USD shells, material presets, AOV manifests

Delivery artifacts adhere to a strict manifest: hierarchically named USD layers, baked texture sets in EXR, SOP metadata bundles, and an auto-generated HTML report detailing render stats, node graphs, and checksum hashes. This ensures every vendor or internal team can reproduce the exact CGI style—from dynamic intensity and contrast to fine-grained texture detail—without ambiguity.