Indigo 0.8S Blender 2.44 Exporter Here *Deserted*
Indigo 0.8S Blender 2.44 Exporter Here *Deserted*
Welcome to my new home for the Blender exporter!
This script is based on version 07F v1.21. (which was based on current dev version at the wiki which I think was 6t6 b1) I am no longer working on version 07 of the exporter.
Thanks to all for providing fixes in forum, testing this script, finding bugs, and helping solve bugs. Thanks also for ideas on new features and stuff like that. Feedback and comments are welcome!
This script requires Blender 2.44 and Indigo 0.8 stable to function properly. Only mesh objects are supported.
Here's my known history, things that I thought were too little to list / or forgot to list are not included:
*added glare data
*if bloom or glare is off, data is not written to file
*added Hybrid button
*superSF can no longer be set to 0
*aperture radius can no longer be set to 0
*bloom/glare toggle buttons
*separate meshlight feature
*separate mesh feature
*added diffuse transmitter material
*Bugfix for meshlight tags
*Reworked materials, removed igm support
*Bugfix for World/Background color
*Angle support for normal smoothing
-Materials: All materials are now set up by themselves. So in order to do blend you first have to set up two different materials and click the save button for them to export since they are not applied to meshes. Same goes for mediums. Also your blended materials and mediums will need to go before blend and material medium tags and they are sorted A to Z. (I think) So make sure you start them with a lower letter than the blend that puts A and B together, for example. Same goes for mediums, "Aglass" will go above the material medium ballAglass so that will work. But if you rename Aglass to Cglass it will export under ballCglass and throw an error saying your medium is not defined. Now also with this rewrite you can have multiple "material mediums" (as I call them, they are the material that has the medium defined) point to one medium since it is defined separately.
-Memory error: Exporter supports single meshes with 900,000+ verts/faces in size. If you receive one of these errors, try reducing the size of your object.
-Rotation matrix error: Ctrl+A (apply scale/rotation) to object causing problem (Thanks Zuegs)
-Instance: Alt+D (duplicate linked) activates instancing (Thanks Zuegs)
Update: Some changes in my schedule have altered the amount of time I have available for non-essential tasks. I am no longer able to invest time into this exporter. Thanks to everyone for their support in this project!
This script is based on version 07F v1.21. (which was based on current dev version at the wiki which I think was 6t6 b1) I am no longer working on version 07 of the exporter.
Thanks to all for providing fixes in forum, testing this script, finding bugs, and helping solve bugs. Thanks also for ideas on new features and stuff like that. Feedback and comments are welcome!
This script requires Blender 2.44 and Indigo 0.8 stable to function properly. Only mesh objects are supported.
Here's my known history, things that I thought were too little to list / or forgot to list are not included:
*added glare data
*if bloom or glare is off, data is not written to file
*added Hybrid button
*superSF can no longer be set to 0
*aperture radius can no longer be set to 0
*bloom/glare toggle buttons
*separate meshlight feature
*separate mesh feature
*added diffuse transmitter material
*Bugfix for meshlight tags
*Reworked materials, removed igm support
*Bugfix for World/Background color
*Angle support for normal smoothing
-Materials: All materials are now set up by themselves. So in order to do blend you first have to set up two different materials and click the save button for them to export since they are not applied to meshes. Same goes for mediums. Also your blended materials and mediums will need to go before blend and material medium tags and they are sorted A to Z. (I think) So make sure you start them with a lower letter than the blend that puts A and B together, for example. Same goes for mediums, "Aglass" will go above the material medium ballAglass so that will work. But if you rename Aglass to Cglass it will export under ballCglass and throw an error saying your medium is not defined. Now also with this rewrite you can have multiple "material mediums" (as I call them, they are the material that has the medium defined) point to one medium since it is defined separately.
-Memory error: Exporter supports single meshes with 900,000+ verts/faces in size. If you receive one of these errors, try reducing the size of your object.
-Rotation matrix error: Ctrl+A (apply scale/rotation) to object causing problem (Thanks Zuegs)
-Instance: Alt+D (duplicate linked) activates instancing (Thanks Zuegs)
Update: Some changes in my schedule have altered the amount of time I have available for non-essential tasks. I am no longer able to invest time into this exporter. Thanks to everyone for their support in this project!
- Attachments
-
- Indigo08S_Export145.zip
- Blender 2.44 to Indigo 08 stable exporter with directions
- (10.94 KiB) Downloaded 453 times
Last edited by Wedge on Thu Jun 28, 2007 8:33 pm, edited 20 times in total.
Content contained in my posts is for informational purposes only and is used at your own risk.
- Heavily Tessellated
- Posts: 108
- Joined: Thu Aug 10, 2006 4:20 pm
- Location: Huh?
Excellent indeed.
I figured this would have been suggested this eons ago, because it's quite basic. But maybe it's just me. Let's see. OK, so, is it just me, or would having meshlights go into the materials file when you select it be a great idea?
One of the main points for externalizing the texture definitions is so we (meaning us) can manipulate parameters without the overhead of editing a 200 Meg xml file, and we (meaning me) mess around with scene lighting just as much as any material. And with the proposed material library, you figure by extension there could be a use for lighting libraries too.
I figured this would have been suggested this eons ago, because it's quite basic. But maybe it's just me. Let's see. OK, so, is it just me, or would having meshlights go into the materials file when you select it be a great idea?
One of the main points for externalizing the texture definitions is so we (meaning us) can manipulate parameters without the overhead of editing a 200 Meg xml file, and we (meaning me) mess around with scene lighting just as much as any material. And with the proposed material library, you figure by extension there could be a use for lighting libraries too.
Radiance: Hey! Your right, it looks like I have not altered this from 6t6b1. I will make the new minimum value for aperture radius to 0.001
(joke) I guess 0.000 will be like taking pictures with the lens cap on right? heh
Heavily Tessellated: Meshlights are written to the file in the object function. They are not part of the material function and that is probably why they work like this. I will have a look at this idea.
Afecelis: Thanks, good to see you. It has been awhile since you popped in to say hi!
(joke) I guess 0.000 will be like taking pictures with the lens cap on right? heh
Heavily Tessellated: Meshlights are written to the file in the object function. They are not part of the material function and that is probably why they work like this. I will have a look at this idea.
Afecelis: Thanks, good to see you. It has been awhile since you popped in to say hi!
Content contained in my posts is for informational purposes only and is used at your own risk.
A tiny critique: when I hover above the export-button of the Aperture Radius, it says 0 is off, wich isn't true, it just makes Indigo tell you it should be 0.002 or more..
EDIT, sorry, never took the time to see if it was told before.
Other than that, COOL! Thanks a lot!
Tiny question. Is there a way to make an object be SSS from blender?
EDIT, sorry, never took the time to see if it was told before.
Other than that, COOL! Thanks a lot!
Tiny question. Is there a way to make an object be SSS from blender?
Sander "Roger" Wit
The Netherlands
The Netherlands
Roger: Exporter allows you to make most material combinations that Indigo supports. The directions for this are in my first post in the blue font. SSS information is under the medium and SSS section. I think that is the information you are after? (materials will be translated from the sliders in Blender, to the materials in directions)
For Heavily Tesselated: It turns out that making meshlight write into a material file causes a problem. Meshlights with the same settings would go out as many times as the objects they are applied to. Not like materials where one material can cover many objects. In order to do this I think Indigo would need its syntax for <meshlight> altered. (setting up emitters as materials instead of objects)
For everyone: Update is coming shortly, within 24 hours...
For Heavily Tesselated: It turns out that making meshlight write into a material file causes a problem. Meshlights with the same settings would go out as many times as the objects they are applied to. Not like materials where one material can cover many objects. In order to do this I think Indigo would need its syntax for <meshlight> altered. (setting up emitters as materials instead of objects)
For everyone: Update is coming shortly, within 24 hours...
Content contained in my posts is for informational purposes only and is used at your own risk.
- Heavily Tessellated
- Posts: 108
- Joined: Thu Aug 10, 2006 4:20 pm
- Location: Huh?
Yea it's really not an issue as long as you know to use a programmer's text editor that doesn't try to load the whole thing in memory before it lets you make one little change like blackbody spectrum or intensity or something. Woe be unto the fool that tries to open a 400M xml file in wordpad.
I was mainly thinking that we could eventually have predefined actual lights, so for instance I could use a placeholder name on the mesh object, and #include the light definitions. So you could just name your mesh that will be a light "MH1000", and it would pull the predetermined settings for a 1000w metal halide bulb, so you don't have to manually set the color temperature and color rendering index and lumens and crap each and every time you used it.
Having it export separately was a way to get these lamp libraries built. But I guess that can wait. I mean we're still holding out for texture library functions, so...
But now it's stuck in your head, so who knows, maybe a month from now a light will pop on over your head and there will be a nifty and clever Wedge way to do it.
I was mainly thinking that we could eventually have predefined actual lights, so for instance I could use a placeholder name on the mesh object, and #include the light definitions. So you could just name your mesh that will be a light "MH1000", and it would pull the predetermined settings for a 1000w metal halide bulb, so you don't have to manually set the color temperature and color rendering index and lumens and crap each and every time you used it.
Having it export separately was a way to get these lamp libraries built. But I guess that can wait. I mean we're still holding out for texture library functions, so...
But now it's stuck in your head, so who knows, maybe a month from now a light will pop on over your head and there will be a nifty and clever Wedge way to do it.
A month?
Ah ok. You have it stuck in my mind.
So much so I went back to the exporter and wrote it regardless of the problem that it will export more than one meshlight with the same data. (since meshlights are really objects)
"Separate Meshlights" feature added
It tests ok as far as I can tell but I have a few other unfinished things I am coding so Thursday night my time I will put it up. (probably near midnight)
Update: Snapshot version posted. Only use this build to see what I am working on at the moment but have not finished or performed decent testing on. (do not save your blend files after testing this snapshot version, currently import igm feature adds part of a medium material to your scene file material dropbox)
Ah ok. You have it stuck in my mind.
So much so I went back to the exporter and wrote it regardless of the problem that it will export more than one meshlight with the same data. (since meshlights are really objects)
"Separate Meshlights" feature added
It tests ok as far as I can tell but I have a few other unfinished things I am coding so Thursday night my time I will put it up. (probably near midnight)
Update: Snapshot version posted. Only use this build to see what I am working on at the moment but have not finished or performed decent testing on. (do not save your blend files after testing this snapshot version, currently import igm feature adds part of a medium material to your scene file material dropbox)
Content contained in my posts is for informational purposes only and is used at your own risk.
- Heavily Tessellated
- Posts: 108
- Joined: Thu Aug 10, 2006 4:20 pm
- Location: Huh?
Put up a new snapshot. Reworked separate mats to separate mesh now so that the mats and render settings go out together.
History is above but basically: ap radius fixed, load igm support for medium materials only (if you test it), save igm materials for any material in your scene (insert name in box before pressing button), do not save your blend files after using this snapshot because the igm feature will add materials to it, .blend trigger now .ble to save room for material name, blend material now supports phong (directions not listed yet), and that is about it.
I am currently focused on writing some more materials for import igm support. Then I am looking at materials again and possibly mesh function. I would like to rewrite some stuff for the mesh but I am not sure yet.
The last few days I have increased large mesh support but then pulled it out after seeing it currently supports 900,000+ vert/face meshes that I cannot load into Indigo. So I guess the limitation is either my 2gb of ram or Indigo itself. (runtime error after reaching close to 2000mb) I tried with setting super sample factor to 0 but that did not do anything.
I have a 3gb swap file but it does not look like it gets used.
So, now you know what I have been up to.
Update: Posted new version.
Update 2: Posted version for Indigo 08t3.
History is above but basically: ap radius fixed, load igm support for medium materials only (if you test it), save igm materials for any material in your scene (insert name in box before pressing button), do not save your blend files after using this snapshot because the igm feature will add materials to it, .blend trigger now .ble to save room for material name, blend material now supports phong (directions not listed yet), and that is about it.
I am currently focused on writing some more materials for import igm support. Then I am looking at materials again and possibly mesh function. I would like to rewrite some stuff for the mesh but I am not sure yet.
The last few days I have increased large mesh support but then pulled it out after seeing it currently supports 900,000+ vert/face meshes that I cannot load into Indigo. So I guess the limitation is either my 2gb of ram or Indigo itself. (runtime error after reaching close to 2000mb) I tried with setting super sample factor to 0 but that did not do anything.
I have a 3gb swap file but it does not look like it gets used.
So, now you know what I have been up to.
Update: Posted new version.
Update 2: Posted version for Indigo 08t3.
Content contained in my posts is for informational purposes only and is used at your own risk.
source code
Hello,
I'd like to contribute to the blender to indigo exporter code, but I can't find pointers to some sort of source code version control stuff. Are the attached zips in this thread the only way the exporter is distributed? I don't feel like merging my working version with newer versions in this thread by hand every time.
Anyway, here are some suggestions:
The python keyword 'is' should not be used for testing equality, it only test if two objects are the same object, which is narrower than testing if two object have the same value (see http://docs.python.org/ref/comparisons.html at te bottom). It occurs a lot in the exporters code and should be replaced with "==".
Expressions like can be written more easy/ readable as
At some places testing if two conditions are true is done with the "&"-operator (e.g. line 298: ) "&" is a binary bitwise operator and this could result in unexpected outcome . These should be replaced with "and", which is a boolean operator. E.g. in python "4 & 8" results in 0 (False), while "4 and 8" result in 8 (True).
cheers
I'd like to contribute to the blender to indigo exporter code, but I can't find pointers to some sort of source code version control stuff. Are the attached zips in this thread the only way the exporter is distributed? I don't feel like merging my working version with newer versions in this thread by hand every time.
Anyway, here are some suggestions:
The python keyword 'is' should not be used for testing equality, it only test if two objects are the same object, which is narrower than testing if two object have the same value (see http://docs.python.org/ref/comparisons.html at te bottom). It occurs a lot in the exporters code and should be replaced with "==".
Expressions like
Code: Select all
if matName.find(".epi") is not -1:
Code: Select all
if ".epi" in matName:
Code: Select all
if t.mapto & Blender.Texture.MapTo['COL']:
cheers
Who is online
Users browsing this forum: No registered users and 77 guests