实现功能: 更改显示方式为浮动显示 实现实时渲染功能 rollout FErollout "火焰特效" width:180 height:245 ( button btn1 "火焰" pos:[12,20] width:140 height:30 bitmap bmp1 "" pos:[12,70] width:140 height:120 button btn2 "渲染预览" pos:[51,205] width:64 height:21 on btn1 pressed do ( resetMaxFile #noprompt global sgizmo = spheregizmo radius:80 vf = fire_effect() addAtmospheric(vf) appendGizmo vf sgizmo cam = freeCamera pos:[0,180,0] target:(targetObject()) max vpt camera ) on btn2 pressed do ( view = render outputwidth:140 outputheight:120 vfb:off bmp1.bitmap = view ) ) rollout r1 "参数调节" width:180 height:245 ( spinner sp1 "浓烈程度: " pos:[40,3] width:133 height:16 range:[0,50,15] type:#float slider sl1 "火焰大小: " pos:[40,28] width:136 height:44 range:[0,100,80] on sp1 changed spValue do ( vf.density = spValue if spValue <= 15 then ( vf.inner_color = color 252 252 0 vf.outer_color = color 225 30 30 ) else if spValue >30 then ( vf.inner_color = color 253 255 94 vf.outer_color = color 144 126 255 ) else ( vf.inner_color = color 253 255 94 vf.outer_color = color 225 129 129 ) ) on sl1 changed slValue do ( sgizmo.radius = slValue ) on sp1 buttonup spVaue do ( view = render outputwidth:140 outputheight:120 vfb:off FErollout.bmp1.bitmap = view ) on sl1 buttonup do ( view = render outputwidth:140 outputheight:120 vfb:off FErollout.bmp1.bitmap = view ) ) FEFloater = newRolloutFloater "火焰特效浮动显示" 300 400 addRollout FErollout FEFloater addRollout r1 FEFloater 效果如下: