新课已做好:蓝白水波工程、动画预览与节点图解 →

完整跟做 · 原片证据与补充练习分开

先把场景搭起来,
再理解每一个效果。

从单位、布景、对象摆放,到镜头、灯光、材质、几何与贴图动画、渲染输出。原片继承但没演示建造的部分,用明确标注的补充练习接上。

11 段课程130 个原片流程节点8 个从零补习模块6 份本轮复核工程
先分清两种内容

原片核对:下方逐课流程带时间和截图,保留中间实验及最终状态。补充练习:解决原片没有交代的背景尺寸、镜头定位、开局搭建;参数不是老师原值。全片已按主要阶段检查,本次仍不是53.6万帧逐帧目视审核。

第二轮 · 场景 / 镜头 / 动画

继续补查,已有数值落实到工程

新增36条证据,优先替换上一轮推定值。下方各课按原片时间插入标有「本轮补查」的步骤;已知读值、连续操作推断、图读近似与自选值仍分开说明。

15_圆柱扩张_多点曲线核对

新版 .max · 定位可见帧

检查帧:40

  • 0–100帧缩放,60/68/86/94帧分别126/134.64/147.06/149.46%,吻合原工程拟合。
  • Cellular边界颜色1最终可见中键50帧184.930,替换旧48帧189.720。
  • 每3帧输出640×480,原片AVI压缩器为未压缩。
仍有差异的部分
  • 视口坐标未展示,保留自选检查相机。
  • 边界颜色1右端98帧0为图读;曲线切线未展示,仍用采样拟合。

16_火焰_最终偏移与可见性修订

新版 .max · 定位可见帧

检查帧:35

  • Cellular#1第100帧Offset改为(0,-150,100)。
  • 平面宽500长350,Z187.925,关闭反射折射可见及投接影。
  • 保存原片主灯位置和参数为关闭的对照灯,避免未知朝向影响预览。
仍有差异的部分
  • 背景、检查相机和曝光仍为补齐;原片主灯目标坐标未知。
  • 初始Offset及切线未完整展示。

17_物理相机_末段机位与目标

新版 .max · 定位可见帧

检查帧:0

  • 采用v09最终机位(-535.458,-882.38,268.641)。
  • Target=(-47.887,153.769,306.417),连续操作与1145.75距离共同支持。
  • 实际创建可选的相机Target;36mm、FOV45、f8、DOF关闭。
  • 补入Point001位置及显示尺寸150。
仍有差异的部分
  • 机位和目标不是同帧双读,属于连续证据组合。
  • 为匹配此镜头补齐三球布局:半径135、X=-350/-50/300、Y153.769、Z306.417;这些不是老师球体读值。
  • 舞台与曝光仍补齐,不能保证构图完全同老师。
  • Supplemental_Overview保留为辅助镜头。

18_球体与气流_关键帧及Gizmo修订

新版 .max · 定位可见帧

检查帧:35

  • Cylinder位置(.535,67.243,0)。
  • 精确Scale键15帧(35.597,35.597,8.405)%;70帧(109.643,109.643,144.879)%。
  • Ball补上图读Scale50/50/0→150/150/120%,末端Z38;以35帧-.002、45帧7.702、74帧36.287约束位置拟合。
  • Noise Phase按时间0→100线性变化,保留45帧45、61帧61的关系。
  • Taper按63帧世界Gizmo高度37.841反算局部值,局部=[0.0, 0.0, 27.26105308532715]
  • 修正旧创作版拖尾:球体补充VisibilityEnvelope改15帧黑、30帧白、64帧黑,中段衰减;依据原片64帧很弱的画面拟合,不是老师原节点读值。
仍有差异的部分
  • Ball缩放值为曲线图读,切线仍自选;新增位置采样键用于拟合,不是声称老师原关键帧时间。
  • Gizmo局部值取决于自选缩放插值;匹配63帧显示位置不保证整段形变完全一致。
  • 背景、相机、曝光仍补齐。旧Ball材质中的补充遮罩尚非全节点逐值恢复。

19_网格灯_ArnoldNoise实验时点

新版 .max · 定位可见帧

检查帧:40

  • Noise15改为Arnold ai_noise,Octaves1/Lacunarity1.92/Distortion0/Amplitude1,Object坐标、Scale1、Offset0、P0、Time0。
  • 圆柱Renderable关闭;保留Mesh引用、Intensity1、Exposure2、Normalize关闭。
  • 此文件仅复现v06网格灯实验阶段;课程末尾灯被移除。
  • 按原片布局近似整理UV:矩形侧壁在下、两端盖并排在上;数值为自选,非逐顶点恢复。
仍有差异的部分
  • UV已匹配侧壁与端盖布局关系,但原片顶点数值未显示;当前UV坐标为补齐。
  • Noise黑白按色块与默认值补齐,未打开RGB窗口。
  • 场景和相机仍补齐。

20_Gobo_反向实例双灯

新版 .max · 定位可见帧

检查帧:30

  • 原灯位置(0,0,125.536)、旋转(0,0,0)。
  • 通过实例复制建立第二盏灯,旋转(0,-180,0),共享灯参数与Gobo链。
  • 两灯同位置依Shift原地旋转操作链推断。
仍有差异的部分
  • Intensity200/Exposure6沿用早段读值,末段面板未重开。
  • 接收面、比较球和检查相机仍为补充;不是老师棚景尺寸复刻。
这次如何在3ds Max里跟着修改

圆筒:先位置,再精确缩放键

  1. 关闭Auto Key,选择Cylinder001对象层级;Move使用World和绝对输入,将位置设为X .535、Y67.243、Z0厘米。
  2. 在Curve Editor展开Cylinder001 → Transform → Scale,找到15帧和70帧的关键点,打开关键点属性。使用X/Y/Z缩放百分比字段,勿在相对缩放输入里重复乘一次。
  3. 15帧填35.597%、35.597%、8.405%;70帧填109.643%、109.643%、144.879%。先核对这两帧,再调中间曲线。网站没有把未展示的切线名称补写为老师原值。
  4. 切到63帧,展开Taper并选Gizmo子对象。Move参考系改World,以绝对位置输入(.535,67.243,37.841)厘米。退出子对象,确认Cylinder本身仍在(.535,67.243,0)。

相机:本体和目标分开设置

  1. 关闭Auto Key,选PhysCamera001;开启Targeted,再分别选择相机与Target。
  2. 相机位置(-535.458,-882.38,268.641),Target位置(-47.887,153.769,306.417)。检查Target Distance约1145.75厘米。
  3. Film Width36毫米,Specify FOV开启、FOV45°,F-number8,景深关闭。按C切到PhysCamera001,再检查渲染视口。
  4. 本工程为配合该镜头补齐了比较球布局;球的位置、半径和舞台尺寸没有证据支持逐值一致,请看工程差异栏。

两盏Gobo:使用实例

  1. 先确认原灯位置(0,0,125.536)、旋转(0,0,0),Gobo链已接好。
  2. 在自身枢轴旋转时按Shift复制;Clone Options选择Instance、数量1,再将新灯旋转设(0,-180,0)。
  3. 保留同一位置;实例共享灯和滤镜参数,随后修改强度会一起改变。原片最后没有重开强度面板,工程沿用早段读值并明确标注。
18号实际动画检查:15–75帧每2帧采样,以15fps播放;低采样Arnold校验,保留许可水印。几何动作已修订,部分材质遮罩仍是补充值。
查看网格灯圆柱的UV布局保存后的圆柱UV读回:侧壁在下、两端盖并排在上

根据原片排列关系补齐,图来自新版.max的真实UV读回;顶点坐标为自选,非老师逐顶点数值。

下载本轮工程合集 · 保存后重新载入的实际参数

本轮核查范围与仍未知的内容

范围内采用定点和密集抽帧人工核对,重点处细化到1秒;不是逐视频帧穷尽审查。没有展示的棚尺寸、部分曲线切线、UV顶点值仍无法逐值恢复。

v01-v03 场景补充复核;仅新增解释与证据,不重复 full_first_scene.json 的基本步骤。抽帧人工核对,不宣称逐视频帧看完。

检查区间[{"id": "v01", "from": "00:50", "to": "03:45", "sample_seconds": 5, "focus": "创建尺寸、转换多边形、两端盖删除、坐标是否实际显示"}, {"id": "v03", "from": "04:00", "to": "09:20", "sample_seconds": 8, "focus": "缩放关键帧与切线修改"}, {"id": "v03", "times": ["12:30", "28:40", "29:20"], "focus": "缩放数值独立验证"}, {"id": "v03", "from": "45:00", "to": "50:00", "sample_seconds": 10, "focus": "曲线修改与恢复透视视口"}, {"id": "v03", "from": "50:20", "to": "51:30", "sample_seconds": 2, "focus": "输出选项、AVI压缩设置、开渲染"}, {"id": "v02", "focus": "本轮没有新增视频抽帧;沿用 full_first_scene.json 已核对结果,不能计为新逐帧复核"}, {"id": "v03", "from": "48:32", "to": "48:48", "sample_seconds": 2, "focus": "边界颜色1离开轨道前的最终中键数值"}]
仍未确认["圆筒世界位置和旋转的精确最终值;不能使用灰显鼠标网格坐标填充。", "相机实体没有出现在核对片段;透视视口位置、朝向、FOV未显示。", "缩放切线预设名称/手柄数值仍未知;拟合公式已通过4个可见中间帧核验,但原始控制器未取得。", "场景帧率、AVI播放帧率未在本轮检查区间显示。", "边界颜色1最终可见中间键已核实为50帧184.930;右端约98帧0及切线数值仍待原工程确认,不能标作精确。"]

v04-v07场景/镜头/灯/UV与动画密集复查补充

检查区间[{"video": "v04", "ranges_seconds": [[0, 95, 5], [1000, 1340, 10], [1151, 1155, 1]]}, {"video": "v05", "times_seconds": [0, 5, 10, 15, 20, 1820, 1830, 1840]}, {"video": "v06", "ranges_seconds": [[1650, 2200, 10], [3000, 3140, 10], [3100, 3110, 1]]}, {"video": "v07", "ranges_seconds": [[0, 270, 10], [830, 950, 10]]}]
仍未确认[{"topic": "Loft001背景", "status": "本轮扫描及原有概览未见参数面板/创建过程", "missing": "截面/路径/尺寸/材质/精确世界变换;只有线框外形"}, {"topic": "镜头", "status": "继续确认透视视口渲染而非独立相机", "missing": "完整视口变换矩阵/FOV;最后手动调整视角没有数值展示"}, {"topic": "Plane001旋转", "status": "确定XZ方向竖直平面,数值角未出现", "missing": "精确Euler角或法线符号;不能把创建时灰色鼠标位置作为对象位置"}, {"topic": "Cellular动画", "status": "已确认帧100 Offset(0,-150,100)替代中间50", "missing": "起始关键帧和完整切线/插值,需按补全值明确标记"}, {"topic": "Cylinder UV", "status": "已见最终布局但无逐顶点数值", "missing": "全部UV坐标及打包后的精确岛间距"}, {"topic": "Noise15颜色", "status": "可见黑白色块", "missing": "未打开RGB窗口;0/1仅默认黑白推定"}, {"topic": "灯光target", "status": "v07早期target存在,晚期取消;Mesh灯无最终target面板", "missing": "v04/v06部分target世界坐标与旋转未展示"}, {"topic": "v07最终强度与曝光", "status": "实例复制阶段未再次打开完整强度面板", "missing": "200是早期确认值,Exposure6需引用其他已核验时点;新灯同位置来自沿枢轴旋转操作推断"}]

["v08", "v09", "v10", "v11"]

检查区间[{"id": "v08", "seconds": [160, 240], "stride_seconds": 10}, {"id": "v09", "seconds": [2910, 3150], "stride_seconds": 10, "dense_seconds": [3071, 3073, 3075, 3077, 3081]}, {"id": "v10", "seconds": [100, 270], "stride_seconds": 10}, {"id": "v10", "seconds": [500, 710], "stride_seconds": 10}, {"id": "v11", "seconds": [1430, 1660], "stride_seconds": 10, "dense_interval": [1641, 1654], "dense_stride": 1}, {"id": "v11", "seconds": [2500, 2560], "stride_seconds": 5}]
仍未确认["Ball Scale键值只有图读近似,未见键属性窗口;XY50→150与Z近0→120可实施但须标图读。", "Ball Position15/40键精确值未展开;末端38为两次对象评估字段证据。", "Cylinder两键Scale已精确,切线名称未显示;图形显示首键输出先快后缓,尾段仍上升。", "Taper局部gizmo坐标需应用63帧对象逆矩阵;视频没有脚本局部值。", "v08完整同帧相机/target配对未显示。", "棚景几何尺寸与灯强度在本轮核对区间未展开,不冒充原值。"]

从零完整路线

先按这八个模块走通一遍,再选择下方对应课程。每一步有操作、用途和验收点。

01 从空场景开始:单位、视口和保存
  1. File → Save As另存工作文件,再创建新场景。不要把练习直接覆盖到原工程。建议每个效果独立目录,使用01_setup、02_shape、03_material、04_animation版本。

    用途:能回到上一个正确阶段,排查材质和动画时不用重做。

  2. Customize → Units Setup设Metric/Centimeters;System Unit Setup中1 Unit=1 Centimeter。显示单位和系统单位是两个设置。补充练习统一厘米。

    用途:Noise的Object/World尺寸、灯光衰减和模型大小才有一致尺度。

  3. Top看平面摆放,Front/Left看高度,Perspective看构图。选中目标再按Z缩放到选择;Alt+W最大化当前视口。不要把透视视口误认为已经存在Camera对象。

    用途:先在正交视图解决位置,再在透视图检查遮挡。

  4. 选择Move,在Reference Coordinate System选World。通过Transform Type-In输入X/Y/Z;移动和缩放输入框不是同一组数据。

    用途:防止把本地轴、百分比缩放误抄成位置或尺寸。

  5. Time Configuration设置0–100帧、30fps作为补充练习;只有原片明确显示的帧率才称老师设置。关键帧单位是Max帧,不是视频秒数。

    用途:课程视频的00:30与Max第30帧不是一回事。

检查点:建立一个Box并移动到(0,0,0),四视口都能定位它;保存一次后再继续。

02 搭建场内:地面、弧形背景和比较物体
  1. 第一套视频从单个Cylinder开始;第二套多个片段已带有Loft001或Room。原片没有展示的舞台建造过程,以下作为补充方法,不冒充老师的逐步操作。

    用途:理解继承场景的边界,避免照着材质步骤却缺地面、灯和背景。

  2. 在Left视图用Shapes → Line画开放折线:地面起点Y=-600/Z=0,拐角Y=600/Z=0,墙顶Y=600/Z=800。X放在-800。进入Vertex,给地面与墙的拐角Fillet=200。

    用途:平滑圆角去掉地面与墙的尖锐折线,方便看投影和反射。此尺寸为补充练习值。

  3. 给开放截面加Extrude,沿左右方向铺满1600cm,使X范围为-800..800。检查法线朝向场内;若方向错误,修正Extrude方向或面法线。提供的10号工程用等价的分段曲面搭建,便于直接检查。

    用途:得到地面到后墙连续的摄影棚背景。

  4. 先放三个半径75球:中心(-170,0,75)、(0,0,75)、(170,0,75)。左球金属、中球暗色、右球做发光材质;这些是补充练习布局。

    用途:同一灯光下比较反射、漫反射与自发光,避免把照明效果误认为材质参数。

  5. 按Room、Effect、Lights、Cameras分层或命名;保持效果模型单独可选。隐藏对象和冻结对象含义不同,渲染前检查对象是否被排除或关闭Renderable。

    用途:选择不会混乱,也能隔离判断是哪一层造成黑屏。

检查点:先只给全部对象赋灰色Arnold材质,从透视视口看见地面、后墙和三个完整球,再进入灯光步骤。

03 放镜头:透视视口、实体相机和构图
  1. v01–v07主要使用透视视口和/viewport_camera渲染;那是当前视角,不是场景里已经放了实体相机。要固定构图或复现后续相机实验,才建立实体Camera。

    用途:避免找一个原片根本没有创建的镜头。

  2. 先把Perspective视口调整到合适构图,保持该视口激活,再用Views → Create Physical Camera From View(默认Ctrl+C)。Ctrl+C在这里不是复制模型。

    用途:快速把满意的临时视角固定成物理相机。

  3. Target相机可以分别移动相机和Target;Free相机只有本体,需要旋转朝向。提供的早期独立效果工程是Free Camera,自选look-at点只是计算朝向用,并没有可选的Target对象。

    用途:不要以为只输入位置就会自动看向模型。

  4. 补充舞台相机示例位置(375.779,-699.973,268.641),朝向(0,0,120)。位置来自v09某个实验时点,看向点由本练习补齐,两者不称原片最终组合。使用Target相机时把Target移动到看向点;Free则调整旋转或使用提供的定位脚本。

    用途:把相机位置和视线分开设置,才能真正把对象纳入画面。

  5. Physical Camera:Film Width36mm,Specify FOV开启,FOV45°,F-number8,景深关闭用于清楚检查。FOV越小看到的范围越窄;不能同时强求FOV和某个焦距独立固定,二者受片幅、焦距、对焦等共同影响。

    用途:相机位置决定透视关系,FOV决定取景宽度;不要只靠一个Zoom把两者混为一谈。

  6. 把球保持不动:先只前后移动相机,观察球与背景的相对大小;再固定相机只改变FOV。v09后段就是这种透视实验,应分别记录每个时点,不能把不同时间的相机和Target拼成一组参数。

    用途:理解为什么同样让主球铺满画面,背景看起来仍然不一样。

  7. 激活视口按C或用视口标签Cameras选择相机;Shift+F看安全框,再确认Render Setup的View to Render。保留画面边缘余量,尤其动画最大缩放时。

    用途:相机建好了但渲染还是旧透视视口,是常见的“镜头无效”。

检查点:画面能看到完整效果主体;拖到动画最高、最宽和结束时刻,主体都没有意外被裁切。

04 放灯与投影:先照明,再实验
  1. 给地面和球临时赋Arnold Standard Surface,Base约.8、Emission0。创建Arnold Quad,补充位置(-250,-150,500),朝向(0,0,100)。

    用途:自发光材质即使没灯也能显示,不能用它验证场景照明是否正确。

  2. v04早段Quad为100×100、Spread1、Intensity500、Exposure6;这些是该时点值。不要把v07早段200强度与v04的500混成全课程通用设置。

    用途:面积控制柔和程度,Intensity和Exposure共同影响亮度。

  3. 在Top调左右/前后,Front调高度。目标或朝向要落到承接面与主体附近,先关复杂贴图渲染一张,再加入Noise。

    用途:如果无贴图时都不亮,先修位置、方向或曝光,不要继续堆节点。

  4. Photometric Light选Spotlight分布,开启Projector并连接Noise。课堂还有柱形光源Length520/Radius13、1500cd的独立实验;这不是Arnold Mesh Light。

    用途:光度学柱形灯、实体圆柱、Arnold网格灯是三个不同对象/概念。

  5. 打开灯的Exclude/Include窗口,选择目标对象,确认当前模式是Exclude还是Include,以及影响Illumination、Shadow或二者。先只改一个对象,再渲染对比。

    用途:不受灯影响与不投影不是同一种状态;错误排除会让某个球意外变黑。

  6. 先建实体Cylinder(课堂Radius28.399/Height291.01/12边/段1),横向放置;再创建Arnold Light,Shape选Mesh,Mesh槽指定该圆柱。后续读值Intensity1/Exposure2,并使用Noise颜色纹理。

    用途:普通圆柱不会因为看起来像灯管就发光;必须建立灯到网格的引用。

  7. Arnold Spot上添加Gobo修改器,Slide Map连接Color Correction→Noise。滤镜Replace、Density0、Scale1/1、Periodic。先检查灯照到平面,再调Noise颜色与Gain/Gamma。

    用途:Gobo控制投射图案,和把同一纹理贴在球表面不同。

检查点:关掉贴图时有稳定照明;打开贴图后图案同时影响承接面和物体;排除测试能产生可解释的变化。

05 材质搭建:从灰度形状到完整颜色
  1. M打开材质编辑器,创建Arnold → Surface → Standard Surface并赋给正确模型。发光练习Base0、Specular0、Emission1,先用纯白发光。

    用途:确认模型、赋材质和镜头正确后,再加入复杂贴图。

  2. Cellular/Noise/Gradient先接Emission Color,看到黑白纹理;检查Explicit Map Channel1与Object/World XYZ是否匹配。

    用途:无UV的模型使用显式UV会变成常量或错误纹理;尺寸差几个数量级也会变成细噪点。

  3. Mapped Gradient按源亮度重映射,Solid产生硬阈值;W角90°的线性Gradient用于高度范围。逐个查看节点输出。

    用途:把“纹理形状”和“它出现在哪一段高度”分开控制。

  4. 将形状遮罩接Opacity。黑=不可见,白=可见,灰=半透明;黑色Emission本身并不会删除几何。

    用途:颜色分支与透明分支职责不同,整片矩形/圆筒残留通常从Opacity检查。

  5. 参考每课证据设置色标和Composite模式;火焰Darken/Soft Light、紫金球Screen/Lighten、气流Color不能全替换成Multiply。

    用途:相同两张贴图,混合模式改变会直接改变形状或配色。

  6. 色标条场景RGB(0–255)与颜色选择器的显示RGB/HEX不同。输入哪组值要看字段标注;网站将两者分开,不能直接混抄。

    用途:避免数值看似一致但渲染偏色。

检查点:暂时断开Opacity仍能看见整个发光模型;接回后只剩期望图案。节点数值与各课截图或明确补齐表对应。

06 动画:物体、修改器、贴图分别控制
  1. Position/Scale改变几何;Noise Modifier改变几何形状;Noise贴图Phase/Offset只改变采样。三种动画不能互相冒充。

    用途:气流不只是条纹移动,v11还对圆筒做Z方向缩放,并给Ball加Noise修改器。

  2. 先关闭Auto Key设置初始状态;到起始帧打开Auto Key并记录需要的属性,再到目标帧输入终值,最后关闭Auto Key。确认轨道上真的出现键。

    用途:避免无意中把相机、灯或模型位置也打上关键帧。

  3. 在Curve Editor定位对象与具体轨道(Position Z、Scale Z或贴图参数)。检查横轴帧数和纵轴值,先记录键的数值,再处理切线。

    用途:曲线看起来相似不代表时间和值相同;没显示的切线长度只能标补齐。

  4. Ball的Noise修改器:Seed0、Scale100、Fractal开、Roughness0、Iterations6、Strength20/20/0;Animate Noise开、Frequency.25。45帧Phase45是课堂采样值。

    用途:XY扰动使球体轮廓变化,Z强度0不增加竖向扰动;不等于Noise贴图Size。

  5. 气流Color Correction颜色在15帧黑、30帧白、70帧黑。先检查这些帧再调中间曲线;第0帧看不见可以是预期,不等于文件坏了。

    用途:用明确的出现/峰值/消失三个时刻验收动画。

  6. v10前半段Ball Z在前约50帧接近0,后段向上;原片并非证据充分的“从高处落地”。旧08工程的下落/压扁是创作补齐,单独保留说明。

    用途:把老师演示与自己的扩展动作分开学习。

检查点:逐帧检查开始、峰值、结束;几何变形和贴图流动分别单独播放,最后再一起播放。

07 渲染与导出:先单帧,再序列
  1. Render Setup → Assign Renderer选择Arnold;本机旧Composite/Gobo练习使用CPU兼容路径。CPU不是灯光或相机坏了;不要只因GPU空闲就改一组未验证的节点。

    用途:本机版本的兼容性优先于硬件占用率。

  2. 单独工程建议圆柱40、火焰35、气流30、冲击创作版42帧。确认View to Render为所需视口/Camera,再渲染一张。

    用途:先排除开始帧透明度0造成的黑画面。

  3. 补充练习640×480,Arnold Camera AA3;动画预览可先320×240或480×360、AA2。课堂v10曾输出0–100共101帧、320×240、CPU到AVI。

    用途:先验证构图和运动,再增加分辨率与采样。

  4. Common → Time Output选择Active Time Segment或Range;设置保存路径。实际制作优先逐帧PNG/TGA等序列,单帧失败可补渲染。课堂AVI是其演示选择,不要求你必须使用同一种格式。

    用途:工程帧数、输出帧率和播放速度要一致。

  5. 若用于合成,选择支持Alpha的格式,并明确渲染背景与透明通道用途。网页在黑底显示发光预览;不能只看图片查看器默认白底就判断颜色错误。

    用途:黑色背景与真正的Alpha透明是不同数据。

  6. 保存.max及材质库;外部贴图用Asset Tracking检查路径,必要时归档。打开另一份副本检查材质、相机和关键帧。

    用途:能在当前会话渲染,不代表重新打开或拷贝后仍然完整。

检查点:一张静帧构图正确,一段序列确实有运动且结束状态正确;重新打开文件后手动定位可见帧仍能复现。

08 常见失败:按顺序排查
  1. 依次查:当前帧是否全透明 → 模型是否Renderable → View to Render是否正确 → 镜头是否朝向主体 → 无灯时Base材质是否本来就黑 → 曝光。

    用途:一次只改变一个条件,不要用提高Emission掩盖镜头错误。

  2. 断开颜色干扰,只检查Opacity是否连接、map开关是否开启、遮罩是否有黑白变化、UV通道是否存在。

    用途:颜色里有图案不等于几何已被透明裁切。

  3. 先关Gobo/Projector看普通照明;再查灯类型、滤镜挂在哪盏灯、Noise坐标/尺寸、对象是否被Exclude。

    用途:把“没照到”与“纹理没变化”拆开排查。

  4. 确认不是仅拖动视频播放器;在Max时间滑块检查实际键。材质Phase键与模型Scale键分别查看。

    用途:视频时间轴与3D场景时间轴不同。

  5. 先对照同一时点、相同相机或视口、曝光与材质类别;再看网站差异栏中的补齐值。不要把不同时点实验值混成最终参数。

    用途:课程中的试错过程本身需要保留,不能全部浓缩成一个“最终值”。

检查点:能说清问题出在几何、相机、灯光、材质、动画或输出中的哪一层,再修改对应参数。

场内摆放与镜头朝向

这是补充舞台的俯视示意,不是老师软件截图。X控制左右、Y控制前后、Z控制高度;相机位置和朝向必须同时设置。

后墙 Y=600,高800球X=-170 / 0 / 170;Z=75Quad(-250,-150,500)相机(375.779,-699.973,268.641)朝向(0,0,120)为补齐前方 Y负X正 →

制作物理相机时还要指定Physical Camera Exposure Control。补充场景Target EV分别为:10号16、11号0、12号10、13号7、14号6。11号Quad Exposure=-10,12号为0;这些是平衡发光材质和舞台亮度的自选曝光,不是老师原值。若全白,先核对曝光控制是否生效。

九份独立材质练习的自选镜头

这些是之前交付工程里的镜头。它们便于看到效果,不能当作老师原片镜头参数。

练习相机位置cm看向点cmFOV可见帧
01 圆柱碎片(125, -175, 110)(0, 0, 25)48°40
02 火焰平面(0, -1000, 0)(0, 0, 0)42°35
03 气流圆筒(180, -250, 135)(0, 0, 40)42°30
04 Noise/Matte(0, -850, 90)(0, 0, 0)42°30
05 Gobo投影(360, -500, 430)(0, 0, 20)48°30
06 Falloff(0, -400, 30)(0, 0, 0)42°30
07 紫金球(0, -680, 40)(0, 0, 0)42°30
08 冲击创作版(150, -260, 130)(0, 0, 25)42°42
09 光度学投影(320, -460, 420)(0, 0, 20)48°30

Free相机没有实体Target;表中的看向点用于确定朝向。打开动画文件后若停在0帧,请手动切到“可见帧”,不能只凭第一帧判定工程为空。

本次修订:之前确实漏掉了什么

五份完整场景练习

补充场景尺寸和部分曝光为自选;教学中可读的模型与灯值尽量保留。批处理校验图可能有Arnold许可水印,仅作为工程验收,不是教学原图。

建议先打开.max,再在Scripting → Run Script运行配套“定位可见帧.ms”。脚本只切换当前场景的时间和镜头,不加载其它文件、不重建场景。

打包下载五份场景与说明

逐课完整流程:按原片顺序学

V01 · 原片证据

从空场景建开放圆筒,再建立Arnold发光测试

models["Cylinder001:一个圆柱转可编辑多边形的开放圆筒"]
lights已核对画面未见创建灯光;场景列表仅圆柱。发光材质用于黑背景效果测试。
camera未见实体相机创建;透视视口构图,后续RenderView使用/viewport_camera。
environment未搭建房间、地面或背景模型。黑色渲染背景是效果展示环境。
先确认这是空场景
  1. 场景资源管理器中没有模型。
  2. 保持一个透视视口,用网格辨认地面与竖直方向。
  3. 本段先做孤立的特效载体,不需要先搭房间。

用途:避免误把其它课堂已有布景搬入这节课。

v01 00:15 先确认这是空场景原片证据
v01 00:15附近原画面,点击查看原分辨率。
设显示单位
  1. 打开“自定义→单位设置”。
  2. 显示单位比例选“公制→厘米”。

用途:让后续半径40、高40的数字具有明确单位。

display_units公制,厘米
v01 00:34 设显示单位原片证据
v01 00:34附近原画面,点击查看原分辨率。
再核对系统单位
  1. 在单位设置中打开“系统单位设置”。
  2. 确认1单位=1.0厘米,再关闭两个对话框。

用途:显示单位与系统单位是两个设置;程序纹理的尺寸受场景单位影响。

system_unit1单位=1.0厘米
respect_system_units_in_filestrue
v01 00:38 再核对系统单位原片证据
v01 00:38附近原画面,点击查看原分辨率。
创建圆柱
  1. 创建面板进入“几何体→标准基本体→圆柱体”。
  2. 在地面附近拖出底面,再拖出高度;随后用修改面板输入精确尺寸。

用途:先产生几何,再用数值修正,避免依赖手拖尺寸。

未展示/边界:原始圆柱精确世界XYZ没有通过变换输入框明确展示;不要把底部鼠标坐标误当物体位置。

v01 01:00 创建圆柱原片证据
v01 01:00附近原画面,点击查看原分辨率。
输入圆柱尺寸与分段
  1. 选择Cylinder001,在修改面板设置半径和高度。
  2. 把高度分段减到1,端面分段1,边数18。
  3. 保留平滑和生成贴图坐标;真实世界贴图大小关闭。

用途:低分段圆筒只是贴图载体;效果细节由贴图生成。

radius_cm40
height_cm40
height_segments1
cap_segments1
sides18
smoothtrue
generate_mapping_coordstrue
real_world_map_sizefalse
v01 01:40 输入圆柱尺寸与分段原片证据
v01 01:40附近原画面,点击查看原分辨率。
区分建模尺寸与对象位置
  1. 在圆柱参数中复核40cm半径、40cm高度、1段高度、1段端面、18边。
  2. 选中圆柱并不代表底部所有灰色XYZ数就是物体位置;录像此时使用选择工具。
  3. 补建可自行把物体放在原点,但标注为补齐值。

本轮补查 · 原片证据

用途:避免把鼠标在网格上的坐标复制成圆柱的位置。

radius_cm40
height_cm40
height_segments1
cap_segments1
sides18
smoothtrue
generate_mapping_coordstrue
real_world_map_sizefalse

未展示/边界:世界位置、旋转的最终精确值未在这些镜头中以有效变换输入框展示。

v01 01:40 区分建模尺寸与对象位置原片证据
v01 01:40附近原画面,点击查看原分辨率。
转换为可编辑多边形
  1. 右击圆柱,选择“转换为→转换为可编辑多边形”。
  2. 之后进入多边形子对象模式。

用途:将参数化圆柱变成可以删除端面的网格。

v01 02:40 转换为可编辑多边形原片证据
v01 02:40附近原画面,点击查看原分辨率。
删除两端盖
  1. 绕转视口,从下方看到并选中底面多边形。
  2. 删除底面,再绕到上方处理另一端盖。
  3. 最后退出子对象模式,确认只剩侧壁。

用途:上下端盖会让效果变成封闭实心体,妨碍环形碎片表现。

target_geometry只有圆筒侧壁,两个端面都不保留
v01 03:20 删除两端盖原片证据
v01 03:20附近原画面,点击查看原分辨率。
调整透视视口构图
  1. 绕转至略高于圆筒中部、能看到上口的位置。
  2. 平移和缩放视图,让整个圆筒占画面中央。
  3. Scene Explorer仍仅Cylinder001,没有实体相机或灯。

用途:老师这里是用视口观察和取景;不是在设置实体相机焦距。

未展示/边界:透视视口位置、旋转和FOV没有数值展示;后续工程中的Preview_Camera为补齐。

v01 03:40 调整透视视口构图原片证据
v01 03:40附近原画面,点击查看原分辨率。
打开Slate并建立Arnold材质
  1. 打开Slate材质编辑器。
  2. 在材质浏览器的Arnold→Surface中创建Standard Surface。
  3. 命名Luft,赋给当前圆筒。

用途:把材质类别与建模步骤连接起来,而不是只给一张参数表。

v01 04:00 打开Slate并建立Arnold材质原片证据
v01 04:00附近原画面,点击查看原分辨率。
建立不依赖灯光的发光测试
  1. 将Luft的Base和Specular设为0。
  2. 展开Emission并把Weight设为1,暂用白色观察载体。

用途:先排除漫反射和镜面贡献,只检查发光与后续透明形状。

base0
specular0
emission1
v01 06:00 建立不依赖灯光的发光测试原片证据
v01 06:00附近原画面,点击查看原分辨率。
用Arnold RenderView检查当前视图
  1. 打开Arnold RenderView。
  2. 使用/viewport_camera观察当前透视视口结果。
  3. 此时节点连接还在搭建,渲染全黑属于需要检查贴图与发光连接的中间状态,不能直接当完成。

用途:实时对照视口和最终渲染,定位问题发生在哪个阶段。

render_camera/viewport_camera

未展示/边界:此时黑画面仅为可见中间结果,不能仅凭单帧判断具体是哪一项导致。

v01 07:30 用Arnold RenderView检查当前视图原片证据
v01 07:30附近原画面,点击查看原分辨率。

查看本课shader参数及载入原视频逐帧 →

V02 · 原片证据

保留原场景,逐层检查碎片与纹理运动

inheritsv01的Cylinder001和Luft材质;不是重新建场景。
camera仍是/viewport_camera;没有新增相机证据。
lights没有新增灯光证据。
承接上一段场景
  1. 保留已删端盖的圆筒及Luft。
  2. 打开材质编辑器与RenderView并排查看。
  3. 先保持黑白测试,确认形状;暂不急着上彩色。

用途:把场景继承关系讲清,避免每段都重新建模。

v02 00:00 承接上一段场景原片证据
v02 00:00附近原画面,点击查看原分辨率。
先完成黑白碎片轮廓
  1. Cellular接Mapped Gradient Ramp的源贴图。
  2. 在原有参数章节核对Size .2、Spread1.1、Chips、Fractal等设置。
  3. 用RenderView观察白色片状区域与黑色空隙,形状正确后再加下一层。

用途:通过分阶段预览定位遮罩问题,而不是一开始就堆所有节点。

cellular_size0.2
spread1.1
render_camera/viewport_camera
render_device_visibleCPU
v02 05:50 先完成黑白碎片轮廓原片证据
v02 05:50附近原画面,点击查看原分辨率。
动画化纹理第三维偏移
  1. 选中Cellular #1坐标参数。
  2. 把时间范围作为0–100帧工作区。
  3. 通过自动关键点,在0帧设W偏移0,在100帧设W偏移5,完成后关闭自动关键点。
  4. 拖动时间滑块预览:模型未移动,纹理采样在变化。

用途:通过程序纹理的第三维改变碎片分布,而非移动圆筒或相机。

map_channel1
tiling[4, 1, 1]
offset_U0
offset_V0
offset_W_at_frame1005
timeline_end100

未展示/边界:0帧W=0引用前一轮参数证据;此张新截图直接显示100帧W=5。;未显示完整切线数值。

v02 07:40 动画化纹理第三维偏移原片证据
v02 07:40附近原画面,点击查看原分辨率。
加入高度遮罩的合成分支
  1. 新增Gradient Ramp #3和Composite #4。
  2. 把Cellular与高度渐变先组合,再把合成结果送进阈值Ramp。
  3. 在节点图中顺着输出线检查:源纹理→合成→阈值,而不是把高度图接到颜色槽。

用途:把碎片限制在圆筒某一高度区域。

v02 09:00 加入高度遮罩的合成分支原片证据
v02 09:00附近原画面,点击查看原分辨率。
用渐变控制上下范围
  1. 选择高度渐变,W角转90度,得到沿高度变化的黑白带。
  2. 观察RenderView中白碎片由整圈缩到较窄的高度带。
  3. 逐个预览中间节点,再接回材质。

用途:保留有效区域并让上下边缘自然断开。

height_ramp_W_angle_deg90
v02 11:00 用渐变控制上下范围原片证据
v02 11:00附近原画面,点击查看原分辨率。
保存可检查的中间阶段
  1. 结束本段时保留一个圆筒、黑白碎片分支和纹理偏移动画。
  2. 进入第三段再添加模型缩放、配色和侵蚀。

用途:把每段的完成状态明确下来。

未展示/边界:保存工程的实际文件名未见明确操作;建议另存检查点属于补习建议。

v02 11:45 保存可检查的中间阶段原片证据
v02 11:45附近原画面,点击查看原分辨率。

查看本课shader参数及载入原视频逐帧 →

V03 · 原片证据

扩张曲线、侵蚀淡出及动画渲染输出

inherits前两段开放圆筒、Luft和基础碎片图;场景仍只有Cylinder001。
camera视口构图,多次放大缩小观察;最终渲染仍/viewport_camera。
lights本段未见新增灯光或布景。
给圆筒加入整体缩放动画
  1. 选择Cylinder001,激活缩放工具。
  2. 开启自动关键点,在时间轴两端建立大小变化。
  3. 本段演示的是整个圆筒的缩放,不是把单个碎片建成独立物体。

用途:先做整体扩张运动,再叠加材质侵蚀。

v03 00:40 给圆筒加入整体缩放动画原片证据
v03 00:40附近原画面,点击查看原分辨率。
在曲线编辑器精确输入起点
  1. 打开轨迹视图—曲线编辑器。
  2. 展开Cylinder001→变换→缩放。
  3. 打开起始关键点属性,设时间0,X/Y/Z值均0。

用途:让特效从不可见的小尺寸开始。

frame0
scale_percent[0, 0, 0]

未展示/边界:零缩放会让0帧看不到物体;应到中间帧检查材质,不要误判工程为空。

v03 04:40 在曲线编辑器精确输入起点原片证据
v03 04:40附近原画面,点击查看原分辨率。
缩放切线操作的证据边界
  1. 在曲线编辑器选择Cylinder001→变换→缩放。
  2. 首键时间0,XYZ均0;末键时间100,XYZ均150。
  3. 老师通过关键帧对话框的输入/输出切线图标调整曲线,最终前段增长快、末段趋平。
  4. 不要把修改途中05:44的曲线当成最终曲线;07:52已经是最后的单调减速扩张形态。

本轮补查 · 原片证据

用途:将爆发扩张与匀速长大区分开。

start_frame0
start_scale_percent[0, 0, 0]
end_frame100
end_scale_percent[150, 150, 150]
frame94_scale_percent[149.46, 149.46, 149.46]

未展示/边界:切线预设中文名称与数值手柄未被文字显示,不能宣称逐项切线参数精确复制。

v03 05:44 缩放切线操作的证据边界原片证据
v03 05:44附近原画面,点击查看原分辨率。
输入终点并调整扩张节奏
  1. 打开缩放终点关键点属性。
  2. 设时间100,X/Y/Z均150%。
  3. 调整起止切线,使曲线先快后慢、末段逐渐变平。
  4. 拖动时间滑块对照曲线和圆筒大小。

用途:150%是整体尺寸,不是半径直接改成150厘米。

frame100
scale_percent[150, 150, 150]
curve_shape由0上升至150,后段趋于平缓

未展示/边界:切线按钮形状和曲线可见,但完整手柄数值未显示;工程内公式与逐帧烘焙属于补齐。

v03 08:00 输入终点并调整扩张节奏原片证据
v03 08:00附近原画面,点击查看原分辨率。
在中间帧检查形状
  1. 回到材质编辑器,把时间滑块停在效果可见的中间位置。
  2. 保持RenderView对当前透视视口渲染。
  3. 先检查黑白碎片大小与高度遮罩,再增加Noise细节。

用途:模型起止帧可能不可见;中间帧更适合检查节点。

v03 12:20 在中间帧检查形状原片证据
v03 12:20附近原画面,点击查看原分辨率。
用中间帧校验扩张速度
  1. 把时间滑块定位第60帧。
  2. 检查统一缩放XYZ均126%,而不是线性插值应有的90%。
  3. 重建时可采用s(t)=1.5*(2t-t*t),t=frame/100;这是对可见结果的拟合,不是老师输入的表达式。

本轮补查 · 原片证据

用途:防止只复制两个端点却丢掉爆发节奏。

frame60
scale_percent[126, 126, 126]
reconstruction_formulascale factor=1.5*(2t-t²), t=frame/100

未展示/边界:公式虽吻合多个样本,仍不能替代原Max控制器和切线元数据。

