I'm still working on my ray tracer. For bad or for good, currently I'm very obsessed with my 3D libraries. I can't finish some other graphic effects because I don't stop studying and researching about advanced 3D math and algorithms.
Recently I implemented some nice improvements concerning material properties and configurations. Below I show you the same image as before, but rendered using different materials with finer settings.
What is Picture to People ?
"Picture to People" (P2P) is a huge Computer Graphics project. It was started to create new softwares able to make 2D drawing, 3D rendering, vexel drawing, text effects, photo effects, image filtering and other complex Computer Graphics operations. It has been made from scratch, including its low level Computer Graphics libraries like Maccala. Nowadays, most final features produced for this project are released as free online tools available from its official website. This blog talks about Computer Graphics, mainly concerning Picture to People development.
"Only who makes has true knowledge. Knowledge is control. True power depends on total control. Only who makes from scratch has the real power."
Saturday, March 26, 2011
Sunday, March 6, 2011
Ray Tracing
Nowadays, my 3D libraries are very robust. Probably they are almost so mature as my 2D vector based libraries, although they are less than two years old. Some weeks ago, I thought it was already time to create my own ray tracer, a really powerful one.
Well, it is under development. It's already fully functional and has very professional quality. Now I have going through many challenges, because I don't want it the way it is.
I need something very beyond what I already got: I want the same quality, but at least 20 times faster. 3D rendering optimization is a very hard work if you need it in a very deep level. This subject is heavily researched by many people and it has been a very important area of Computer Graphics for at least 20 years. Unfortunately, my experience shows the best algorithms are never published for good.
Anyway, I need to overcome this challenge, or will not be able to publish graphic tools based on ray tracing. My software has NO dependencies, so it uses NO libraries or even hardware acceleration. It needs to be VERY fast in its own essence and I'm working on it.
A text with 20 letters made using a complex font can have several thousands of polygons. To get professional quality, even when rendering a small image, the software needs to test dozens of millions of ray-object intersections. If everything goes as I want, I will be able to render complex shapes like 3D text in a reasonable time, so I can release it at Picture to People site.
Below I show you an image rendered using all power of my ray tracer (there is no background plane).
Well, it is under development. It's already fully functional and has very professional quality. Now I have going through many challenges, because I don't want it the way it is.
I need something very beyond what I already got: I want the same quality, but at least 20 times faster. 3D rendering optimization is a very hard work if you need it in a very deep level. This subject is heavily researched by many people and it has been a very important area of Computer Graphics for at least 20 years. Unfortunately, my experience shows the best algorithms are never published for good.
Anyway, I need to overcome this challenge, or will not be able to publish graphic tools based on ray tracing. My software has NO dependencies, so it uses NO libraries or even hardware acceleration. It needs to be VERY fast in its own essence and I'm working on it.
A text with 20 letters made using a complex font can have several thousands of polygons. To get professional quality, even when rendering a small image, the software needs to test dozens of millions of ray-object intersections. If everything goes as I want, I will be able to render complex shapes like 3D text in a reasonable time, so I can release it at Picture to People site.
Below I show you an image rendered using all power of my ray tracer (there is no background plane).
Subscribe to:
Posts (Atom)