2nd Generation ICE, Custom ICE Node GetSceneMaterials
Plugins linking to this thread: (hide)
Get Scene Materials
2013+ only. Performs a substring search in the current material library and returns
a string array with the matching materials. This string array can be connected to
the ICE »Materials« attribute of a polygon mesh object - that way a material
can be dynamically selected per polygon using the »MaterialID« attribute.
Install by putting the dll file into any Softimage Plugins folder. By permission shared by si-community user Nolan. See the thread linked below for a discussion of this addon and a screenshot expaining its usage.
local backup: ICESceneMaterials.zip
Install by putting the dll file into any Softimage Plugins folder. By permission shared by si-community user Nolan. See the thread linked below for a discussion of this addon and a screenshot expaining its usage.
local backup: ICESceneMaterials.zip
author link: http://xsisupport.wordpress.com / si-community thread
2nd Generation ICE, Custom ICE Node GetSceneMaterials
Here is a plug-in custom ICE node that can get the material based on a wild card type match of its name. What I was attempting to do was see if Softimage could apply materials dynamically. This way you could use a combination of the objects name substring , group and some randomness perhaps even a custom parameter string you used for tags to dynamically add different materials based on substrings for example with a large scene like a city that has a lot of repeating elements but you want some easy to produce variation. Just the materials aspect would make Softimage compete with The Foundries Katana as Softimage as we know has a second to none partition, pass and channel system.
Unfortunately the way ICE is designed, it has to know in advance as part of the tree, what objects it Sets Data on. At present ICE can’t Set Data dynamically http://xsisupport.wordpress.com/2010/08 ... ting-data/ .
This limits it to the sort of, known object, materials application as shown in the image.
Of course this wildcard GetData and dynamic dispatch could be used on elements besides just materials.
So I’m suggesting a 2nd generation ICE where you can Set Data dynamically on elements the ICE tree doesn’t know about in advance.
I believe I have to email the ICE node.dll so this type of file can be attached.
In few other ways have I hit architectural limitations of ICE and Softimage. Great job developers old and new.
Moderator edit: I've placed both dll and scn in a separate zip file and added them to this post as attachments. Please note: unsupported file types can "always" be attached as zip files, file size being the only limitation. I haven't got time at the moment to test them myself, that's why I haven't placed the files on "our" server yet. Oh and please use the URL tags - HB
Unfortunately the way ICE is designed, it has to know in advance as part of the tree, what objects it Sets Data on. At present ICE can’t Set Data dynamically http://xsisupport.wordpress.com/2010/08 ... ting-data/ .
This limits it to the sort of, known object, materials application as shown in the image.
Of course this wildcard GetData and dynamic dispatch could be used on elements besides just materials.
So I’m suggesting a 2nd generation ICE where you can Set Data dynamically on elements the ICE tree doesn’t know about in advance.
I believe I have to email the ICE node.dll so this type of file can be attached.
In few other ways have I hit architectural limitations of ICE and Softimage. Great job developers old and new.
Moderator edit: I've placed both dll and scn in a separate zip file and added them to this post as attachments. Please note: unsupported file types can "always" be attached as zip files, file size being the only limitation. I haven't got time at the moment to test them myself, that's why I haven't placed the files on "our" server yet. Oh and please use the URL tags - HB
- Attachments
-
- ICE_GetSceneMaterials.scn.zip
- (84.11 KiB) Downloaded 225 times
-
- ICESceneMaterials.dll.zip
- (7.54 KiB) Downloaded 213 times
Last edited by Nolan on 22 Apr 2012, 23:42, edited 1 time in total.
Re: 2nd Generation ICE, Custom ICE Node GetSceneMaterials
Autodesk Softimage Winchester Beta2.... Sounds interesting
If this one called winchester there must be a cloud one...
Oh, and yes, ICE is not perfect in many ways, but this limitation as old as the XSI is. The famous rabbit rig is impossible to reproduce without the use of scripts for setting data to a group members.
I more like new build array from set of locations feature, indices of which is not matched with an array of vertex indices. And you can't sort array of locations. But who cares?
If this one called winchester there must be a cloud one...
Oh, and yes, ICE is not perfect in many ways, but this limitation as old as the XSI is. The famous rabbit rig is impossible to reproduce without the use of scripts for setting data to a group members.
I more like new build array from set of locations feature, indices of which is not matched with an array of vertex indices. And you can't sort array of locations. But who cares?
Re: 2nd Generation ICE, Custom ICE Node GetSceneMaterials
Softimage Winchester Beta2. That image, and Softimage titlebar, and the developed dll come from Softimage support as prompted by the mere suggestion of what I was trying to do. Wasn’t expecting that level of support! As to what’s in that app and what’s next, I have no inside information.
How do you get from Winchester to Cloud. I tried googling “Winchester, Cloud” and it came to naught. I see a cloud implementation as a “Data Centre as, dongle” Not a bad thing. But nice if they can surprise me, in a good way. They could add a little collective intelligence, hive mind, through having multiple users doing similar things. At least one company, name misplaced, are already doing that in the rigging/animation space which is one place where I can see it being useful.
Luceric once asked what would be Softimage next generation. For him and Chun Pong and Softimage developers what is your next generation ICE and or Softimage idea? I’m not sure if you can mute overrides. Which the correct metaphor I recommend would be to hide them so you get to see, feedback, the H icon in the explorer.
How do you get from Winchester to Cloud. I tried googling “Winchester, Cloud” and it came to naught. I see a cloud implementation as a “Data Centre as, dongle” Not a bad thing. But nice if they can surprise me, in a good way. They could add a little collective intelligence, hive mind, through having multiple users doing similar things. At least one company, name misplaced, are already doing that in the rigging/animation space which is one place where I can see it being useful.
Luceric once asked what would be Softimage next generation. For him and Chun Pong and Softimage developers what is your next generation ICE and or Softimage idea? I’m not sure if you can mute overrides. Which the correct metaphor I recommend would be to hide them so you get to see, feedback, the H icon in the explorer.
Re: 2nd Generation ICE, Custom ICE Node GetSceneMaterials
I received this support in around 12/2011 and it was in late Beta so I suppose it’s probably 2013 Beta. Sorry to disappoint ;-)
Permission was received to distribute it. Remember that because of 1st gen ICE limitations it doesn’t do as required. It’s more of a way to segway into any discussion about ICE gen 2.
Pretty sure it’s the “64bit” custom ICE node I uploaded.
Permission was received to distribute it. Remember that because of 1st gen ICE limitations it doesn’t do as required. It’s more of a way to segway into any discussion about ICE gen 2.
Pretty sure it’s the “64bit” custom ICE node I uploaded.
-
- Posts: 94
- Joined: 09 Jun 2009, 23:47
Re: 2nd Generation ICE, Custom ICE Node GetSceneMaterials
this is super nice Nolan, thanks!
if you allow me to hijack the thread a little bit, here are some thoughts about a next generation of ICE:
a) dynamic pointers to scene objects (I know this is prohibitive and not allowed by design, but think how cool that would be!). A node like "String to Reference", of course it would accept wildcards or even regular expressions, resolving to a single object or arrays.
b) setting data on groups (skip whenever the attribute is not present on a group member).
Could be also true to the a) situation. Example: Set Data "null*.size" -> 10 (every null on the scene is now 10 units in size, ice takes precedence over keyframed animations)
c) upstream data, a la Houdini's "stamp" feature. Example: say I have a procedural rock and I want to scatter a bunch of instances onto a particle system. They can vary in size, position and orientation, but they'll always be the same rock. Now say you can use the "pointID" attribute upstreamed to the seed of the rock coumpound, that would generate a different rock type for each instance. This is major control and proceduralism at its best! hats off for houdini guys for implementing this btw.
d) transparent GPU process power utilization whenever possible.
sorry, couldn't resist!
if you allow me to hijack the thread a little bit, here are some thoughts about a next generation of ICE:
a) dynamic pointers to scene objects (I know this is prohibitive and not allowed by design, but think how cool that would be!). A node like "String to Reference", of course it would accept wildcards or even regular expressions, resolving to a single object or arrays.
b) setting data on groups (skip whenever the attribute is not present on a group member).
Could be also true to the a) situation. Example: Set Data "null*.size" -> 10 (every null on the scene is now 10 units in size, ice takes precedence over keyframed animations)
c) upstream data, a la Houdini's "stamp" feature. Example: say I have a procedural rock and I want to scatter a bunch of instances onto a particle system. They can vary in size, position and orientation, but they'll always be the same rock. Now say you can use the "pointID" attribute upstreamed to the seed of the rock coumpound, that would generate a different rock type for each instance. This is major control and proceduralism at its best! hats off for houdini guys for implementing this btw.
d) transparent GPU process power utilization whenever possible.
sorry, couldn't resist!
Re: 2nd Generation ICE, Custom ICE Node GetSceneMaterials
Just to burst everybodies bubble before it get's out of hand:
The Winchester beta was the beta phase for Softimage 2013.
So, old screendumps here ;)
Also.... be aware that a lot of stuff changes during a beta cycle, so plugins/addons/ICE compounds etc. from that beta period might not always behave the same way in the retail version
rob
The Winchester beta was the beta phase for Softimage 2013.
So, old screendumps here ;)
Also.... be aware that a lot of stuff changes during a beta cycle, so plugins/addons/ICE compounds etc. from that beta period might not always behave the same way in the retail version
rob
SI UI tutorials: Toolbar http://goo.gl/iYOL0l | Custom Layout http://goo.gl/6iP5xQ | RenderManager View http://goo.gl/b4ZkjQ
So long, and thanks for all the Fish!!
So long, and thanks for all the Fish!!
Re: 2nd Generation ICE, Custom ICE Node GetSceneMaterials
I'm with fabricio here - proper support for groups would be so uber-cool.
And while we are at it: Implement item rearranging in groups.
And while we are at it: Implement item rearranging in groups.
Re: 2nd Generation ICE, Custom ICE Node GetSceneMaterials
You mean like this: http://download.autodesk.com/global/doc ... 116939A391?ace63 wrote:And while we are at it: Implement item rearranging in groups.
Re: 2nd Generation ICE, Custom ICE Node GetSceneMaterials
Oh cool. I'll have to try this out in ICE to see if it works (for instance shape->groups). If I were to sort it, and then change back view/GeneralSort/Type+Alphabetical, would it nullify the reorder?grahamef wrote:You mean like this: http://download.autodesk.com/global/doc ... 116939A391?ace63 wrote:And while we are at it: Implement item rearranging in groups.
-Dave
Re: 2nd Generation ICE, Custom ICE Node GetSceneMaterials
No, the only reason to switch the viewing order first is so that you can see underlying order as you change it (and so that Softimage can make sense of where you drop things). After that, the sort order is just a viewing thing.dwigfor wrote: Oh cool. I'll have to try this out in ICE to see if it works (for instance shape->groups). If I were to sort it, and then change back view/GeneralSort/Type+Alphabetical, would it nullify the reorder?
-Dave
I think you might need to reconnect the group in the ICE tree afterwards though.
Re: 2nd Generation ICE, Custom ICE Node GetSceneMaterials
Humm that really already exists? That could have saved me some time -_-grahamef wrote:You mean like this: http://download.autodesk.com/global/doc ... 116939A391?ace63 wrote:And while we are at it: Implement item rearranging in groups.
Who is online
Users browsing this forum: No registered users and 35 guests