v03 12:30 用中间帧校验扩张速度原片证据
v03 12:30附近原画面,点击查看原分辨率。
让发光和透明分支独立
  1. 在Emission分支叠加Noise与形状。
  2. 创建独立的Opacity Composite,接到Luft的opacity。
  3. 顺着节点输出线检查发光图与透明图是否误接。

用途:黑色发光不等于透明;透明需要单独的遮罩。

v03 19:40 让发光和透明分支独立原片证据
v03 19:40附近原画面,点击查看原分辨率。
在形状确认后加入颜色
  1. 建立另一组Cellular驱动彩色Ramp。
  2. 把蓝—橙—金色谱加入发光Composite。
  3. 保留原黑白Opacity分支,不把彩色RGB直接当成透明度。

用途:配色可以变化,但形状和可见范围应保持可控。

v03 23:00 在形状确认后加入颜色原片证据
v03 23:00附近原画面,点击查看原分辨率。
再次独立核对缩放曲线
  1. 第68帧核对134.64%。
  2. 第86帧核对147.06%;第94帧另可核对149.46%。
  3. 这些可见中间值和0、100两端共同验证重建曲线,而不是仅凭形状猜测。

本轮补查 · 原片证据

用途:让重建动画具有可核验的数字检查点。

samples[{"frame": 68, "xyz_percent": [134.64, 134.64, 134.64], "image": "evidence/recheck_first/v03_1720.jpg"}, {"frame": 86, "xyz_percent": [147.06, 147.06, 147.06], "image": "evidence/recheck_first/v03_1760.jpg"}, {"frame": 94, "xyz_percent": [149.46, 149.46, 149.46], "image": "evidence/recheck_first/v03_472.jpg"}]
v03 28:40 再次独立核对缩放曲线原片证据
v03 28:40附近原画面,点击查看原分辨率。
透视构图与实际相机的区别
  1. RenderView相机字段显示/viewport_camera。
  2. 工作视口可见的圆筒很大,渲染窗口中效果可能只占小范围;检查渲染构图而不是仅看视口大小。
  3. 场景列表仅有Cylinder001;老师没有在这里新建Camera或灯。
  4. 补建命名相机属于复习辅助,必须单列自选位置、目标和视角。

本轮补查 · 原片证据

用途:避免把自动生成的viewport_camera误认为老师创建了实体相机。

render_camera/viewport_camera
render_device_visibleCPU
scene_object_visibleCylinder001

未展示/边界:视口变换矩阵、FOV、最终物体位置未显示;不能承诺这些值逐值一致。

v03 28:40 透视构图与实际相机的区别原片证据
v03 28:40附近原画面,点击查看原分辨率。
加入消散Cellular并分别设关键点
  1. 在Opacity分支加入Cellular #12。
  2. 在0帧输入Size .2、Spread .1;在100帧输入Size .02、Spread8。
  3. 保持贴图通道1和平铺1/1/1,观察中间帧数值逐渐变化。

用途:细胞变密和分布变化共同侵蚀可见区域。

size_endpoints[0.2, 0.02]
spread_endpoints[0.1, 8]
map_channel1
tiling[1, 1, 1]

未展示/边界:此截图停在97帧,Size .025、Spread7.763是插值值,不应误抄为终值。端点引用前轮参数证据与2500秒新截图。

v03 39:00 加入消散Cellular并分别设关键点原片证据
v03 39:00附近原画面,点击查看原分辨率。
核对消散末端参数
  1. 把时间滑块移到100帧。
  2. 确认Cellular #12的Size .02、Spread8。
  3. 边界颜色1在这一阶段已变黑;后续用曲线编辑器调整其变化节奏。

用途:区分动画采样值与真正的终点。

frame100
size0.02
spread8
division_color1黑
v03 41:40 核对消散末端参数原片证据
v03 41:40附近原画面,点击查看原分辨率。
在曲线编辑器检查颜色与侵蚀控制
  1. 展开Luft→opacity Composite→对应贴图轨道。
  2. 查看Cellular边界颜色、Size、Spread及Color Correction颜色轨道。
  3. 选中正确属性再调曲线,避免把发光颜色轨道当透明度。

后续核对:颜色键仍在反复调整;最后离开轨道前的中键为50帧184.930,见48:30。

用途:同一材质里的多个参数共同控制消散,路径定位比只记数字重要。

未展示/边界:边界色中间关键帧可读值沿用原参数证据;末帧98由刻度估读,不冒充精确键时间。

v03 46:00 在曲线编辑器检查颜色与侵蚀控制原片证据
v03 46:00附近原画面,点击查看原分辨率。
修正Cellular边界颜色1的最终可见中间关键帧
  1. 在曲线编辑器展开Luft→opacity贴图9(合成)→贴图2→边界颜色1。
  2. 老师曾试过41帧89.760,也回到约48帧189.720;这些是过程值。
  3. 48:30到48:44最后离开该轨道前,选中键的时间为50,值184.930;复刻中间关键帧采用此值。
  4. 48:48转到贴图3 Color1轨道,之后核对画面未再显示边界颜色1改值。

本轮补查 · 原片证据

用途:避免把尝试曲线的中间状态当成最终侵蚀节奏。

trackLuft / opacity Map9 Composite / Map2 / 边界颜色1
last_visible_middle_key{"frame": 50, "value": 184.93}
start_visible_value255
end_visible_value0
end_frame_estimate98
replaces_intermediate_samples[{"frame": 48, "value": 189.72}, {"frame": 41, "value": 89.76}]

未展示/边界:右端黑色关键帧约98帧是图上位置估计,未见点选后的时间数值;切线数值未显示。;这条曲线不能由三个键唯一决定;重建切线仍须标注近似。

v03 48:30 修正Cellular边界颜色1的最终可见中间关键帧原片证据
v03 48:30附近原画面,点击查看原分辨率。
用常量颜色做整体淡出
  1. 选择Opacity分支Color Correction的Color 1轨道。
  2. 将颜色从白逐渐变黑,曲线保持直线。
  3. 白色保留现有遮罩,黑色使整个效果透明。

用途:整体淡出补上细胞侵蚀后残留的可见碎片。

curve白/1到黑/0的直线

未展示/边界:末端关键点在100刻度附近但非本帧直接数值确认;工程使用100帧为补齐。

v03 49:40 用常量颜色做整体淡出原片证据
v03 49:40附近原画面,点击查看原分辨率。
设置动画渲染范围与尺寸
  1. 打开渲染设置,渲染器选择Arnold。
  2. 查看要渲染的视图,保持透视视口。
  3. 时间输出选范围0到100,每N帧设3。
  4. 输出640×480,图像纵横比1.333,像素纵横比1.0。

用途:先以较低分辨率和隔帧输出验证整段动画,控制等待时间。

rendererArnold
view四元菜单4—透视
range[0, 100]
every_nth_frame3
width640
height480
image_aspect1.333
pixel_aspect1.0
aperture_width_mm36

未展示/边界:光圈宽度36 mm不是实体相机焦距,不能据此写成36 mm镜头。

v03 50:30 设置动画渲染范围与尺寸原片证据
v03 50:30附近原画面,点击查看原分辨率。
输出每3帧与整段动画的区别
  1. 渲染范围选择0至100,每N帧填3。
  2. 输出大小640×480,像素纵横比1.0。
  3. 该设置实际取0、3、6……99,共34张;不会自动把第100帧也纳入。
  4. 需要流畅复习版时可另存每帧输出,但明确这是补充导出设置。

本轮补查 · 原片证据

用途:理解老师为快速试片跳帧,而不是遗漏动画关键帧。

range[0, 100]
every_nth_frame3
rendered_frame_count34
last_sampled_frame99
width640
height480
image_aspect1.333
pixel_aspect1.0
aperture_width_mm36

未展示/边界:36mm是光圈宽度,不是相机焦距;视频没有给出可复制的相机位置与焦距。

v03 50:30 输出每3帧与整段动画的区别原片证据
v03 50:30附近原画面,点击查看原分辨率。
指定输出文件
  1. 在渲染输出中选择保存位置和文件名。
  2. 老师此处输入Test3并选择AVI输出。
  3. 确认格式选项后启动渲染。

用途:让动画真正写入文件,而不只停留在RenderView。

visible_output_nameTest3
subsequent_render_titleTest3.avi

未展示/边界:编码器参数未完整确认。补习实践可改PNG序列再编码MP4,这属于推荐替代流程。

v03 51:00 指定输出文件原片证据
v03 51:00附近原画面,点击查看原分辨率。
补齐AVI文件压缩设置
  1. 在渲染输出文件对话框保存AVI。
  2. AVI文件压缩设置的压缩器选择“未压缩”,点击确定。
  3. 画面中质量和主帧比率灰显,不能把这些灰值当作有意义的编码设置。

本轮补查 · 原片证据

用途:复刻老师输出方式;未压缩会产生较大视频文件。

containerAVI
compressor未压缩
quality_activefalse
keyframe_rate_activefalse

未展示/边界:录像没有在此窗口显示AVI播放帧率,不能把屏幕录制视频的30fps当作场景时间配置。

v03 51:08 补齐AVI文件压缩设置原片证据
v03 51:08附近原画面,点击查看原分辨率。
确认渲染正在逐帧推进
  1. 检查进度对话框的帧编号与总数。
  2. RenderView确认/viewport_camera及CPU标识。
  3. 结束后检查输出文件首、中、尾画面,避免只看单帧。

用途:验证输出视角、范围与设备确实符合设置。

render_deviceCPU
render_camera/viewport_camera
render_size[640, 480]
progress_total_frames34
sample_frame_number21
sample_progress8/34
v03 51:30 确认渲染正在逐帧推进原片证据
v03 51:30附近原画面,点击查看原分辨率。

查看本课shader参数及载入原视频逐帧 →

V04 · 原片证据

从已有舞台建立竖直火焰平面

开场载入已有场景:Loft001圆角地面/背景、ArnoldLight001及Target已经存在。本片未展示背景建模过程。

继承主灯目标距离
  1. 未选中Target查看其世界坐标,仅距离不能唯一决定朝向;不得根据透视像素虚构target位置。

本轮补查 · observed_at_time

用途:补齐或纠正前次视频复核记录,按截图时点区分实验与最终状态。

lightArnoldLight001
position_cm[707.468, -1299.118, 292.297]
Targetedtrue
TargetDistance_cm1193.839
v04 00:05 继承主灯目标距离原片证据
v04 00:05附近原画面,点击查看原分辨率。
先认清继承的舞台与灯
  1. 打开场景后检查对象列表中的Loft001、ArnoldLight001与其Target。
  2. 选中ArnoldLight001,在修改面板检查Quad参数。
  3. 把右下透视视口作为构图和后续预览的视口。

用途:背景承接火焰和灯光;先确认有舞台可渲染。

对象ArnoldLight001
形状Quad
Quad X100
Quad Y100
Spread1
Resolution500
Roundness0
Soft Edge1
Intensity500
Exposure6
实际强度32000
Normalize Energyfalse
位置cm[707.468, -1299.118, 292.297]

未展示/边界:继承背景的尺寸、建模命令和材质完整值未展示;灯的位置为此时值。

v04 00:10 先认清继承的舞台与灯原片证据
v04 00:10附近原画面,点击查看原分辨率。
先试渲染空舞台
  1. 激活透视视口并打开Arnold RenderView。
  2. 检查画面中的白色地面和弧形背景是否可见。

用途:在加效果前排除视口或灯光导致的空画面。

未展示/边界:没有展示独立相机创建或镜头焦距。

v04 00:25 先试渲染空舞台原片证据
v04 00:25附近原画面,点击查看原分辨率。
在前视图创建Plane
  1. 切换并激活前视图。
  2. 创建面板→几何体→标准基本体→Plane。
  3. 拖出正对前视图的竖直矩形。

用途:火焰采用二维卡片,不是体积烟火;在前视图画可让卡片竖起来。

v04 00:40 在前视图创建Plane原片证据
v04 00:40附近原画面,点击查看原分辨率。
火焰平面方向与背景来源
  1. 尺寸/变换栏在创建或鼠标选择状态时可能是鼠标坐标,不能把灰色坐标当作对象变换。背景线框能看出地面和多段圆角围挡,但不能反推出精确尺寸。

本轮补查 · observed_at_time

用途:补齐或纠正前次视频复核记录,按截图时点区分实验与最终状态。

plane前视图可见完整矩形,顶/左视图为薄线;世界XZ方向竖直卡片
Loft001场景载入时已存在,未见修改器参数
v04 01:00 火焰平面方向与背景来源原片证据
v04 01:00附近原画面,点击查看原分辨率。
把火焰卡片设成一片大面
  1. 在修改面板把Length设350、Width设500。
  2. Length Segs和Width Segs都设1。
  3. 保留Generate Mapping Coordinates,关闭Real-World Map Size。

用途:宽500、高350的卡片提供贴图范围;无需增加网格细分。

Length cm350
Width cm500
Length Segs1
Width Segs1
Faces2

未展示/边界:70秒Width正在输入;500的完成值以780秒画面为证。

v04 01:10 把火焰卡片设成一片大面原片证据
v04 01:10附近原画面,点击查看原分辨率。
将Fire材质指定给Plane001
  1. 保持Plane001被选中,打开Slate材质编辑器。
  2. 建立Physical Material并指定给平面,随后命名Fire。
  3. 检查视口卡片和材质球反馈。

用途:只有把材质赋给模型,节点变化才会进入场景渲染。

视频实际材质类型Physical Material
对象Plane001
材质名Fire

未展示/边界:不能把本片材质类型写成Arnold Standard Surface;如制作Arnold适配版须单独标注。

v04 01:50 将Fire材质指定给Plane001原片证据
v04 01:50附近原画面,点击查看原分辨率。
先制作黑白火焰形状
  1. 在Slate中建立Cellular贴图,调整其坐标与分形形态。
  2. 先看黑白形状,再继续接Gradient Ramp和Composite。

用途:先解决轮廓与流动,避免颜色掩盖遮罩问题。

