Skill119 estrellas del repoactualizado 2d ago
3dsmax-rendering
This Claude Code skill configures V-Ray and Corona renderers in 3ds Max for production-quality outputs. It provides MaxScript snippets for optimizing global illumination, anti-aliasing, denoising, and light mixing across architectural visualization, product photography, and animation projects, enabling users to balance visual quality against render time through preset configurations for different scene types.
Instalar en Claude Code
Copiargit clone --depth 1 https://github.com/TerminalSkills/skills /tmp/3dsmax-rendering && cp -r /tmp/3dsmax-rendering/skills/3dsmax-rendering ~/.claude/skills/3dsmax-renderingDespués abre una sesión nueva de Claude Code; el skill carga automáticamente.
Definición
SKILL.md
# 3ds Max Rendering
Configure production renders with V-Ray and Corona. Optimize quality vs. render time for architectural visualization, product shots, and animation.
## V-Ray Settings
### Global Illumination
```maxscript
-- V-Ray GI for interior archviz (production quality)
local vr = renderers.current -- Assumes V-Ray is active renderer
-- Primary: Brute Force (most accurate for interiors)
vr.gi_on = true
vr.gi_primary_type = 0 -- 0=Brute Force, 2=Irradiance Map, 3=Light Cache
vr.gi_primary_subdivs = 8
-- Secondary: Light Cache (fast, good for secondary bounces)
vr.gi_secondary_type = 3 -- Light Cache
vr.lightcache_subdivs = 1500 -- Higher = cleaner but slower
vr.lightcache_storeDirectLight = true
vr.lightcache_showCalcPhase = false
-- Bounce depth
vr.options_maxDepth = 8 -- Interior: 6-12 bounces
-- Exterior: 4-6 bounces
-- Product: 4-8 bounces
```
### Image Sampler (Anti-Aliasing)
```maxscript
-- Progressive sampler (recommended for production)
vr.imageSampler_type = 3 -- Progressive
vr.progressiveMaxTime = 0 -- No time limit (noise threshold stops it)
vr.progressiveNoiseThreshold = 0.005 -- 0.005 = production, 0.01 = draft
-- Bucket sampler (for render farms — predictable time)
vr.imageSampler_type = 1 -- Adaptive
vr.twoLevel_baseSubdivs = 2
vr.twoLevel_fineSubdivs = 4
vr.imageSampler_maxSubdivs = 24 -- Higher for DOF/motion blur
```
### V-Ray Denoiser
The denoiser reduces noise in post, cutting render times by 30-50%:
```maxscript
-- Add V-Ray Denoiser render element
fn addDenoiser strength:1.0 = (
local denoiser = VRayDenoiser()
denoiser.enabled = true
denoiser.mode = 1 -- 0=Only generate data, 1=Post-render denoise
denoiser.preset = 2 -- 0=Mild, 1=Default, 2=Strong
denoiser.strength = strength
denoiser.radius = 10 -- Pixel radius for denoising
denoiser
)
addDenoiser strength:0.8 -- 0.8 avoids over-smoothing on fine details
```
### V-Ray Light Mix
Adjust individual light intensities and colors in post — no re-rendering needed:
```maxscript
-- Enable Light Mix render element
fn addLightMix = (
local lm = VRayLightMix()
lm.enabled = true
lm
)
-- After rendering, open V-Ray Frame Buffer → Light Mix tab
-- Adjust each light's intensity and color interactively
-- Save the configuration for batch application to other views
```
### Render Elements
```maxscript
-- Add essential render elements for compositing
fn addRenderElements = (
-- Reflection pass
local refl = VRayReflection()
refl.enabled = true
-- Refraction pass
local refr = VRayRefraction()
refr.enabled = true
-- Raw lighting (before materials)
local rawLight = VRayRawTotalLighting()
rawLight.enabled = true
-- Object/Material ID (for masking in compositing)
local objId = VRayRenderID()
objId.enabled = true
-- Z-Depth (for DOF in post)
local zDepth = VRayZDepth()
zDepth.enabled = true
zDepth.zdepth_min = 0.0
zDepth.zdepth_max = 50.0 -- Adjust to scene scale (meters)
-- Cryptomatte (advanced masking by object/material/asset)
local crypto = VRayCryptomatte()
crypto.enabled = true
crypto.id_type = 0 -- 0=Node name, 1=Material name, 2=Object ID
format "Added % render elements\n" 6
)
```
## Corona Settings
### Corona for Interior Archviz
```maxscript
-- Assumes Corona is the active renderer
local cr = renderers.current
-- Quality
cr.progressive_maxPasses = 0 -- Unlimited passes
cr.progressive_noiseLevel = 3 -- Noise level % (3% = production)
cr.progressive_timeLimit = 0 -- No time limit
-- GI
cr.gi_primarySolver = 0 -- UHD Cache (fast + accurate)
cr.gi_uhdPrecision = 16 -- Higher = more accurate, slower
cr.gi_secondarySolver = 2 -- Path Tracing
cr.gi_maxBounces = 25 -- Corona handles bounces differently — 25 is standard
-- Denoising
cr.denoise_mode = 1 -- 0=None, 1=After render, 2=During render
cr.denoise_amount = 0.65 -- 0-1, 0.65 preserves detail
-- Light Mix (Corona has built-in Light Mix)
cr.lightMix_enabled = true
```
## Resolution Presets
```maxscript
-- Common archviz resolutions
fn setResolution preset = (
case preset of (
"draft": (renderWidth = 1920; renderHeight = 1080)
"hd": (renderWidth = 2560; renderHeight = 1440)
"4k": (renderWidth = 3840; renderHeight = 2160)
"production": (renderWidth = 4000; renderHeight = 2250) -- 16:9 at 4K+
"print-a3": (renderWidth = 4961; renderHeight = 3508) -- 300 DPI A3
"print-a2": (renderWidth = 7016; renderHeight = 4961) -- 300 DPI A2
"panorama": (renderWidth = 8000; renderHeight = 4000) -- 2:1 for VR
"square-ig": (renderWidth = 3000; renderHeight = 3000) -- Instagram
)
format "Resolution set to %x%\n" renderWidth renderHeight
)
```
## Batch Rendering
### Built-in Batch Render
```maxscript
-- Use 3ds Max's built-in Batch Render (Rendering → Batch Render)
fn setupBatchRender cameras outputDir = (
-- Clear existing batch entries
batchRenderMgr.deleteAllViews()
for cam in cameras do (
local idx = batchRenderMgr.createView cam
batchRenderMgr.setViewCamera idx cam
batchRenderMgr.setViewOutputFile idx (outputDir + "/" + cam.name + ".exr")
batchRenderMgr.setViewEnabled idx true
-- Each view can override resolution, frame range, etc.
)
-- Start batch render
batchRenderMgr.render()
)
-- Collect all cameras and render
local allCameras = for c in cameras where classOf c != Targetobject collect c
setupBatchRender allCameras "D:/output"
```
### Headless Batch (Command Line)
```bash
# Render specific camera
3dsmaxcmd.exe "D:/scene.max" -camera "Camera01" -outputFile "D:/output/cam01.exr" ^
-width 4000 -height 2250 -v 5
# RendeDel mismo repositorio
PULL_REQUEST_TEMPLATESkill
3dsmax-scriptingSkill
>-
3proxySkill
>-
a2a-protocolSkill
>-
ab-test-setupSkill
When the user wants to plan, design, or implement an A/B test or experiment. Also use when the user mentions "A/B test," "split test," "experiment," "test this change," "variant copy," "multivariate test," or "hypothesis." For tracking implementation, see analytics-tracking.
ablySkill
>-
accessibility-auditorSkill
>-
aceternity-uiSkill
>-