Hi Thomas,
Yeah - unfortunately that's it. FCurve would be much better, but we've
not got it :-(
Though writing lightwrapping shaders in mental ray isn't as simple as
you might hope. You'll have a few issues to contend with - though none
of them killers. Happy to detail it if you like.
Cheers,
Alan.
On 7/14/05, Thomas Helzle <xsi(at)screendream.de> wrote:
> Sorry, I'm unsure if I understand you correctly. Are you basically suggesting using a gradient instead of a FCurve?
> And am I right - the other problem is that I can't just call the FCurve/Gradient with some value to be evaluated by the spline function without the back and forth you describe? Autsch ;-)
>
> Hm - funny that splines are so rarely available for shaders. It is so much more powerful defining for instance your specular or diffuse with a spline and it is much easier to visualize the result of a spline than that of a gradient.
> Especially cool is, if you can work on the full 180° light incidence, not just 90°...
>
> In messiah I was able to "misuse" the animation graph editor for that by sampling a time other than the current:
> http://www.cgtalk.com/showthread.php?t=187319
> Scroll down to the 16th post to see it in action with a rather simple example.
> Can I access an animated parameter of a shader at a different time than the current in XSI from within the shader?
>
> If anyone has found a workaround that uses a spline interface for shaders, I am all ears ;-)
>
> Thanks for the feedback!
>
> Cheers,
>
> Thomas Helzle
>
>
> On Thu, 14 Jul 2005 16:05:22 +0200, Alan Jones <skyphyr(at)gmail.com> wrote:
>
> > Unfortunately we can't do anything to use them yet. If you're after a
> > workaround I can suggest a very ugly one that will be a bit
> > uncomfortable for users.
> >
> > You can save some information with mi_shaderstate_set then have
> > another shader that reads that information in (mi_shaderstate_get) and
> > outputs it (as a color, scalar whatever).
> >
> > So to get something fcurve like you could save a scalar off, read it
> > in, pump it through a gradient mixer. Then plug the gradient mixer
> > into the parameter that you'd like to have the evaluated fcurve. So in
> > your shader code you'd save the state, then evaluate the parameter. If
> > you needed to do multiple evaluations remember to flush your cache
> > between them.
> >
> > Cheers,
> >
> > Alan.
> >
> > On 7/14/05, Wayne Williams <wayne(at)realtimegaming.com> wrote:
> >> I believe I remember someone else asking about the Fcurves for shaders
> >> and think the final conclusion was that at this time it isn't possible.
> >> Someone please correct me if I am wrong though! I'd love to have that
> >> kind of functionality for sure!
>
> ---
> Unsubscribe? Mail Majordomo(at)Softimage.COM with the following text in body:
> unsubscribe xsi
>
---
Unsubscribe? Mail Majordomo(at)Softimage.COM with the following text in body:
unsubscribe xsi