未展示/边界:逐值节点参数沿用fire_notes及fire_deep_notes证据,不能把每个实验值当最终值。

v04 03:10 先制作黑白火焰形状原片证据
v04 03:10附近原画面,点击查看原分辨率。
渲染检查卡片方向和高度渐变
  1. 在卡片上预览高度渐变。
  2. 观察渐变是否沿竖直方向、卡片是否被透视视口完整看到。
  3. 继续在同一个RenderView里检查混合后的火焰遮罩。

用途:分离检查UV方向、模型尺寸和shader形状。

Length cm350
Width cm500
段数[1, 1]
渲染尺寸[640, 480]
设备CPU
相机/viewport_camera
v04 13:00 渲染检查卡片方向和高度渐变原片证据
v04 13:00附近原画面,点击查看原分辨率。
Cellular初始编辑状态
  1. 这是编辑起点截图,此时在第100帧;不等于已经证明第0帧关键帧值。

本轮补查 · observed_at_time

用途:补齐或纠正前次视频复核记录,按截图时点区分实验与最终状态。

nodeCellular #1
frame100
Offset[0, 0, 0]
Tiling[2, 0.5, 1]
Angle[0, 0, 0]
coordinatesObject XYZ
AutoKeytrue
v04 16:40 Cellular初始编辑状态原片证据
v04 16:40附近原画面,点击查看原分辨率。
Cellular Offset Z50是中间试验
  1. 后续同一节点继续改Z为100,不能将50列为最终末端值。

本轮补查 · intermediate

用途:补齐或纠正前次视频复核记录,按截图时点区分实验与最终状态。

nodeCellular #1
frame100
Offset[0, -150, 50]
AutoKeytrue
v04 18:20 Cellular Offset Z50是中间试验原片证据
v04 18:20附近原画面,点击查看原分辨率。
用贴图坐标做火焰运动
  1. 开启Auto Key,切到动画末端。
  2. 给Cellular坐标Offset设置变化,检查起点与末端。
  3. 回放或拖时间条观察图案流动;设置完成关闭Auto Key。

后续核对:这是中间试验值;19:11同一100帧的Z Offset已改为100,复刻后段使用100。

用途:移动噪声采样位置使火焰流动,而非移动整张卡片。

终点帧100
Cellular终点Offset[0, -150, 50]

未展示/边界:起点和完整控制器插值需另核对;不能仅凭末端值推定插值。

v04 19:10 用贴图坐标做火焰运动原片证据
v04 19:10附近原画面,点击查看原分辨率。
同一Cellular在第100帧改Z为100
  1. 1150秒输入中,1151秒已完整输入100;1153秒frame100仍显示相同值且AutoKey关闭。后续拖时间条时字段未持续刷新,不能根据静态字段推导全部关键帧或插值。

本轮补查 · observed_key_edit

用途:补齐或纠正前次视频复核记录,按截图时点区分实验与最终状态。

nodeCellular #1
frame100
Offset[0, -150, 100]
Tiling[2, 0.5, 1]
Angle[0, 0, 0]
AutoKeytrue
v04 19:11 同一Cellular在第100帧改Z为100原片证据
v04 19:11附近原画面,点击查看原分辨率。

查看同一操作的补充截图

查看同一操作的补充截图

查看本课shader参数及载入原视频逐帧 →

V05 · 原片证据

在相同舞台上完成火焰形状与颜色

继承v04的Plane001、Fire材质及白色背景舞台;未见新建相机或重新建立背景。

接续已有火焰场景
  1. 保留已赋给Plane001的Fire材质。
  2. 先检查RenderView中的黑白火焰卡片,再打开Slate继续节点。

用途:确认本片是接续制作,不是从空场景重新创建。

v05 00:00 接续已有火焰场景原片证据
v05 00:00附近原画面,点击查看原分辨率。
细化黑白遮罩
  1. 检查已有Cellular和高度渐变组合。
  2. 通过Gradient Ramp压缩灰度范围,观察火苗分叉。
  3. 暂时以黑白输出比较,不急着添加色彩。

用途:将噪声转成可控制的火焰明暗轮廓。

v05 07:30 细化黑白遮罩原片证据
v05 07:30附近原画面,点击查看原分辨率。
增加Smoke变化层
  1. 建立并预览Smoke贴图。
  2. 通过重映射控制烟纹分布,再加入已有合成链。
  3. 每次改一个节点后检查卡片上的渲染差异。

用途:给轮廓增加不同尺度的内部变化,避免只有整齐条纹。

v05 08:20 增加Smoke变化层原片证据
v05 08:20附近原画面,点击查看原分辨率。
合成轮廓与内部明暗
  1. 按节点关系连接Composite层。
  2. 区分控制外形的灰度链与最终着色链。
  3. 渲染检查白色舞台与火焰之间是否仍能看清边缘。

用途:多层灰度分工决定轮廓、细节和亮暗,而不是把所有贴图直接相加。

未展示/边界:Composite具体层模式参考已经核验的参数表。

v05 26:20 合成轮廓与内部明暗原片证据
v05 26:20附近原画面,点击查看原分辨率。
用颜色渐变完成火焰并检查动画
  1. 把最终灰度结果送入颜色渐变重映射。
  2. 使用黑、暗红、橙黄到亮部的色标。
  3. 返回透视视口预览;拖动时间线比较不同帧的形态。

用途:灰度负责形状,渐变负责温度感;不能只看静止一帧。

未展示/边界:本片未提供舞台完整尺寸或新增相机参数。

v05 30:00 用颜色渐变完成火焰并检查动画原片证据
v05 30:00附近原画面,点击查看原分辨率。

查看本课shader参数及载入原视频逐帧 →

V06 · 原片证据

火焰照明、投影纹理与网格灯实验

继承火焰卡片与Loft001舞台。本片包含多条试验路线;中间方案并非最终同时启用的灯光组合。

检查继承的火焰和背景
  1. 载入场景后先渲染火焰卡片。
  2. 观察火焰本体亮度与周围地面的照明差别。

用途:发光图案的外观与舞台被照亮的效果需要分别检查。

v06 00:50 检查继承的火焰和背景原片证据
v06 00:50附近原画面,点击查看原分辨率。
新增第二盏Arnold面光
  1. 创建ArnoldLight002,启用目标并朝背景/地面布置。
  2. 在前视图和透视视图检查灯与火焰的位置关系。

用途:以可控灯光补充火焰附近的环境照明。

对象ArnoldLight002
ShapeQuad
Target Distance cm304.183
Quad X cm485.6
Quad Y cm100
位置cm[-0.856, -39.12, 96.733]

未展示/边界:这是创建过程中的中间值,后续尺寸继续改变。

v06 01:20 新增第二盏Arnold面光原片证据
v06 01:20附近原画面,点击查看原分辨率。
把第二盏灯拉成长条并调暖
  1. 修改Quad尺寸,使它覆盖横向火焰区域。
  2. 调整灯的颜色为暖色并渲染比较。
  3. 用旋转工具调整照射方向。

用途:横向长灯使地面受光范围匹配宽火焰卡片。

Quad X cm528.6
Quad Y cm135.5
Spread1
Roundness0
Soft Edge1
Intensity1

未展示/边界:颜色RGB和此处Exposure未完整读到。

v06 04:10 把第二盏灯拉成长条并调暖原片证据
v06 04:10附近原画面,点击查看原分辨率。
调整火焰平面的对象渲染属性
  1. 右键Plane001打开Object Properties。
  2. 保持Renderable与Visible to Camera开启。
  3. 检查反射/折射可见性以及接收、投射阴影选项,避免卡片形成不需要的整块遮挡。

用途:对象可见性与材质透明度是不同控制层;卡片需要在镜头中存在,同时避免不合意的阴影。

Plane001位置cm[0, 0, 187.925]
几何局部尺寸cm[500, 350, 0]
顶点4
面2
材质Fire
Renderabletrue
Visible to Cameratrue
Visible to Reflection/Refractionfalse
Receive Shadowsfalse
Cast Shadowsfalse

未展示/边界:阴影复选框记录为400秒画面状态,不表示后续永不改动。

v06 06:40 调整火焰平面的对象渲染属性原片证据
v06 06:40附近原画面,点击查看原分辨率。
比较火焰附近的地面受光
  1. 在RenderView比较地面暖光、背景反射和火焰轮廓。
  2. 调整灯的位置与朝向后再次检查。

用途:判断补灯是否像火焰影响了周围,而不是只让卡片自身变亮。

v06 08:20 比较火焰附近的地面受光原片证据
v06 08:20附近原画面,点击查看原分辨率。
试验目标光度学灯
  1. 建立TPhotometricLight001并启用目标。
  2. 选择Uniform Spherical分布,使用cd强度单位。
  3. 检查阴影和排除对话框,但不要假设未读出的排除列表。

用途:这是另一种照明方案的试验,不应与Arnold灯参数混为一套。

对象TPhotometricLight001
Target Distance cm268.509
分布Uniform Spherical
颜色预设D65
强度cd1500
阴影Ray Traced

未展示/边界:排除列表的最终内容未确认。

v06 10:00 试验目标光度学灯原片证据
v06 10:00附近原画面,点击查看原分辨率。
把光度学灯发光形状改为圆柱
  1. 在发光形状选Cylinder。
  2. 设置长度与半径,检查投影纹理在背景上的分布。

用途:柱形面积光提供长条发光区域;这是灯的形状,不是后来创建的Cylinder001几何体。

ShapeCylinder
Length cm520
Radius cm13
Intensity cd1500
Shadow Samples32
Raytrace Bias0.2
位置cm[1.057, -11.436, 106.699]

未展示/边界:最终是否保留该灯须与后续场景对象列表核对;不能直接全部叠加。

v06 16:40 把光度学灯发光形状改为圆柱原片证据
v06 16:40附近原画面,点击查看原分辨率。
在灯上试验程序投影纹理
  1. 为投影纹理建立Noise节点。
  2. 检查Explicit Map Channel与坐标范围,观察白色背景上的斑纹。
  3. 将条纹/噪声输出与灯光着色分开理解。

用途:通过纹理调制受光分布,而非只改变一个常量颜色。

Noise #13 Size0.2
Low0.4
High0.6
坐标Explicit Map Channel 1

未展示/边界:此阶段是在比较纹理路线,不能把所有节点都视为最终连接。

v06 20:00 在灯上试验程序投影纹理原片证据
v06 20:00附近原画面,点击查看原分辨率。
核对Arnold渲染入口
  1. 打开Render Setup检查Renderer为Arnold。
  2. 把View to Render设置为右下透视视口。
  3. 渲染时确认RenderView对应当前视口。

用途:排除渲染错误视口造成的空画面,并识别视频实际使用的渲染流程。

RendererArnold
View to Render四元菜单4–透视
Ray Depth Total10
Transparency Depth10
Low Light Threshold0.001
Texture Cache MB4096
Auto Convert to TXtrue

未展示/边界:这些是画面可见状态,不代表都是老师在本片新改的值。

v06 25:00 核对Arnold渲染入口原片证据
v06 25:00附近原画面,点击查看原分辨率。
创建作为网格灯载体的圆柱
  1. 创建Cylinder001几何体。
  2. 设置半径、高度与分段,并将其横向摆放。
  3. 在前视图检查圆柱与火焰卡片的关系。

用途:提供实际网格,后续供Arnold Mesh Light拾取。

Radius cm28.399
Height cm291.01
Height Segments1
Cap Segments1
Sides12
Smoothtrue
Generate Mapping Coordstrue
位置cm[144.665, -239.677, 266.114]

未展示/边界:横向朝向可见,但完整旋转欧拉角未读取;尺寸是此时建模状态。

v06 30:00 创建作为网格灯载体的圆柱原片证据
v06 30:00附近原画面,点击查看原分辨率。
Noise15真实类型与完整参数
  1. 这里不是legacy Noise。1870时灯ColorTexture仍显示Checker12,随后才切换Noise15;1910秒Noise15面板参数相同。黑白RGB未打开颜色窗口,若填0/1,应标默认黑白推定。

本轮补查 · observed_at_time

用途:补齐或纠正前次视频复核记录,按截图时点区分实验与最终状态。

nodeArnold Noise #15
Octaves1
Lacunarity1.92
Distortion0
Amplitude1
Coordinate Spaceobject
Pref NamePref
Scale[1, 1, 1]
Offset[0, 0, 0]
P[0, 0, 0]
Time0
Modescalar
Color1_swatch黑
Color2_swatch白
Maps可见Lacunarity/Distortion/Amplitude/Scale/Offset均无贴图
v06 31:10 Noise15真实类型与完整参数原片证据
v06 31:10附近原画面,点击查看原分辨率。

查看同一操作的补充截图

转换圆柱并检查对象可渲染性
  1. 将Cylinder001转为Editable Poly。
  2. 打开Object Properties,查看Renderable开关。
  3. 保留网格以供灯光引用。

用途:区分网格载体与镜头中显示的实体圆柱。

类型Editable Poly
Renderablefalse
Vertices24
Faces14

未展示/边界:这是1900秒状态;后续最终对象开关未完整复核。

v06 31:40 转换圆柱并检查对象可渲染性原片证据
v06 31:40附近原画面,点击查看原分辨率。
圆柱UV编辑实际展示
  1. 已打开UV编辑器进行面/元素选择;修正此前未见UV结果的说法。顶点UV精确值没有逐项显示。

本轮补查 · intermediate

用途:补齐或纠正前次视频复核记录,按截图时点区分实验与最终状态。

objectCylinder001
modifierUnwrap UVW
channel1
layout矩形侧壁条带,两个端盖在上、下方
v06 33:50 圆柱UV编辑实际展示原片证据
v06 33:50附近原画面,点击查看原分辨率。
圆柱UV重新排列后的布局
  1. 上方圆盖不再是早期扁椭圆。只可照布局近似恢复;没有全部顶点坐标,不能宣称逐点UV一致。画面按钮设置是当时可见值,不保证每个按钮都曾被点击。

本轮补查 · observed_late_layout

