Can blender do this :D

General discussion about the development of the open source Blender

Moderators: jesterKing, stiv

Post Reply
Money_YaY!
Posts: 442
Joined: Wed Oct 23, 2002 2:47 pm

Can blender do this :D

Post by Money_YaY! » Thu Jul 29, 2004 10:50 pm

http://graphics.cs.cmu.edu/projects/bdt ... x_high.avi

http://graphics.cs.cmu.edu/projects/bdtree/

Yeah yeah I know, NO ! But one can dream. He explains it so well when showing it to.

theeth
Posts: 500
Joined: Wed Oct 16, 2002 5:47 am
Location: Montreal
Contact:

Re: Can blender do this :D

Post by theeth » Thu Jul 29, 2004 10:55 pm

Money_YaY! wrote:Yeah yeah I know, NO !.
Actually, YES, just read the paper and write a script to do it. It must not be that hard, right.

Martin
Life is what happens to you when you're busy making other plans.
- John Lennon

lukep
Posts: 0
Joined: Sun Apr 04, 2004 1:39 pm

Re: Can blender do this :D

Post by lukep » Thu Jul 29, 2004 11:37 pm

theeth wrote:
Money_YaY! wrote:Yeah yeah I know, NO !.
Actually, YES, just read the paper and write a script to do it. It must not be that hard, right.

Martin
I read the paper, not so easy (high computations). But feasible indeed.

Money_YaY!
Posts: 442
Joined: Wed Oct 23, 2002 2:47 pm

Re: Can blender do this :D

Post by Money_YaY! » Fri Jul 30, 2004 4:01 am

theeth wrote:
Money_YaY! wrote:Yeah yeah I know, NO !.
Actually, YES, just read the paper and write a script to do it. It must not be that hard, right.

Martin
Ha ha I knew you would say that :D. Untill I see it I do not belive it.

mr_rob
Posts: 0
Joined: Fri Jul 04, 2003 5:11 pm
Location: US of A
Contact:

Post by mr_rob » Fri Jul 30, 2004 4:23 am

Those chairs looks so realistic!
Later,
Josh
:twisted: :twisted:

macouno
Posts: 0
Joined: Tue Nov 18, 2003 3:37 am

Post by macouno » Sat Jul 31, 2004 3:04 pm

It seems like mostly he gets it to render so quickly cause he uses opengl rendering no???

And we might get that in some way in the future ;)

Money_YaY!
Posts: 442
Joined: Wed Oct 23, 2002 2:47 pm

Post by Money_YaY! » Sun Aug 01, 2004 1:07 am

macouno wrote:It seems like mostly he gets it to render so quickly cause he uses opengl rendering no???

And we might get that in some way in the future ;)
In the vid he says that their custon JAVA app uses OpenGL to render and do all of the work in 15 hours for all of the chairs comparied to 7 weeks of what it takes in a basic physics app like Havok.

As for OpenGL, OpenGL has so much new stuff that I see it replaceing basic software rendering but it is something that is not cross platform enough and requires a great happy 200$ Graphics card.

Anyone that has not watched to movie should it explains so much in it.

IoN_PuLse
Posts: 212
Joined: Wed Oct 16, 2002 6:05 am
Location: Canada, BC
Contact:

Post by IoN_PuLse » Sun Aug 01, 2004 6:00 pm

Money_YaY! wrote:As for OpenGL, OpenGL has so much new stuff that I see it replaceing basic software rendering but it is something that is not cross platform enough and requires a great happy 200$ Graphics card.
I must not be understanding your post, because OpenGL is cross platform (yes even the pixel shader stuff) and you can do pixel shaders with cards that are under $100 canadian easily, and they are becoming increasingly the defacto video card computers come with. (GFX 5200 in this instance)

Money_YaY!
Posts: 442
Joined: Wed Oct 23, 2002 2:47 pm

Post by Money_YaY! » Mon Aug 02, 2004 12:56 am

IoN_PuLse wrote:
Money_YaY! wrote:As for OpenGL, OpenGL has so much new stuff that I see it replaceing basic software rendering but it is something that is not cross platform enough and requires a great happy 200$ Graphics card.
I must not be understanding your post, because OpenGL is cross platform (yes even the pixel shader stuff) and you can do pixel shaders with cards that are under $100 canadian easily, and they are becoming increasingly the defacto video card computers come with. (GFX 5200 in this instance)
Eh if the 100$ card does the job then so be it. It is just how to get the same code to render the same GL picture on every platform with out to many hacks that break the cross compatibility.

Anyway, I would love to see Blender render fromthe CG card as testing out animation blocks would be so much faster, and rendering in gernral would be faster. I have seen raytraceing before on a CG card though still slow.

Eh it just takes someone to try it now and to know how to do it. That is the difficult part.

dcuny
Posts: 0
Joined: Mon Jan 27, 2003 11:22 pm

Post by dcuny » Tue Aug 03, 2004 8:08 pm

There seems to be some confusion about what the video is about.

Drawing a gazillion chairs isn't what makes the video impressive. It's not especially difficult to do with any zBuffer renderer (which is what OpenGL is).

What is primarily being demonstrated is a collision system. That is, the computer is testing the objects to see if they collide with one another. You don't want to test every polygon in the scene with every other polygon in the scene. Not only is it computationally expensive, but it's a waste of effort - most polygons aren't going to be touching anything at all.

On the other hand, testing to see if spheres collide with each other is an easy operation. So spheres are often used as bounding areas around objects. The problem is that spheres don't fit objects very tightly. So if a sphere around an object collides with another object, that doesn't necessarily mean that the objects collide with each other. (On the other hand, if they don't collide, you're guaranteed that they don't touch).

So everything in the scene gets a bounding sphere around it, and it's easy to ignore the stuff that isn't touching. To solve the problem about the spheres being too loose fitting, when a collision is detected between two objects, you generate more (and smaller) spheres around the objects that are colliding. That way, you can quickly determine which parts of the geometry to ignore.

This continues until it's cheap enough to just test the polygons to see what's intersecting what. It allows you to quickly determine what parts of the scene to ignore, and only concentrate on the interesting parts. Since (even with a massive amount of objects) only a small number of surfaces are actually colliding with one another, even very complex scenes can be resolved fairly quickly.

All that is fairly well known, and implemented in most physics systems. The video details clever ways to do this culling even faster.

Money_YaY!
Posts: 442
Joined: Wed Oct 23, 2002 2:47 pm

Post by Money_YaY! » Tue Aug 03, 2004 8:32 pm

dcuny wrote:There seems to be some confusion about what the video is about.

Drawing a gazillion chairs isn't what makes the video impressive. It's not especially difficult to do with any zBuffer renderer (which is what OpenGL is).

What is primarily being demonstrated is a collision system. That is, the computer is testing the objects to see if they collide with one another. You don't want to test every polygon in the scene with every other polygon in the scene. Not only is it computationally expensive, but it's a waste of effort - most polygons aren't going to be touching anything at all.

On the other hand, testing to see if spheres collide with each other is an easy operation. So spheres are often used as bounding areas around objects. The problem is that spheres don't fit objects very tightly. So if a sphere around an object collides with another object, that doesn't necessarily mean that the objects collide with each other. (On the other hand, if they don't collide, you're guaranteed that they don't touch).

So everything in the scene gets a bounding sphere around it, and it's easy to ignore the stuff that isn't touching. To solve the problem about the spheres being too loose fitting, when a collision is detected between two objects, you generate more (and smaller) spheres around the objects that are colliding. That way, you can quickly determine which parts of the geometry to ignore.

This continues until it's cheap enough to just test the polygons to see what's intersecting what. It allows you to quickly determine what parts of the scene to ignore, and only concentrate on the interesting parts. Since (even with a massive amount of objects) only a small number of surfaces are actually colliding with one another, even very complex scenes can be resolved fairly quickly.

All that is fairly well known, and implemented in most physics systems. The video details clever ways to do this culling even faster.

Ok with all of that said, is it possible to do within blender? Or is it just all talk?

mr_rob
Posts: 0
Joined: Fri Jul 04, 2003 5:11 pm
Location: US of A
Contact:

Post by mr_rob » Tue Aug 03, 2004 9:02 pm

Of course it's possible, it would take a lot of patience, experience, and effort... things I just don't have!
Later,
Josh
:twisted: :twisted:

lukep
Posts: 0
Joined: Sun Apr 04, 2004 1:39 pm

Post by lukep » Tue Aug 03, 2004 10:38 pm

Money_YaY! wrote:
dcuny wrote:There seems to be some confusion about what the video is about.

Drawing a gazillion chairs isn't what makes the video impressive. It's not especially difficult to do with any zBuffer renderer (which is what OpenGL is).

What is primarily being demonstrated is a collision system. That is, the computer is testing the objects to see if they collide with one another. ...
All that is fairly well known, and implemented in most physics systems. The video details clever ways to do this culling even faster.

Ok with all of that said, is it possible to do within blender? Or is it just all talk?
Blender use already solid lib for collisions in game engine which implement the basic algo. The new method presented in this paper is more advanced than what is present in solid directly, but that could be added yes. It is however quite some work.

Post Reply