random hemisphere (tlrcam related

Discuss stuff not about Indigo.
User avatar
OnoSendai
Developer
Posts: 6243
Joined: Sat May 20, 2006 6:16 pm
Location: Wellington, NZ
Contact:

Post by OnoSendai » Mon Sep 24, 2007 5:18 am

There are a couple of problems with reshooting.
a) You will be changing the resulting probability density of reflected rays, so you had better be taking that into account :)

b) You have to use an arbitrary number of random numbers (well perhaps you could work around this?) which doesn't play nice with MLT etc..

IanT
Posts: 153
Joined: Fri Aug 25, 2006 3:13 am

Post by IanT » Mon Sep 24, 2007 5:19 am

oodmb wrote:i do that too, except rather than rejecting the path, i reshoot it about 50 times till it works (gets slow and bugy in theory with smoothed ultra reflective surfaces). i might have solved my problem, but i dont think it's solved fully, i realy dont know. its alot harder to tell at this point.
If it fails, you could probably just reflect it around the smoothed normal ... this would guarantee it succeeds the second time (for isotropic BSDFs) but you'd almost certainly need to tweak the pdf (or the radiance) to avoid bias and/or artifacts.

Ian.

User avatar
oodmb
Posts: 271
Joined: Thu Oct 26, 2006 5:39 am
Location: USA
Contact:

Post by oodmb » Tue Sep 25, 2007 4:34 am

well, i fixed the normal smoothing problem. it turned out to be a UV issue. i also got the cameras working properly so they can render non square images (the x and y were being switched awkwardly somewhere). i added two types of resumes: runtime pause, and start from file resumes. i added a grid texture. also seemed to have fixed the memory leak error.
there are some major scene file changes though

Image
(the normals are still at error in this image)

here is the resulting stuff. its virtually bug free now:

it also includes the compiled .exe
Attachments
tlrcam.zip
(507.99 KiB) Downloaded 316 times
a shiny monkey is a happy monkey

User avatar
Kram1032
Posts: 6649
Joined: Tue Jan 23, 2007 3:55 am
Location: Austria near Vienna

Post by Kram1032 » Tue Sep 25, 2007 5:47 am

very nice :D
why didn't you add a no-normal-problem scene?

User avatar
zsouthboy
Posts: 1395
Joined: Fri Oct 13, 2006 5:12 am

Post by zsouthboy » Tue Sep 25, 2007 5:53 am

Dude, you're kicking ass.

Keep up the good work :)

User avatar
oodmb
Posts: 271
Joined: Thu Oct 26, 2006 5:39 am
Location: USA
Contact:

Post by oodmb » Tue Sep 25, 2007 12:31 pm

i just fixed the normal issues today and dont have a picture rendered yet to show anybody
i do have a picture that shades the dot product of the camera against the normal that proves that the normal issue is fixed, but just take my word for it that its fixed.
right now i'm working on adding mlt and getting very mixed very odd results.
a shiny monkey is a happy monkey

User avatar
Kram1032
Posts: 6649
Joined: Tue Jan 23, 2007 3:55 am
Location: Austria near Vienna

Post by Kram1032 » Wed Sep 26, 2007 5:06 am

Ah, I see :)
So, you have a random-problem, again, I guess?

User avatar
Zom-B
1st Place 100
Posts: 4701
Joined: Tue Jul 04, 2006 4:18 pm
Location: ´'`\_(ò_Ó)_/´'`
Contact:

Post by Zom-B » Wed Sep 26, 2007 8:59 am

Hey oodmb...

I just tested your little baby.... rendered the ring for over 12 h @ 800x800.
The Problem with your Program is, that for me its "attacking" my computer...

For some reason, My two monitors starts to shut off and on, just if they would change resolution, also the Viewport gets sometimes strange colored boxes like I get on my monitor if my graphic card gets overheated... random Mouse freeze or slow mouse reaction are common too :?
Everything on process priority of LOW...

While working only on one monitor everything seems to be ok, after activating the second one your prog crashed with a crashlog I attached.

I tried to resume the ring render from the rtlr file, but my computer first freezed and then restarted...
Attachments
default.png
default.png (1.01 MiB) Viewed 3505 times
hs_err_pid2132.zip
(3.63 KiB) Downloaded 182 times
polygonmanufaktur.de

User avatar
oodmb
Posts: 271
Joined: Thu Oct 26, 2006 5:39 am
Location: USA
Contact:

Post by oodmb » Wed Sep 26, 2007 9:43 am

is that using the java version or the compiled version, because i've also been noticing alot of bugs in the compiled version that dont exist in the java version, although nothing quite like that. i can't seem to figure out whether your computer is a dual core or not from that error file. it seems to me from that error file that the problems are more with java than with my program. if you did have dual core, were you running it in dual core mode?

one of the problems might be that the render sample threads run just under maximum priority, the other might be that i use thread deaths in the code which is a depreciated method(probably for good reasons).

do you think you could also post the rtlr?
a shiny monkey is a happy monkey

User avatar
Zom-B
1st Place 100
Posts: 4701
Joined: Tue Jul 04, 2006 4:18 pm
Location: ´'`\_(ò_Ó)_/´'`
Contact:

Post by Zom-B » Wed Sep 26, 2007 12:26 pm

I used the Java version on my dual core in 2 threads mode, get the rtrl file here.
polygonmanufaktur.de

User avatar
oodmb
Posts: 271
Joined: Thu Oct 26, 2006 5:39 am
Location: USA
Contact:

Post by oodmb » Wed Sep 26, 2007 12:44 pm

well, right off the bat i can tell you that i too have been having issues with dual core computers and multiple threads (odly enough having multiple threads on single core ht computers seems to speed things up a bit). another problem will be that some of my methods are not yet thread safe. yet another problem is that i dont think java is letting the threads be spread out between the cores, it might just be taking advantage of a single core for the app and the other core for the java stuff, which obviously would probably suck when you have two threads running on the same core both max capacity without thread safeyness and without ht. the other problem because you said you have screens could just be some odd issue with the graphics card and java.
a shiny monkey is a happy monkey

IanT
Posts: 153
Joined: Fri Aug 25, 2006 3:13 am

Post by IanT » Fri Sep 28, 2007 6:43 am

yet another problem is that i dont think java is letting the threads be spread out between the cores, it might just be taking advantage of a single core for the app and the other core for the java stuff, which obviously would probably suck when you have two threads running on the same core both max capacity without thread safeyness and without ht.

This won't be the problem (with any JVM less than 3 years old). It will be one of:

- the methods in the core ray-tracing loop aren't thread-safe (as you already suspected)
- too many synchronized methods in the core loop. In theory, the only synchronized methods you'll need will be those that add samples to the image. With care, you can even get rid of these :wink:

EDIT to respond to:

(odly enough having multiple threads on single core ht computers seems to speed things up a bit).

Hyperthreading effectively gives you dual-core for integer operations, so most rendering code will benefit from HT as well as true dual-core (but obviously not to the same extent)

Ian.

User avatar
eman7613
Posts: 597
Joined: Sat Sep 16, 2006 2:52 pm

Post by eman7613 » Fri Sep 28, 2007 2:36 pm

A.) what jre do you have installed?
b.) is it a JIT or just a wrapper?
Yes i know, my spelling sucks

User avatar
oodmb
Posts: 271
Joined: Thu Oct 26, 2006 5:39 am
Location: USA
Contact:

Post by oodmb » Fri Oct 05, 2007 2:32 am

i got MLT working! precedence doesn't quite work yet and i'd be carefull when putting two refractive materials within each other, but other than that, it seems to work. rays are still re-shot in glossy materials. i'm currently working on another method that doesn't even allow rays to be shot below the normal. i also took out the code that decides the importance of the threads, i'm not sure how well threads would work with the mlt anyway. i havent yet got the resume to work with MLT. there is also a new tag in the scene file that specifies use of MLT: sample metro

here is a new image of some caustics, note that the caustics might not be bright enough because the render of this picture lacked compensation for the probability that the ray might end without hitting the light.
Image
Attachments
TLRcam.zip
(150.41 KiB) Downloaded 172 times
Last edited by oodmb on Fri Oct 05, 2007 2:46 am, edited 1 time in total.
a shiny monkey is a happy monkey

User avatar
OnoSendai
Developer
Posts: 6243
Joined: Sat May 20, 2006 6:16 pm
Location: Wellington, NZ
Contact:

Post by OnoSendai » Fri Oct 05, 2007 2:40 am

Congratz!

Post Reply
85 posts

Who is online

Users browsing this forum: No registered users and 3 guests