Forum: Poser - OFFICIAL


Subject: New Reality (lux render) Plugin over at Daz...time for Poser Plugin Update?

Ridley5 opened this issue on Jul 26, 2010 · 1724 posts


bagginsbill posted Wed, 04 August 2010 at 12:20 AM

Quote - Thanks for the code, BB! I like your suggestions, too.

I'll try to get the splitting of actors by materials and the vertex splitting at UV seams nailed down tonight, so don't waste time on that unless you need it urgently.

I was thinking that the geometry exporter could get passed an argument that tells it how to translate Poser material names to output material names. That could be a dictionary with (actor, material) or (actor, material name) pairs as keys, or a method, or some object that responds to a name_material() call. You decide what works best for you.

Does that sound reasonable?

I already implemented the dictionary, in BBLuxMat.py. When you construct the MatConverter, you pass the material, and optionally an itemName. If no itemName is given, you get back an uncached, unnamed material. But if an itemName is given, then it combines the itemName with the material name. For example, a prop called Box has a Top material and a Sides material. It would put Box/Top and Box/Sides into the material dictionary, as named materials.

No matter how many times you call for Box/Top, you get the same named material back.

I hooked it up to the exporter already - it uses the figure or prop name as the itemName.

The geometry exporter doesn't need to know how this happens.

As written, the MatConverter always returns a reference to a named material based on the itemName and the material name. But in the future, I'll provide a mechanism where the MatConverter can use shaders from a library, instead of converting the one it was given. All it needs to do is look up the itemName and the material name in the cache. If it's already there as a reference to some other library of materials, it will simply return it.

I will make an easy way to extend this, but my idea is that the VSS rule-based scheme will work for a lot of things. You would not need to really load a skin shader on a figure. You'd just pre-define that any skin material maps to Template Skin.

Template Skin would be a Lux material, possibly using very fancy stuff that would not be possible to translate from a Poser material. I will also see to it that any template shaders coming from a library will accept texture map file names as arguments, so that you can use the same Lux material over and over, even though you'll need to plug in different textures for Color, Bump, Displacement, Shine, etc.


Renderosity forum reply notifications are wonky. If I read a follow-up in a thread, but I don't myself reply, then notifications no longer happen AT ALL on that thread. So if I seem to be ignoring a question, that's why. (Updated September 23, 2019)