用途:补齐或纠正前次视频复核记录,按截图时点区分实验与最终状态。

objectCylinder001
channel1
layout两圆形端盖并排放在矩形侧壁上方
Pack Rescaletrue
Pack Rotatefalse
Pack Padding0.001
v06 34:40 圆柱UV重新排列后的布局原片证据
v06 34:40附近原画面,点击查看原分辨率。

查看同一操作的补充截图

查看同一操作的补充截图

给圆柱添加Unwrap UVW
  1. 在Editable Poly上添加Unwrap UVW。
  2. 使用Map Channel 1,进入面级别观察或调整映射。
  3. 另外建立Arnold Surface Matte节点做材质试验。

后续核对:本轮找到UV编辑器后续调整画面;布局有证据,顶点精确坐标仍未知,见本课新增步骤。

用途:网格的UV决定纹理如何包裹;Matte节点的出现不等于已完成灯光连线。

modifierUnwrap UVW
Map Channel1
实验材质Arnold Surface Matte / Material #46

未展示/边界:完整展开岛和最终UV坐标未展示为可复制数值;Matte实际赋予对象未完全确认。

v06 35:00 给圆柱添加Unwrap UVW原片证据
v06 35:00附近原画面,点击查看原分辨率。
检查网格灯颜色与强度
  1. 在ArnoldLight002的Color处指定Texture。
  2. 查看Noise #15,设置Intensity和Exposure。
  3. 对照RenderView检查受光图案。

用途:纹理调制颜色/亮度;曝光按倍数放大基础强度。

Color TextureNoise #15
Intensity1
Exposure2
实际强度4
v06 36:40 检查网格灯颜色与强度原片证据
v06 36:40附近原画面,点击查看原分辨率。
把Arnold灯明确设为Mesh并引用圆柱
  1. 选择ArnoldLight002。
  2. 把Shape Type设为Mesh。
  3. 使用Mesh拾取项指定Cylinder001。
  4. 复查Color Texture、Intensity及Exposure。

用途:把先前制作的圆柱几何体变成灯光发射形状,这是本片核心路线之一。

Shape TypeMesh
MeshCylinder001
Color TextureNoise #15
Intensity1
Exposure2
实际强度4
Normalize Energyfalse

未展示/边界:Noise #15的完整参数面板未读到,不能用Noise #13或Arnold Noise #14参数替代。

v06 43:20 把Arnold灯明确设为Mesh并引用圆柱原片证据
v06 43:20附近原画面,点击查看原分辨率。
识别参数连线试验尚未完成
  1. 打开Track View和Parameter Wiring查看灯光、材质与自定义参数。
  2. 根据对话框检查是否填写表达式、是否真的完成连接。
  3. 复习时将这段列为连线探索,不把它写成已完成效果。

用途:避免照着空表达式误认为两个参数已建立关联。

Parameter Wiring表达式未填写,Connect按钮灰色

未展示/边界:末段没有看到成功连接后的可复现最终控制器;需补充教程演示才能确认这条路线。

v06 50:00 识别参数连线试验尚未完成原片证据
v06 50:00附近原画面,点击查看原分辨率。
删除前最后确认Mesh灯状态
  1. 灯辅助对象位置与Mesh源几何位置不同;实际发光形状引用Cylinder001。此时Noise15仍是灯颜色贴图,Matte color接Checker17是另一条材质链,不能替换混淆。

本轮补查 · observed_at_time

用途:补齐或纠正前次视频复核记录,按截图时点区分实验与最终状态。

lightArnoldLight002
ShapeMesh
MeshCylinder001
ColorModeTexture
ColorTextureNoise #15
Intensity1
Exposure2
ResultIntensity4
NormalizeEnergyfalse
position_cm[-281.245, -250.917, 0]
MatteLightMatte
Matte_color_mapChecker #17
Matte_opacity_swatch黑
v06 51:41 删除前最后确认Mesh灯状态原片证据
v06 51:41附近原画面,点击查看原分辨率。
Mesh灯实验结束时被移除
  1. 3102仍选中ArnoldLight002且列表存在;3103消失,辅助灯图标也消失。可判断移除发生于3102–3103秒之间。应把Mesh灯工程标注为实验阶段重建,而非最终保存状态。

本轮补查 · observed_end_state

用途:补齐或纠正前次视频复核记录,按截图时点区分实验与最终状态。

objects_present["ArnoldLight001", "ArnoldLight001.Target", "Cylinder001", "Loft001", "Plane001"]
ArnoldLight002_in_listfalse
v06 51:43 Mesh灯实验结束时被移除原片证据
v06 51:43附近原画面,点击查看原分辨率。

查看同一操作的补充截图

查看同一操作的补充截图

查看本课shader参数及载入原视频逐帧 →

V07 · 原片证据

从Quad试灯到Spot与Arnold Gobo投影

开场载入已有Loft001背景与Plane001。火焰卡片未作为本片最终画面主体;重点是地面与墙面的程序投影。

在已有舞台中创建Arnold灯
  1. 打开创建面板→灯光→Arnold。
  2. 建立ArnoldLight001并以目标方式布置。
  3. 先用Quad形状进行基本照明检查。

用途:在切换投影形状前确认灯与舞台的空间关系。

ShapeQuad
Quad X cm100
Quad Y cm100
Spread1
Resolution500
Targetedtrue
Target Distance cm169.757

未展示/边界:创建过程中的目标距离随后变化。

v07 00:40 在已有舞台中创建Arnold灯原片证据
v07 00:40附近原画面,点击查看原分辨率。
目标灯早期旋转
  1. 此时使用旋转工具,坐标栏显示0/0/0;之后灯会取消Targeted,因此不能把早期target距离当最终。

本轮补查 · intermediate

用途:补齐或纠正前次视频复核记录,按截图时点区分实验与最终状态。

lightArnoldLight001
rotation_deg[0, 0, 0]
target早期存在ArnoldLight001.Target
v07 00:50 目标灯早期旋转原片证据
v07 00:50附近原画面,点击查看原分辨率。
将灯移到舞台上方并试渲染
  1. 用移动工具将灯放到舞台上方。
  2. 确认灯朝地面,检查透视视图中受光范围。
  3. 渲染白色光池作为基线。

用途:位置与朝向决定投影落点,不能只复制贴图参数。

位置cm[0, 0, 168.687]
Intensity200
Quad尺寸cm[100, 100]

未展示/边界:这里是试灯位置;最终位置在870秒不同。

v07 02:00 将灯移到舞台上方并试渲染原片证据
v07 02:00附近原画面,点击查看原分辨率。
把Quad改为Spot
  1. 在形状下拉菜单选择Spot。
  2. 观察视口出现锥形范围并检查朝向。

用途:Spot为Gobo图案提供受控的投影方向与范围。

ShapeSpot
v07 03:30 把Quad改为Spot原片证据
v07 03:30附近原画面,点击查看原分辨率。
添加Arnold Gobo Filter
  1. 选中ArnoldLight001。
  2. 从修改器列表添加Arnold Gobo Filter。
  3. 展开过滤器参数,检查Slide Map插槽。

用途:Gobo把二维纹理映射到灯光投影中;它是灯光过滤器而不是给地面换材质。

ModifierArnold Gobo Filter
v07 04:30 添加Arnold Gobo Filter原片证据
v07 04:30附近原画面,点击查看原分辨率。
准备投影片纹理链
  1. 在Slate建立Noise与Color Correction实验节点。
  2. 通过实例或指定贴图将图案送入Gobo的Slide Map。
  3. 渲染检查贴图是否真正作用在地面和背景。

用途:先验证连接,再调颜色和尺度;未指定插槽时节点独立存在不会产生投影。

未展示/边界:阶段性节点连接与最终Slide Map需按已核验shader表区分。

v07 05:00 准备投影片纹理链原片证据
v07 05:00附近原画面,点击查看原分辨率。
将噪声重映射为暖色投影
  1. 检查Noise与Color Correction的输出。
  2. 调整纹理尺度和色彩,再渲染检查墙地的变化。

用途:通过程序纹理制造非均匀暖色照明,而不是均匀染色。

v07 13:00 将噪声重映射为暖色投影原片证据
v07 13:00附近原画面,点击查看原分辨率。
核对最终Spot空间参数
  1. 返回灯光参数面板。
  2. 检查此时Targeted已关闭、灯位已降低。
  3. 按Spot半径、锥角和边缘参数核对覆盖范围。

用途:目标状态、灯位与锥角都会改变投影,即使材质完全相同也会产生不同画面。

位置cm[0, 0, 125.536]
Targetedfalse
Spot Radius cm100
Cone Angle degrees180
Lens Radius0
Penumbra Angle5
Aspect1
Roundness1
Noise #25 Size120
Noise #25 类型Regular
Noise #25坐标Object XYZ
Noise #25阈值[0, 1]
Noise #25 Phase0

未展示/边界:完整灯旋转值未读到;灰色Target Distance 50不是启用目标后的最终距离。

v07 14:30 核对最终Spot空间参数原片证据
v07 14:30附近原画面,点击查看原分辨率。
复制前最后确认灯位
  1. 880–920秒沿原枢轴Shift旋转实例复制;没有移动操作,第二盏位置相同是依据操作链的推断,未单独以移动工具读新灯坐标。强度200为120秒已读值;最终复制阶段没有重新显示Exposure/Intensity面板,不能声称末帧同时读到200/6。

本轮补查 · observed_position_with_clone_inference

用途:补齐或纠正前次视频复核记录,按截图时点区分实验与最终状态。

lightArnoldLight001
position_cm[0, 0, 125.536]
Targetedfalse
v07 14:30 复制前最后确认灯位原片证据
v07 14:30附近原画面,点击查看原分辨率。

查看同一操作的补充截图

查看同一操作的补充截图

原Spot灯与Gobo晚期状态
  1. 旋转工具激活,底栏旋转0/0/0;此时原灯保持向下。GPU警告是视频所用插件版本证据。

本轮补查 · observed_at_time

用途:补齐或纠正前次视频复核记录,按截图时点区分实验与最终状态。

lightArnoldLight001
rotation_deg[0, 0, 0]
filterArnold Gobo Filter
FilterModereplace
Density0
SlideMapColor Correction #26
Offset[0, 0]
ScaleST[1, 1]
WrapST["periodic", "periodic"]
GPU_warningNo GPU Support.
v07 14:40 原Spot灯与Gobo晚期状态原片证据
v07 14:40附近原画面,点击查看原分辨率。
Shift旋转复制一盏反向实例灯
  1. 克隆对话框明确选择Instance,下一截图920秒已关闭对话框且ArnoldLight002存在。这是此前遗漏的最终两灯结构。

本轮补查 · observed_action

用途:补齐或纠正前次视频复核记录,按截图时点区分实验与最终状态。

clone_dialogClone Options
clone_typeInstance
count1
new_nameArnoldLight002
rotation_delta_deg[0, 180, 0]
bottom_rotation_deg[0, -180, 0]
v07 15:10 Shift旋转复制一盏反向实例灯原片证据
v07 15:10附近原画面,点击查看原分辨率。

查看同一操作的补充截图

最终两盏Gobo灯向相反方向照明
  1. 新灯在同一位置通过旋转实例复制,原灯朝下,新灯朝上;改变透视视口角度后930–950秒完成渲染。最终画面不能仅用一盏向下Spot复现。

本轮补查 · observed_final_setup

用途:补齐或纠正前次视频复核记录,按截图时点区分实验与最终状态。

selectedArnoldLight002
rotation_deg[0, -180, 0]
filterArnold Gobo Filter
SlideMapColor Correction #26
FilterModereplace
Density0
Offset[0, 0]
ScaleST[1, 1]
WrapST["periodic", "periodic"]
v07 15:20 最终两盏Gobo灯向相反方向照明原片证据
v07 15:20附近原画面,点击查看原分辨率。

查看同一操作的补充截图

验证最终画面和实际渲染设备
  1. 以当前透视视口渲染。
  2. 检查地面和弧形墙都出现橙色不均匀投影。
  3. 记录RenderView底部设备与采样信息。

用途:完成验收应包括舞台、受光位置与渲染视图,不只有节点截图。

分辨率[640, 480]
设备CPU
相机/viewport_camera
Samples[3, 2, 2, 2, 2, 2]
显示耗时00:00:14

未展示/边界:视频使用CPU;不能声称GPU已启用,也不能推定用户机器GPU兼容性。

v07 15:45 验证最终画面和实际渲染设备原片证据
v07 15:45附近原画面,点击查看原分辨率。

查看本课shader参数及载入原视频逐帧 →

V08 · 原片证据

衰减材质与已有摄影棚的观察方向

MetalTexture.max已包含三只可见球、棚景、相机、灯和Point001;本段没有从空场景创建这些对象。

让距离衰减参照Point001
  1. 打开Slate材质编辑器,找到Falloff #50。
  2. 距离混合以Point001作为对象,接物理材质的发射颜色。
  3. 保留棚景和球的位置,观察参考点距离如何改变亮区。

用途:理解Point是控制材质分布的辅助对象,不是需要渲染的发光模型。

Falloff50.near_cm10
Falloff50.far_cm200
objectPoint001

未展示/边界:此处物理材质不是Arnold Standard Surface;不能把节点类型混写。

v08 00:20 让距离衰减参照Point001原片证据
v08 00:20附近原画面,点击查看原分辨率。
先认清继承的场景与辅助点
  1. 打开四视图,以顶视图看三球左右排列,以左视图看棚景包围关系。
  2. 在场景资源管理器选择Point001;保持原球体、摄影机、测距辅助对象与灯。
  3. 球的预览灰色不等于最终材质;最终效果看Arnold RenderView。

用途:把材质依赖的参考对象与实际载体对应起来。

projectMetalTexture.max
Point001.position_cm[459.874, -17.81, 185.942]
Point001.display_size_cm150
Point001.display_crosstrue
scene_objects["Box001", "Box002", "GeoSphere001", "GeoSphere002", "GeoSphere003", "GeoSphere004", "Line001", "Line002", "Loft001", "PhotometricLight001", "PhysCamera001", "Point001", "Tape001", "Tape002", "TPhotometricLight001", "TPhotometricLight002"]

未展示/边界:球半径和每个球的最终坐标、棚尺寸、灯强度未在该画面展开;不能由线框反算成老师精确值。

v08 02:55 先认清继承的场景与辅助点原片证据
v08 02:55附近原画面,点击查看原分辨率。
移动相机目标,比较取景与角度衰减
  1. 选择PhysCamera001.Target,在顶/左视图检查目标点。
  2. 使用PhysCamera001视图渲染;先看三球是否完整入镜,再检查亮区。

用途:同一个材质的观察方向变化会改变Falloff表现,不能把画面改变全部归因于颜色。

PhysCamera001.Target.position_cm[330.166, -35.596, 306.105]
render_resolution[640, 480]
render_deviceCPU
timeline_frame0

未展示/边界:此时摄影机自身坐标未一起显示;不与后续v09镜头强行配对。

v08 03:30 移动相机目标,比较取景与角度衰减原片证据
v08 03:30附近原画面,点击查看原分辨率。
前段目标移动后需按各时点分开
  1. 保留full_later_scene中的210时点值,不把它并入v09最后相机。

本轮补查 · 操作序列观察

用途:补齐或修正上一轮证据,支持老师时点对照工程

同一摄像机目标在160–240区间被多次拖动;渲染构图随之更新。

未展示/边界:本次区间未发现相机与Target同屏XYZ表;不能完整建立v08最终相机配对。

v08 04:00 前段目标移动后需按各时点分开原片证据
v08 04:00附近原画面,点击查看原分辨率。

查看同一操作的补充截图

查看同一操作的补充截图

查看同一操作的补充截图

查看同一操作的补充截图

查看同一操作的补充截图

以真实渲染检查透明边缘
  1. Falloff #51连接裁切(不透明度)贴图槽。
  2. 设置垂直/平行、查看方向(摄影机Z轴),再修改混合曲线。
  3. 与发射颜色的Falloff #50分别比较:一个控制亮区,一个控制可见区域。

用途:分开理解发光与消隐,避免只靠视口判断。

Falloff51.type垂直/平行
Falloff51.direction查看方向(摄影机Z轴)
front_weight100
back_weight100

未展示/边界:曲线控制柄没有坐标框,不提供伪精确坐标。

v08 07:00 以真实渲染检查透明边缘原片证据
v08 07:00附近原画面,点击查看原分辨率。

查看本课shader参数及载入原视频逐帧 →

V09 · 原片证据

颜色纹理与摄影机取景实验

沿用MetalTexture.max棚景和三球,不是新的空场景;主要材质变化及末尾相机移动。

观察纹理尺度与世界坐标
  1. 在现有球体上继续调Cellular #63。
  2. 坐标来源下拉当前显示World XYZ;更改Size后对照整个球的色块尺寸。
  3. 保留每次调整时间,避免把早先100误记成最后70。

用途:纹理尺度与模型在世界中的尺寸共同决定斑块大小。

Cellular63.size70
Cellular63.coordsWorld XYZ
Cellular63.Z_tiling0.2
Cellular63.spread0.9
Cellular63.iterations2

未展示/边界:X/Y坐标字段部分被下拉菜单遮住,未在此帧确读。

v09 45:20 观察纹理尺度与世界坐标原片证据
v09 45:20附近原画面,点击查看原分辨率。
确认摄影机基础参数
  1. 选择PhysCamera001,打开修改面板。
  2. 检查目标模式、传感器和指定视野;从已有棚景拍三球。
  3. 保存这次取景作比较,不把它当作末尾镜头。

用途:区分镜头视野、摄影机距离和材质观察角的作用。

camera.position_cm[375.779, -699.973, 268.641]
target_distance_cm665.024
sensor_preset35mm全画幅
sensor_width_mm36
specify_fovtrue
fov_degrees45
display_focal_length_mm43.1
zoom1
f_number8
lens_breathing1
depth_of_fieldfalse
shutter_type帧
shutter_duration_f0.5
shutter_offset_f0
motion_blurfalse

未展示/边界:灯光强度、曝光控制完整设置没有在这里展开。

v09 46:40 确认摄影机基础参数原片证据
v09 46:40附近原画面,点击查看原分辨率。
调整摄影机目标点
  1. 选择PhysCamera001.Target,沿场景移动瞄准点。
  2. 检查渲染中前后球的遮挡:银球变大时,其他球可能被挤出或遮住。

用途:目标点控制朝向;只移动摄影机和只移动目标会得到不同画面。

target.position_cm[-47.887, 153.769, 306.417]
render_resolution[640, 480]
render_deviceCPU

未展示/边界:不能保证此目标坐标在最后一秒仍未变化;仅证明49:20时点。

v09 49:20 调整摄影机目标点原片证据
v09 49:20附近原画面,点击查看原分辨率。
最后一段移动前目标仍相同
  1. 保留目标,后段只改变摄影机机位;2960与3020目标值一致。

本轮补查 · 字段实读

用途:补齐或修正上一轮证据,支持老师时点对照工程

selectedPhysCamera001.Target
target_position_cm[-47.887, 153.769, 306.417]
viewport_labelPhysCamera001

未展示/边界:10秒步长抽查没有证明每个未采样瞬间都不改;结合后段距离校验。

v09 50:20 最后一段移动前目标仍相同原片证据
v09 50:20附近原画面,点击查看原分辨率。
后撤摄影机,比较主体占画面比例
  1. 选择摄影机自身,将其移到更远的左前方。
  2. 渲染检查三球的尺寸和棚景边界;此时背景边缘露黑。

用途:说明场景搭建范围也限制可用机位。

camera.position_cm[-1061.438, -844.992, 268.641]
target_distance_cm1423.45
fov45
display_focal_length_mm43.3
f_number8

未展示/边界:这里的镜头不是最后版本。

v09 50:40 后撤摄影机,比较主体占画面比例原片证据
v09 50:40附近原画面,点击查看原分辨率。
后段视口明确是物理摄影机
  1. 3077右下视口明确[PhysCamera001];3081紧接该构图渲染,RenderView /viewport_camera不能单独用来判定是透视视图。

本轮补查 · 界面标签实读

用途:补齐或修正上一轮证据,支持老师时点对照工程

viewport_labelPhysCamera001
target_distance_cm1145.75
FOV_degrees45
camera_sensor_width_mm36
f_number8

未展示/边界:3077鼠标拖拽时底栏显示鼠标坐标,不拿525.979等值冒充摄影机位置。

v09 51:17 后段视口明确是物理摄影机原片证据
v09 51:17附近原画面,点击查看原分辨率。

查看同一操作的补充截图

查看同一操作的补充截图

末段摄影机与目标可组合的证据
  1. 可将这对camera/target用于老师末段机位复现;标注目标来自3020且由后段采样操作与距离校验支持,而非同一帧双字段读取。摄影机朝向由target确定,不额外猜欧拉角。

本轮补查 · 跨时点连续操作推断,距离一致性复核

用途:补齐或修正上一轮证据,支持老师时点对照工程

camera_position_cm[-535.458, -882.38, 268.641]
target_from3020_cm[-47.887, 153.769, 306.417]
distance_calculated_cm1145.756194
distance_display_cm1145.75
FOV45
sensor_mm36
f_number8

未展示/边界:无直接最后帧Target字段;距离只约束球面,证据来自未见target变动和前后视口一致性,不能单凭距离数学唯一确定。

v09 51:20 末段摄影机与目标可组合的证据原片证据
v09 51:20附近原画面,点击查看原分辨率。

查看同一操作的补充截图

查看同一操作的补充截图

查看同一操作的补充截图

最后可见机位与画面检查
  1. 把摄影机移近,保持45度指定视野。
  2. 确认银球、暗球、彩球重新在画面左右展开。
  3. 渲染窗口显示Render Aborted,保留画面作预览证据,不当作完成的无噪点最终出图。

后续核对:本轮用连续操作与目标距离补齐末段Target配对,见50:20–51:20新增证据。

用途:最后可见机位更方便复现构图,但不是完整棚景精确重建证据。

camera.position_cm[-535.458, -882.38, 268.641]
target_distance_cm1145.75
sensor_width_mm36
fov_degrees45
display_focal_length_mm43.2
f_number8
zoom1
depth_of_fieldfalse

未展示/边界:最后机位的Target坐标没有同时显示;缺值只能标自选/推定。

v09 52:30 最后可见机位与画面检查原片证据
v09 52:30附近原画面,点击查看原分辨率。

查看本课shader参数及载入原视频逐帧 →

V10 · 原片证据

球体膨胀上升、动画曲线与预览输出

视频开头已打开Test2.max并播放Test2.avi。Ball、Room、PhysCamera001及其Target、ArnoldLight001及其Target已经存在,创建棚景和相机的过程未在本段从零展示。

先看已有动画预览
  1. 播放Test2.avi观察球面从低处出现、展开。
  2. 回到Max确认要编辑的是Ball,不要误以为这是从高空砸落的动画。

用途:先建立整体时序,再解释模型和材质如何共同产生能量外观。

preview_fileTest2.avi

未展示/边界:预览画面不能给出精确关键帧值。

v10 01:15 先看已有动画预览原片证据
v10 01:15附近原画面,点击查看原分辨率。
核对球体载体和棚景关系
  1. 选择Ball,检查Sphere参数。
  2. 四视图里Ball在Room内,摄影机从前方朝向Ball,灯在上方附近。
  3. 打开曲线编辑器,展开Ball > 变换 > 位置以及缩放。

用途:先做好载体和拍摄关系,再加材质;Sphere完整球体不等于最终可见完整球。

Sphere.radius_cm40
Sphere.segments64
smoothtrue
hemisphere0
generate_mapping_coordstrue
real_world_map_sizefalse
frame77
Ball.position_cm[0, 65.956, 13.63]

未展示/边界:Room尺寸、灯类型细项/强度、相机位置焦距没有在此截图展开;如补齐应明确为复现自选值。

v10 02:40 核对球体载体和棚景关系原片证据
v10 02:40附近原画面,点击查看原分辨率。
初始曲线:先展开,再抬升
  1. 在曲线编辑器框选位置和缩放轨道。
  2. 观察Z位置先贴近零,再上弯;缩放从前段开始增大。
  3. 保留相对时序:先扩张、后明显抬升。

用途:曲线斜率决定速度;向上弯表示后段变快。

initial_key_times_visual[0, 50, 100]
Y_position_cm_visible65.956

未展示/边界:这里时间来自图上位置,未逐个打开键属性;末端Z/scale准确值无法从曲线像素保证。

v10 04:00 初始曲线:先展开,再抬升原片证据
v10 04:00附近原画面,点击查看原分辨率。
输出第一轮小尺寸动画
  1. 用当前场景做动画渲染,输出Test2.avi。
  2. 查看渲染进度的当前帧和总数。
  3. 用低分辨率先检查节奏和显隐,再回去改曲线。

用途:预览渲染用于快速发现动画问题。

outputTest2.avi
resolution[320, 240]
deviceCPU
render_current_frame40
render_progress41/101

未展示/边界:0–100范围由当前帧40对应第41/101推得;截图不是完整Render Setup参数页。

v10 05:40 输出第一轮小尺寸动画原片证据
v10 05:40附近原画面,点击查看原分辨率。
Ball终段位置准确读数
  1. 将末端Z目标由图估37.8修正为38cm;在75之后保持该位置。

本轮补查 · 字段实读

用途:补齐或修正上一轮证据,支持老师时点对照工程

frame79
position_cm[0, 65.956, 38]

未展示/边界:79帧是评估值,不是本图打开的键属性;75键时间需结合650截图。

v10 09:30 Ball终段位置准确读数原片证据
v10 09:30附近原画面,点击查看原分辨率。

查看同一操作的补充截图

查看同一操作的补充截图

完整Ball缩放曲线范围
  1. 复现Ball先横向扩张、垂直展开,再40–75帧加速升至38;Scale用上述曲线图读值,标为近似而非老师键属性逐值抄录。

本轮补查 · 字段实读+曲线图读

用途:补齐或修正上一轮证据,支持老师时点对照工程

key_times_visible[15, 40, 75]
scale_percent_graph{"frame15": [50, 50, 0], "frame75": [150, 150, 120]}
position_Z_graph{"frame15": 0, "frame40": 0, "frame75": 38}
selected_key_time_field75
evaluated_frame76_position_cm[0, 65.956, 38]

未展示/边界:Scale未打开键属性;0可能是接近0的小值。Z早期-.01与0图读不能混作精确0。切线形状看图,不虚构柄坐标。

v10 10:20 完整Ball缩放曲线范围原片证据
v10 10:20附近原画面,点击查看原分辨率。

查看同一操作的补充截图

查看同一操作的补充截图

压缩时序到15/40/75附近
  1. 曲线编辑器调整关键点时间。
  2. Z位置在40附近开始加速抬升,75附近结束;缩放更早从15附近开始。
  3. 确认移动工具底栏位置,避免把缩放线误当成Z位置线。

用途:把动作集中在约两秒内,产生先展开后升起的节奏。

key_time_40_selected_field40
key_times_from_graph[15, 40, 75]
current_frame74
Ball.position_cm[0, 65.956, 36.287]
Z_end_from_graph_cm约37.8(图读,非精确键值)

未展示/边界:最终Scale XYZ准确值、每个控制柄值没有显示;不可强填为老师原值。

v10 11:20 压缩时序到15/40/75附近原片证据
v10 11:20附近原画面,点击查看原分辨率。
抬升前Ball位置接近零但非严格零
  1. 基线Z可用接近零的微小负值补齐,并明确该数是35帧评估值;不要称15/40关键帧精确为0。

本轮补查 · 对象Move底栏字段实读

用途:补齐或修正上一轮证据,支持老师时点对照工程

frame35
position_cm[0, 65.956, -0.002]

未展示/边界:尚未读到15/40键属性;可能是插值产生微小负值。

v10 11:30 抬升前Ball位置接近零但非严格零原片证据
v10 11:30附近原画面,点击查看原分辨率。

查看同一操作的补充截图

几何动画之外还要让贴图运动
  1. 继续修改Ball的透明度Ramp1,接入Composite5与Falloff4。
  2. 注意时间滑块为53,Phase是该时刻值;不是全段固定常数。
  3. 配合缩放和抬升观察纹理流动。

用途:几何决定整体轮廓,透明纹理决定出现哪些亮带。

frame53
Ramp1.U_offset1
Ramp1.V_offset-2
Ramp1.U_tiling0.2
Ramp1.V_tiling0.3
Ramp1.W_angle90
Ramp1.interpolation缓出
Ramp1.Noise_amount0.2
Ramp1.Noise_size1
Ramp1.Noise_phase_at_frame537.067

未展示/边界:完整所有Ramp色标未在单一截图逐项展开。

v10 12:40 几何动画之外还要让贴图运动原片证据
v10 12:40附近原画面,点击查看原分辨率。
重渲染调整后的短动画
  1. 再次输出Test2.avi,查看62帧时进度为48/61。
  2. 与之前101帧输出比较。
  3. 到播放器循环检查动作开始、峰值和消散是否顺畅。

用途:用完整时间序列验证,不能只看一个最好看的静帧。

resolution[320, 240]
deviceCPU
current_render_frame62
progress48/61
inferred_range[15, 75]

未展示/边界:15–75是由进度计数推断并与曲线时序相符,不是范围栏直接读数。

v10 17:40 重渲染调整后的短动画原片证据
v10 17:40附近原画面,点击查看原分辨率。
播放第二轮预览并继续材质
  1. 在播放器循环Test2.avi。
  2. 回到材质编辑器继续颜色层与透明层,保留前面几何动画。

用途:循环播放能发现跳变、过长停留与过早消失。

preview_fileTest2.avi
display_duration_seconds2

未展示/边界:显示时长为播放器整秒显示,不用作精确帧率证据。

v10 19:40 播放第二轮预览并继续材质原片证据
v10 19:40附近原画面,点击查看原分辨率。

查看本课shader参数及载入原视频逐帧 →

V11 · 原片证据

球体Noise与开放圆筒Taper的叠层气流

沿用Test2.max的Ball、Room、ArnoldLight001、PhysCamera001;新增Cylinder001,最终画面是球体与气流载体叠加,不是独立单圆筒。

在Ball周围新建Cylinder001
  1. 创建标准基本体圆柱体,放在Ball外侧。
  2. 顶视图检查同心附近的包围关系,前/左视图检查底部高度。
  3. 先保留球体和原场景,后续气流将作为第二层。

用途:圆筒为螺旋透明纹理提供UV载体。

radius_cm60.038
height_cm77.227
initial_height_segments5
initial_cap_segments1
initial_sides18
frame46

未展示/边界:创建时底栏可能显示鼠标位置,不拿它当最终Cylinder位置。

v11 02:50 在Ball周围新建Cylinder001原片证据
v11 02:50附近原画面,点击查看原分辨率。
减少高度分段并细化圆周
  1. 把Height Segments改为1、Sides改为64。
  2. 保留Generate Mapping Coords,Smooth开启。
  3. 检查圆周平滑而侧面结构简单。

用途:保持轻量网格并避免圆周出现18边轮廓。

radius_cm60.038
height_cm77.227
height_segments1
cap_segments1
sides64
smoothtrue
generate_mapping_coordstrue
real_world_map_sizefalse
v11 03:50 减少高度分段并细化圆周原片证据
v11 03:50附近原画面,点击查看原分辨率。
转换可编辑多边形,打开端部
  1. 转换为Editable Poly,进入Polygon级别。
  2. 选端盖面删除,让圆筒成为开放的侧壁。
  3. 透视视图从上方查看内部,确认Ball仍在圆筒中。

用途:端盖会形成不需要的填充面,开放侧壁更适合气流贴图。

base_objectEditable Poly
top_open_visibletrue

未展示/边界:截图直接证明上口开放;底盖删除的具体操作时点还需连续帧补查,复现时建议两端开放并标补齐。

v11 04:40 转换可编辑多边形,打开端部原片证据
v11 04:40附近原画面,点击查看原分辨率。
给Ball增加Noise几何修改器
  1. 选择Ball,在Sphere上方添加Noise。
  2. 开启Fractal和Animate Noise,主要改变X/Y轮廓。
  3. 保留Z强度为0,使垂直运动继续由原动画决定。

用途:几何噪波让能量球边缘不再过于规则;它不同于贴图里的Noise。

stack["Noise", "Sphere"]
seed0
scale100
fractaltrue
roughness0
iterations6
strength_cm[20, 20, 0]
animate_noisetrue
frequency0.25
phase_at_frame4545
frame45
Ball.position_cm[0, 65.956, 7.702]

未展示/边界:此帧Scale为100;其他时刻是否继续改为70需按后续证据另列,不能无证据当最终。

v11 25:00 给Ball增加Noise几何修改器原片证据
v11 25:00附近原画面,点击查看原分辨率。
Noise相位随时间变化,Scale仍100
  1. 保留Ball几何Noise,Scale100;AnimateNoise开启;45帧Phase45与61帧Phase61两时点相符。

本轮补查 · 字段实读

用途:补齐或修正上一轮证据,支持老师时点对照工程

frame61
Noise{"seed": 0, "scale": 100, "fractal": true, "roughness": 0, "iterations": 6, "strength_cm": [20, 20, 0], "animate_noise": true, "frequency": 0.25, "phase": 61}

未展示/边界:不能由两个评估时点声称全部手设Phase关键帧;启用噪波动画本身会改变相位。

v11 25:10 Noise相位随时间变化,Scale仍100原片证据
v11 25:10附近原画面,点击查看原分辨率。
Cylinder对象位置独立实读
  1. 使用该对象位置摆放Cylinder;这张图没有Taper或Gizmo子对象,证据独立于后续Gizmo移动。

本轮补查 · 对象Move底栏字段实读

用途:补齐或修正上一轮证据,支持老师时点对照工程

selectedCylinder001
selection_level对象
modifier_stack["Editable Poly"]
position_cm[0.535, 67.243, 0]
frame15
v11 25:30 Cylinder对象位置独立实读原片证据
v11 25:30附近原画面,点击查看原分辨率。
先在15帧缩小气流载体
  1. 选择Cylinder001,在15帧开启自动关键点。
  2. 统一缩放输入36,随后非统一缩放Z输入24(26:00画面)。
  3. 从前视图确认圆筒变成贴地的矮环,再去70帧拉高。

后续核对:这里记录的是操作输入;直接复刻最终Scale应使用27:33和27:40关键点属性值。

用途:让气流从低矮小环开始,随后展开,而非从头到尾保持完整圆筒。

frame15
uniform_scale_input_percent[36, 36, 36]
next_nonuniform_scale_input_percent[100, 100, 24]
next_input_time_seconds1560

未展示/边界:底栏表现为相对缩放输入,操作后可归100;不要把两次输入或70帧的535当最终绝对Scale。缺少最终控制器键属性读回。

v11 25:40 先在15帧缩小气流载体原片证据
v11 25:40附近原画面,点击查看原分辨率。

查看同一操作的补充截图

查看同一操作的补充截图

为气流载体加入缩放运动
  1. 选择Cylinder001,在70帧开启自动关键点。
  2. 执行沿Z轴拉高,检查三视图轮廓变化。
  3. 随后关闭自动关键点,避免误把调整记录为动画。

后续核对:535%是操作中的相对输入,不是最终绝对Scale。新版18工程已改用两键实读值。

用途:几何伸展配合透明度,让气流向上展开。

frame70
auto_key_ontrue
scale_input_seen_percent[100, 100, 535]

未展示/边界:535是该时刻缩放输入;后续显示100/100/100,不能保证它是最终绝对Scale或所有关键帧值。

v11 26:40 为气流载体加入缩放运动原片证据
v11 26:40附近原画面,点击查看原分辨率。
Cylinder Scale首键精确值
  1. 直接设置Scale控制器15帧为此值,替换根据36/24相对输入猜出来的起点。

本轮补查 · 字段实读

用途:补齐或修正上一轮证据,支持老师时点对照工程

key_index1
key_time15
scale_percent[35.597, 35.597, 8.405]
scale_vector[0.35597, 0.35597, 0.08405]

未展示/边界:切线菜单图标可见但名称没显示;不要凭图标断言完整切线枚举。

v11 27:33 Cylinder Scale首键精确值原片证据
v11 27:33附近原画面,点击查看原分辨率。

查看同一操作的补充截图

查看同一操作的补充截图

Cylinder Scale末键精确值
  1. 70帧直接用此Scale;撤销把535当最终Z百分比的解释。控制器端点应先准确,再匹配中间曲率。

本轮补查 · 字段实读

用途:补齐或修正上一轮证据,支持老师时点对照工程

key_index2
key_time70
scale_percent[109.643, 109.643, 144.879]
scale_vector[1.09643, 1.09643, 1.44879]

未展示/边界:该值为27:40的最后可见Scale键属性,之后Taper改变形状但未见改变此键数值。

v11 27:40 Cylinder Scale末键精确值原片证据
v11 27:40附近原画面,点击查看原分辨率。
透明曲线控制出现、峰值、消散
  1. 展开Cylinder001 > Material28 > opacity Composite11 > Map2 > Color1。
  2. 调整颜色强度曲线:15附近0、30附近1、70附近回0。
  3. 渲染中同时检查Ball与蓝色气流,不删除底层球。

用途:显隐曲线决定能量何时聚集和消散;几何存在不保证当前帧可见。

frame39
curve_graph_approx[[15, 0], [30, 1], [70, 0]]
resolution[320, 240]
deviceCPU
visible_layers["Ball", "Cylinder001"]

未展示/边界:键时间和值来自图上读数,未打开每个关键点属性;切线精确坐标未知。

v11 39:10 透明曲线控制出现、峰值、消散原片证据
v11 39:10附近原画面,点击查看原分辨率。
用消散帧解释“渲染里什么都没有”
  1. 拖到64帧比较视口和渲染。
  2. 即使网格仍在视口,透明层已接近消失。
  3. 回到22或39帧检查可见峰段,再排查相机与灯。

用途:先检查动画时间与opacity,不要误删或重建模型。

frame64
render_appearance灰底,能量已很弱/不可辨
v11 40:20 用消散帧解释“渲染里什么都没有”原片证据
v11 40:20附近原画面,点击查看原分辨率。
最后添加Taper形成扩张的喇叭形
  1. 在Cylinder001的Editable Poly上方添加Taper。
  2. 主轴Z、效果XY,Amount设1;保持Curve0。
  3. 从正/左视图检查上宽下窄的开口,不再保持直筒。

用途:让气流向外张开,使外轮廓产生扩张感。

stack["Taper", "Editable Poly"]
amount1
curve0
primary_axisZ
effect_axisXY
symmetryfalse
limit_effectfalse
v11 42:00 最后添加Taper形成扩张的喇叭形原片证据
v11 42:00附近原画面,点击查看原分辨率。
Taper移动前Gizmo位置
  1. 作为同一时间移动前参照;不是对象自身重新定位。

本轮补查 · 字段实读

用途:补齐或修正上一轮证据,支持老师时点对照工程

frame63
selectedTaper.Gizmo
coordinate_system_dropdown视图
display_position_cm[0.535, 67.243, 0]

未展示/边界:下方显示参考与MaxScript modifier局部坐标不是同一概念。

v11 42:10 Taper移动前Gizmo位置原片证据
v11 42:10附近原画面,点击查看原分辨率。
Taper移动后Gizmo位置
  1. 在63帧下,将Gizmo显示位置沿世界竖直方向提高37.841cm;若用MaxScript,需要通过对象变换把世界目标转换到modifier空间后设置,并读回世界位置核对。不要直接gizmo.pos=[.535,67.243,37.841]。

本轮补查 · 字段实读;世界显示含义有对象位置一致性支持

用途:补齐或修正上一轮证据,支持老师时点对照工程

frame63
selectedTaper.Gizmo
coordinate_system_dropdown视图
display_position_cm[0.535, 67.243, 37.841]
delta_display_cm[0, 0, 37.841]
taper_amount1
taper_curve0
primaryZ
effectXY

未展示/边界:不能仅截图保证脚本gizmo.position的局部单位,且Cylinder带动画非统一缩放。应以变换转换和几何轮廓验证。

v11 42:15 Taper移动后Gizmo位置原片证据
v11 42:15附近原画面,点击查看原分辨率。

查看同一操作的补充截图

调整Taper Gizmo的位置
  1. 展开Taper选择Gizmo子对象。
  2. 移动变形框,观察锥化作用位置。
  3. 不要把此时底栏坐标记成Cylinder对象本身坐标。

用途:变形框位置改变锥化分布和下口大小。

selected_subobjectTaper.Gizmo
display_position_cm[0.535, 67.243, 37.841]
frame63

未展示/边界:该值属于选中Gizmo时显示坐标,不是对象世界位置;参考坐标系需保持与原画面一致。

v11 42:20 调整Taper Gizmo的位置原片证据
v11 42:20附近原画面,点击查看原分辨率。
末尾渲染叠加效果
  1. 在22帧渲染检查蓝色螺旋与球体底层。
  2. 再拖动其他帧,确认气流开口、显隐和膨胀协调。
  3. 保存独立工程时保留Room、相机、灯、Ball和Cylinder001。

用途:最终验收应包括多个时刻和所有叠层。

frame22
resolution[320, 240]
deviceCPU
render_view_camera/viewport_camera
visible_layers["蓝色气流", "球体能量底层"]

未展示/边界:截图为课堂低分辨率预览,不能称高质量最终渲染。

v11 42:40 末尾渲染叠加效果原片证据
v11 42:40附近原画面,点击查看原分辨率。

查看本课shader参数及载入原视频逐帧 →

软件操作参考

菜单及快捷键以3ds Max默认配置为基准,自定义布局可能不同。