Problem solved- for radiosity and uvmapping/textures?

Blender's renderer and external renderer export

Moderators: jesterKing, stiv

ideasman
Posts: 1000
Joined: Tue Feb 25, 2003 2:37 pm

Problem solved- for radiosity and uvmapping/textures?

Postby ideasman » Sat May 10, 2003 3:55 pm

I was racking my brains for a way to use uv textures and complex textures in general AND radiosity and I think I have discovered a workaround.

Render your animation/scene with all objects with an emit of 1.0 and no lights.

Then Apply radiosity to your mesh's and render the ani/scene again.

Then merge the two in an image or movie editor (I use Cinelerra in linux) with the radiosity layer on the top with a subtractive blend mode.

All the shadows will be applied to the fully lit layer below.

This method requires some extra steps but is less of a fiddle one other method that requited using emptys for texture coords an did not work on uv mapped objects.

It also avoids the problem of the maximum of 16 textures that I hear about sometimes.

Just a question back to the blender forum- Do many of you use post process image merging as a way around things?

z3r0_d
Posts: 1522
Joined: Wed Oct 16, 2002 2:38 am
Contact:

Postby z3r0_d » Sun May 11, 2003 12:26 am

why not press the shadeless button for the material instead of emit 1.0?

Oh, and instead of using [orco] (original coordinates) for texure mapping, create an object at the location of your object which had orco mapping.

the 16 limit is MATERIALS, and materials will be duplicated if there are multiple seperate objects having the same material. The problems come from the fact that all objects in the radiosity calculation are merged into one, and each object (that one that is created is the problem) can have AT MOST 16 materials.

(I don't exactly see how your method would get around the 16 mateial problem, but it does seem quite flexible in other respects. Oh, you may want to choose multiply instead of subtract blending. )

(hopefully better methods will come. )

Landis
Posts: 61
Joined: Sun May 11, 2003 11:45 pm

Postby Landis » Mon May 12, 2003 12:50 am

Funny...I have been experimenting with this very same method of post processing for both stills and animation and have recieved very good results. The multiply method of layering would be a better choice for the shadows of a radiosity calculation although I think what you are considering is "light" versus "shadow" which in a multiply method "light" would not show up or affect the initial render layer that the radiosity layer is being applied to. I normally tweak things a bit to get staisfactory lighting results using various layering methods outside of multiply on a "trial and error" basis mostly . Also before I forget, this process that you are interested in is similar to what the industry refers to as "rendering in passes". Normally the Specualr and diffuse layers would be rendered seperatley from oneanother in addtion to shadow results simialr to that of Blenders radiosity calculation. All these are later taken into a post processing application (such as the gimp or photoshop for stills, and after affects for animation) to be tweaked and merged into a one layer for the final production. This gives one greater control over the end result than offered by a renderer alone. If you already knew this I apologise for insulting your intelligence, if not here is another thread to start out on:

http://www.blender.org/modules.php?op=m ... pic&t=1337

...or....

.....take a look in the Elyisun forum. I know I have come across a discussion regarding this.

Good work keep it up. :wink: .

Cheers,
Landis

eeshlo
Posts: 132
Joined: Wed Nov 06, 2002 10:02 pm

Postby eeshlo » Mon May 12, 2003 1:49 am

Not that it was an original idea, but two years ago I actually created a program (yes, again...) just for this purpose to combine both in a way to preserve as much of the original radiosity solution brightness as possible. It wasn't just as easy as a straight multiply (not that my program was horribly complex, it was just sort of a like a gamma correction), although of course in an image processing program you can also adjust gamma/contrast/brigthness/or other, after the multiply.
Also, you lose colourbleeding unless you adjust all materials to have the average texture color (for objects that have textures) before doing the radiosity solution, otherwise it would probably only be useful to add soft shadows.
I also tried to explain this method back then on the old blender.nl forums, but nobody seemed to think it was useful or maybe (as seems to be the case often when I try to explain something) they just didn't understand it.

Landis
Posts: 61
Joined: Sun May 11, 2003 11:45 pm

Postby Landis » Mon May 12, 2003 5:44 am

eeshlo,

Was this a stand alone app? It sounds like a good idea but as you were saying about the gamma adjust capabilities in other apps such as the gimp and photoshop make it less competitive (not that you were aiming to compete with those guys) , although, it still sounds like you got something. It would be very nice to incorporate your package into some type of post processing render option within Blender itself similar to the control given after a radiosity calculation but a little more in depth and focused towards the final result. Maybe if you could store these renders into "render layers" kind of like the capability to store multiple rendered stills that Blender currently supports. Granted the current feature is intended to toggle between subtle changes for comparison but perhaps something similar could be done to store images for post procesing or "passes" as discussed. Transforming Blender into a "Jack of all trades master of none" is something to avoide for obvious reasons, but if you can shave just enough time off of an entire production (or small personal project :wink: ) without sacrificing the quality than the benifits are simply indispensable...i.e. more time for creativity and less time spent on tedious tasks such as loading up the gimp or photoshop for a layer merging assembly line :( . Now, I personnaly cannot imagine myself ever being satisfied with anything without running it through the ringer in photoshop, however, if these layers could be customized to a format of choice (ie. JPEG, TARGA, etc.) initially or be converted in mid production and allowed for "drag and drop" capability, then one could just drag between Blenders "render layers" and photoshops layering system on the fly without having to store multiple versions of pics all over the hard drive. That way when you hit save you could save these seperate passes with attached notes etc. and it would all be there again for you to call up later in one file. Each layer that was an original Blender "render layer" (i.e. had not been dragged back in from photoshop) would be marked as so , signifying that additional data is tagged to that layer (materials, lamps, etc.) Click on one of these layers inside of Blender and the applicable settings would change back to the way they were to achieve that particular render. You could also copy and paste specific attributes between layers just as you already do throughout the different windows in Blender (i.e copy/paste feature in the materials buttons, "pose mode" window, etc. When you hit F12 :wink: it would prompt you to "render to layer?", "render to buffer?", etc. This feature could also be used as a "make shift" undo button for some, but something a little more similar to photoshops history feature or the modeling system of 3D Studio Max. Just an idea.

Cheers,
Landis

ideasman
Posts: 1000
Joined: Tue Feb 25, 2003 2:37 pm

A note on post processing.

Postby ideasman » Tue May 13, 2003 9:09 am

I had a look at script-fu in the gimp, I know nothing about scheme but from tutorials and what ppl had done it looked possible to script things like curves, resizing, layer merges etc.

It would be great to have a little proggie that sent multiple a stream of images to the gimp for processing and merging. This would be better then a video editor because you could use the gimps layer blending, filters and curves (I need curves)

I think the gimp is the best choice because I can do advanced stuff and everyone can use it.

eeshlo
Posts: 132
Joined: Wed Nov 06, 2002 10:02 pm

Postby eeshlo » Wed May 14, 2003 5:51 am

Landis wrote:Was this a stand alone app?


That was the idea at the time, but it could also have been programmed as a sequence plugin, but since I didn't get any response from my description of the idea, I never developped it other than as a program to test the idea.

It sounds like a good idea but as you were saying about the gamma adjust capabilities in other apps such as the gimp and photoshop make it less competitive (not that you were aiming to compete with those guys) , although, it still sounds like you got something.


I'm not too sure about that, I still have the code, and basically it would be EXACTLY like a gamma correction of two multiplied layers with the gamma factor set to 1.414.. (squareroot of 2). A total trial and error guess without any valid base (that I know of) that just seemed to work. So it really wouldn't be that useful other than that you could do it in Blender directly. The same procedure can be replicated with almost any image processing prog without problems.

It would be very nice to incorporate your package into some type of post processing render option within Blender itself similar to the control given after a radiosity calculation but a little more in depth and focused towards the final result. Maybe if you could store these renders into "render layers" kind of like the capability to store multiple rendered stills that Blender currently supports. Granted the current feature is intended to toggle between subtle changes for comparison but perhaps something similar could be done to store images for post procesing or "passes" as discussed. Transforming Blender into a "Jack of all trades master of none" is something to avoide for obvious reasons, but if you can shave just enough time off of an entire production (or small personal project :wink: ) without sacrificing the quality than the benifits are simply indispensable...i.e. more time for creativity and less time spent on tedious tasks such as loading up the gimp or photoshop for a layer merging assembly line :( . Now, I personnaly cannot imagine myself ever being satisfied with anything without running it through the ringer in photoshop, however, if these layers could be customized to a format of choice (ie. JPEG, TARGA, etc.) initially or be converted in mid production and allowed for "drag and drop" capability, then one could just drag between Blenders "render layers" and photoshops layering system on the fly without having to store multiple versions of pics all over the hard drive. That way when you hit save you could save these seperate passes with attached notes etc. and it would all be there again for you to call up later in one file. Each layer that was an original Blender "render layer" (i.e. had not been dragged back in from photoshop) would be marked as so , signifying that additional data is tagged to that layer (materials, lamps, etc.) Click on one of these layers inside of Blender and the applicable settings would change back to the way they were to achieve that particular render. You could also copy and paste specific attributes between layers just as you already do throughout the different windows in Blender (i.e copy/paste feature in the materials buttons, "pose mode" window, etc. When you hit F12 :wink: it would prompt you to "render to layer?", "render to buffer?", etc. This feature could also be used as a "make shift" undo button for some, but something a little more similar to photoshops history feature or the modeling system of 3D Studio Max. Just an idea.


Well, this is something more for a future Blender version (3.0 seems to be targetted for a total(?) rewrite). I suppose an option would be to rewrite the render code to do a single render pass with separate output to different image buffers, where you then could also possibly control the layering of the final result in Blender itself.
Note that I'm not too sure about this as I'm not really very familiar with all of Blender's code...


Return to “Rendering”

Who is online

Users browsing this forum: No registered users and 0 guests