PgabrielMisschien moet je 3ddy ff lastig vallen op gtalk of facebook. Doe ik ook altijd met scriptvragen!
😄
3ddyDeze tip ga ik inlijsten 😉
PgabrielDaar kan ik wel weer mee helpen. 😉
zal morgen eens meevoelen. Heb nog wel idee waar ik zoiets kan gebruiken.
RalfGeen ervaring, maar wel benieuwd naar je code.
3ddyDit is de code. Waarom er blije smilies staan is denk ik nog een klein volgorde bugje, als je er een sluitende haak "😄" van maakt zal het leesbaarder zijn.
De mrBugFix functie zorgt ervoor dat nadat het materiaal gemaakt is (doormiddel van een callback) de settings voor het materiaal ook gezet worden zodat de extended materiaal ook gerenderd kan worden in mental ray.
plugin material eddyMaterial
name:"3ddy"
classID:#(0x50e34e1c, 0x75a8bca2)
extends:Standard
replaceUI:true
version:1
(
parameters main rollout:params
(
s_gloss type:#float default:0.1 ui:s_gloss
s_spec type:#float default:0.0 ui:s_spec
s_bump type:#float default:1.0 ui:s_bump
eddy_color type:#textureMap ui:choosemap_di
eddy_bump type:#textureMap ui:choosemap_bump
eddy_specularMask type:#textureMap ui:choosemap_specularLevel
eddy_reflection type:#textureMap ui:choosemap_reflection
on s_gloss set val do
(
delegate.Glossiness = val * 100
 😄
on s_spec set val do
(
delegate.specularLevel = val * 100
 😄
on s_bump set val do
(
delegate.bumpMapAmount = val * 100
 😄
on eddy_color set val do
(
delegate.diffuseMap = val
 😄
on eddy_bump set val do
(
delegate.bumpMap = val
delegate.bumpMapAmount = 100
 😄
on eddy_specularMask set val do
(
delegate.specularLevelMap = val
 😄
on eddy_reflection set val do
(
delegate.reflectionMap = val
 😄
)
rollout params "eddy Parameters"
(
spinner s_spec "Specular Level: " fieldwidth:45 offset:[0,0] align:#right range:[0,1,0.0]
spinner s_gloss "Glossiness: " fieldwidth:45 offset:[0,0] align:#right range:[0,1,0.1]
spinner s_bump "Bump Amount: " fieldwidth:45 offset:[0,0] align:#right range:[0,10,1.0]
--colorpicker col "Base color: " align:#center
label diffusemapName "Diffusemap: " across:2 align:#left
mapbutton choosemap_di "None" tooltip:"Select Diffuse Map" width:150 height:16
label bumpmapName "Bumpmap: " across:2 align:#left
mapbutton choosemap_bump "None" tooltip:"Select Bump Map" width:150 height:16
label specularLevelmapName "Specularmap: " across:2 align:#left
mapbutton choosemap_specularLevel "None" tooltip:"Select Diffuse Map" width:150 height:16
label reflectionName "Reflection: " across:2 align:#left
mapbutton choosemap_reflection "None" tooltip:"Select Reflection Map" width:150 height:16
)
on create do
(
manager = dxshadermanager.getViewportManager this
if (manager==null) then manager = DXShaderManager.addViewportManager this
)
)
fn mrBugFix a =
(
if a.classID[1] == 0x50e34e1c AND a.classID[2] == 0x75a8bca2 then
(
try
a.mental_ray__material_custom_attribute.SurfaceLockShow = true
catch()
try
a.mental_ray__material_custom_attribute.ShadowLockShow = true
catch()
try
a.mental_ray__material_custom_attribute.PhotonLockShow = true
catch()
try
a.mental_ray__material_custom_attribute.DisplacementLockShow = true
catch()
 😄
)
callbacks.removeScripts id:#relion_material
callbacks.addScript #mtlRefAdded "mrBugFix(callbacks.notificationParam())" id:#relion_material
RalfIk heb er nog geen studie van gemaakt, maar tot zover:
-- Error occurred in anonymous codeblock; filename: ; position: 19; line: 1
-- Compile error: Bad number or time syntax
-- In line: plugin material 3dd
hence; de roll-out wordt niet ge-create. Het lijkt allemaal een beetje mis te gaan op de lettercombinatie "3ddy" :p
3ddyDat krijg je van hernoemen... er stond natuurlijk een bedrijfsnaam...
Ik heb hem nu even voor de zekerheid getest.