. /../Lino Ray Tracer/ 1234567
written by Cryoburner on Jun 16, 2006 10:17
That sphereflake is rather cool, Ponche. Now, lets see some new primatives to build things with in the next release. : D

Hearing of your difficulties determining how long a render would take, I made an attempt at a library for estimating render time, and counting down the time remaining. Basically, it renders a tiny version of the image, timing each row, and then tries to estimate how long each row of the full image will take. It worked beautifully with test.txt, correctly determining the render time down to a fraction of a second, and was even accurate with its size bumped way up.

Unfortunatly, an initial run with test2.txt provided horribly inaccurate results. The estimated time to render was 7:35, which needless to say is extremely far off, and each second took much longer than that to tick by. : \ One potential problem I just thought of is that a timer might be getting multiplied to a number greater than 32 bits at some point. If this is the issue, it should be rather easy to fix. The other possibility I had previously thought of, is that most of the complex parts could be getting missed by rays in the tiny preview render. If that's the problem, then the only potential remedy might be to use a larger preview.

Now that I think of it though, the first reason seems likely, and I should check that out whenever I get a chance. I need to go to sleep now though. : P

Edit: Oh, a random thought! How about making a version of the snowflake where the color changes with each iteration? That might look cool. : )
deep into the jungle
written by Ponche on Jun 16, 2006 14:32
Cryoburner said:
Edit: Oh, a random thought! How about making a version of the snowflake where the color changes with each iteration? That might look cool. : )
And what about adding a beauty hexagonal procedural texture to the floor? Hey! I've figured how to implemented it by myself! And now i go for the spheres. And then 1.2 version with textures implemented. Later!

deep into the jungle
written by Ponche on Jun 19, 2006 14:46
Texture mapping preview shot:

written by Buuks on Jun 19, 2006 14:50
And than it is a small stap to release NVI.

Great job, Ponche!!
deep into the jungle
written by Ponche on Jun 19, 2006 14:55

Edit: another one. Remarks? the moon reflected at sea, which is a plane with a water texture tiled over it and transparency. Another plane with a procedural star map form the sky. Rendered in just 3 seconds. Nice!

└> last changed by Ponche on June 19, 2006 at 18:03
hello! :) felysian
written by Hello! :) on Jun 19, 2006 18:51
Ponche said:
< cd/pngs/ponche/moonsea >
Hm... the starscape, seems too full, either that or the intenisty/color variations aren't strong enough.

Btw to both that and the previous render: *drool*

edit: Is it my eyes just playing tricks on me or does the sea look curved?
written by Cryoburner on Jun 20, 2006 03:57
Woo! Textures!

Now how about adding specular and bump mapping? : ) They could be applied just like the textures, but the specular map would affect the level of reflection at that point on the object, while the bump map would affect the angle of the ray's path off its surface.
deep into the jungle
written by Ponche on Jun 20, 2006 10:14
Answering to Hello! : ) question, the sea maybe look curved and probably it's because a small focal distance. About the starmap, well, it can be reduced in the quantity of stars, i thought it was right that way, and after reading your post i realize that the contrast on my monitor was a bit low

Cryo: nice ideas, i'll remember.

And now, here is the next release LinoRT v1.2, and here are the changes as i wrote in the linort.txt file:

	v1.2 changes
	* main addition is the base for a texture mapping renderer, including in this
	version the following features related:
		- sphere inverse mapping procedure, this is, for applying a bitmap
		into a sphere. sphere pole and equator vectors has been added to
		the sphere specific data, but if you are not using texture mapping
		you can left it as undefined. [see texture.txt]
		- cylindrical inverse mapping. similar to the previous.
		- plane tiled texture mapping. so some mods in planes definition.
		- procedural plane texture mapping:
			+ using and hexagonal tricolor grid.
			+ using a random generated star map.
	* added the lrtutil.txt library, which is an auxiliary lib for creating scenes
	with linort in a reliable way [see example.txt]. i think it's a first step to 
	implement a raytracer program with a graphical user interface.
	* removed sphereflake lib until i make it compatible with lrtutil. just wait
	for the next release or do it by yourself... :P
	* some optimizations, here and there, and a pair of bugs more.
	* a minor code restyling, lowercased and tabulation corrected. sorry!
cd/zips/Ponche/lrt12 (489 Kb)


EDIT: well, i forgot.. cylindrical inverse mapping evidently implies i have added a new primitive. Guess which one?
written by Cryoburner on Jun 20, 2006 11:40
It's looking good so far! : )

I've only played around with the example file so far, but I'll try other things out later.

One thing to note is that I found a mistake in the example program. You call "set camera", but use the variables for "lrtu set camera", so they end up getting replaced with the default values. Otherwise it's nice, with good documentation. : )
deep into the jungle
written by Ponche on Jun 20, 2006 11:51
Yes, i've noticed that just after uploading. Thanks! I expect some renderings from you!

Oh, i'm working on a bilinear filtering just now.

EDIT: And here are the results:

└> last changed by Ponche on June 20, 2006 at 13:30
hello! :) felysian
written by Hello! :) on Jun 20, 2006 18:38
Ponche said:
Oh, i'm working on a bilinear filtering just now.
Then can we expect Anisotrophic filtering?
Btw, I'm rewriting my file library just so I can use an external file to define the scene!
Ponche said:
< cd/pngs/Ponche/bifilter >
More *drool*.
"gheeh!" (c)h.azuma
written by Yayo on Jun 20, 2006 18:55
wow! wonderful!
what about next step? perlin noise textures? 8 )

written by Ouch on Jun 20, 2006 20:19
if bumpmappnig doesn't work out maybe just adding some old school embossing effects would be sufficiant?
written by Cryoburner on Jun 21, 2006 01:10
I think that bumpmapping should be pretty straightforward for a raytracer. Just have a monochrome texture with height values from 0-255. When a ray intercepts an object, determine the angle of the surface at that point by checking the corresponding height value, and comparing it to the surrounding heightmap values. From that, you should be able to determine how much the angle of the ray should be diverted. This would create effects like accurate reflections and refractions for water ripples and etched glass, as well as detailed shading on solid objects.

A specular map would be even easier though. Just check the value at that point, and set the reflectivity accordingly. An example use would be to have a sphere with that Earth texture, combined with a specular map to make the oceans more reflective than the continents.
deep into the jungle
written by Ponche on Jun 26, 2006 09:53
I thought that some acceleration is needed! So i've implemented "uniform spatial subdivision". Improvement? The sphereflake at full detail and 600x600 took just 18 seconds! And one or two weeks ago i waited near 3 hours for it to render!! I'll be uploading it soon.

OH! And thanks for the suggestions, i'll implement them or most of someday. Thanks!
reading this thread
no members are reading this thread
. /../Lino Ray Tracer/ 1234567
42180, 15 queries, 0.121 s.this frame is part of the AnyNowhere network