Showing posts with label Maxscript. Show all posts
Showing posts with label Maxscript. Show all posts

Wednesday, April 15, 2009

Tech-Artists.org - Scripting and Tool Building Website

I found this website last week through CGTalk, it's a forum and community set up just for tech artists and techie scriptie people in general. There is some great info there, check it out!

http://www.tech-artists.org

It's a great resource for learning about scripting and programming in Python, MEL, Maxscript, Jscript, C#, etc.

Monday, March 30, 2009

New Blog: Script Swell

I put together a new blog to keep track of all my snippets of code, scripts, tools, etc. that I've made that might benefit other people. Some stuff is proprietary of course so I can't post everything I make at work, but most of it is just little snippets of MEL and Maxscript that might help some people along. I've been doing a lot of work lately creating shelves and workflow enhancements for the artists at our studio and some of the things I make will be found at Script Swell.

http://www.scriptswell.net/

MEL, Maxscript, Python, JScript, etc.

Wednesday, January 28, 2009

Floating Time - MaxScript

This script is great. I use a lot of custom scripts but none of them get as much use as this one, so I thought I'd share. It gives you a little floating window you can use to adjust the time range and go to any frame you like. I much prefer it to the default setup. Saves a few clicks and precisely 45milliseconds per frame change when you're working in 3DS Max. (Yes I'm being sarcastic, but it's still awesome and speeds you up in my opinion.) Fast is where it's at people!.

fn floatingTime =
(
   if (theTimeRollout != undefined)
   then (destroydialog theTimeRollout)

   rollout theTimeRollout "Floating Slider Time" width:258 height:25
   (
       spinner theStartFrame "Start: " pos:[22,4] width:60 range:[-100,50000,1] type:#integer
       edittext theTimeInput "Go To:" pos:[89,4] width:80
       spinner theEndFrame "End: " pos:[193,4] width:60 range:[-100,50000,1] type:#integer

       on theTimeRollout open do
       (
       theTimeInput.text = ((sliderTime as integer) / ticksperframe) as string
       theStartFrame.value = (animationRange.start as integer / ticksperframe)
       theEndFrame.value = (animationRange.end as integer / ticksperframe)
       )
       on theTimeInput entered x do
       (
       slidertime = x as integer
       )
       on theStartFrame changed x do
       (
       if (x < animationrange =" interval" value =" (animationRange.end" animationrange =" interval"> animationrange.start)
       then
       (
       animationRange = interval animationrange.start x
       )
       else
       (
       theEndFrame.value = (animationRange.start as integer / ticksperframe) + 1
       animationRange = interval animationrange.start theEndFrame.value
       )
   )
   )createDialog theTimeRollout style:#(#style_toolwindow, #style_sysmenu)

)