Advertisement
Lucas_3D

Create MAXtoA AOVs

Dec 26th, 2018
1,033
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.88 KB | None | 0 0
  1. (
  2. local AOVs = #("coat", "diffuse_direct", "diffuse_indirect", "emission", "N", "object", "shadow_matte", "specular_direct", "specular_indirect", "sss_direct", "sss_indirect", "transmission", "volume", "Z")
  3. fn addAOVs =
  4. (
  5. renderers.current.AOV_Manager.drivers[1].aovList.count = 1 --clear out previous AOVs so there is only 1 left
  6. for i = 1 to AOVs.count - 1 do
  7. (
  8. append renderers.current.AOV_Manager.drivers[1].aovList (copy renderers.current.AOV_Manager.drivers[1].aovList[1])
  9. )
  10. for i = 1 to AOVs.count do
  11. (
  12. renderers.current.AOV_Manager.drivers[1].aovList[i].name = AOVs[i]
  13. if (renderers.current.AOV_Manager.drivers[1].aovList[i].name == "object" or renderers.current.AOV_Manager.drivers[1].aovList[i].name == "shadow_matte") do (renderers.current.AOV_Manager.drivers[1].aovList[i].data = "rgb")
  14. )
  15. )
  16. if (classof renderers.current != Arnold)
  17. then
  18. (
  19. messagebox ("Arnold is not set to be the current renderer,\nMake Arnold the current renderer in the Render Setup dialog.")
  20. )
  21. else
  22. (
  23. if (renderers.current.AOV_Manager == undefined) do
  24. (
  25. renderSceneDialog.open()
  26. renderSceneDialog.close()
  27. )
  28. if (renderers.current.AOV_Manager.drivers.count > 0) and (renderers.current.AOV_Manager.drivers[1].aovList.count > 0)
  29. then
  30. (
  31. if renderers.current.AOV_Manager.drivers[1].aovList.count > 1 then
  32. (
  33. if (queryBox ("This operation will delete the " + (renderers.current.AOV_Manager.drivers[1].aovList.count as string) + " AOVs you currently have,\nand then it will create new ones.\n\nWould you like to continue?")) then
  34. (
  35. addAOVs()
  36. )
  37. else
  38. (
  39. exit
  40. )
  41. ) else
  42. if renderers.current.AOV_Manager.drivers[1].aovList.count == 1 do addAOVs()
  43. renderscenedialog.update()
  44. )
  45. else
  46. (
  47. messagebox ("You need to add an AOV file first,\nlike, ANY AOV will do.")
  48. renderSceneDialog.open()
  49. )
  50. )
  51. )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement