Billboard Clouds
-
- Google Summer of Code Student
- Posts: 31
- Joined: Sun May 21, 2006 4:03 am
- Location: Sweden
I've fixed the support for multiple materials per object/group now. The only material info that can be used from a obj file is the map_Kd texture, so you need to use a texture for each group unless you want them to render as white.
The stochastic plane selector is rather fast, I tried simplifying a 400k poly tree and the plane selection phase was really quick. The downside with the stochastic selector is that it produces much more and much crappier planes. The grid plane selector on the other hand is as I said in the previous post extremely slow. I'll start adding the memory manager today, which so provide some speedup. I also need to do some optimizations in the grid manipulation functions.
The stochastic plane selector is rather fast, I tried simplifying a 400k poly tree and the plane selection phase was really quick. The downside with the stochastic selector is that it produces much more and much crappier planes. The grid plane selector on the other hand is as I said in the previous post extremely slow. I'll start adding the memory manager today, which so provide some speedup. I also need to do some optimizations in the grid manipulation functions.
-
- OGRE Retired Moderator
- Posts: 2060
- Joined: Thu Feb 26, 2004 12:11 am
- Location: Toronto, Canada
- x 3
-
- Google Summer of Code Mentor
- Posts: 295
- Joined: Fri Aug 06, 2004 10:25 pm
Yes a (small) demo should be implemented
Dont spend too much time on the .obj file loader, probably its better idea to suggest users to use the .mesh methods directly, in any case that is how most of the users will use the library (and the tool that implements this library will interface with the external formats/data)
Dont spend too much time on the .obj file loader, probably its better idea to suggest users to use the .mesh methods directly, in any case that is how most of the users will use the library (and the tool that implements this library will interface with the external formats/data)
-
- Google Summer of Code Student
- Posts: 31
- Joined: Sun May 21, 2006 4:03 am
- Location: Sweden
Spent the whole weekend fixing bugs in various parts of the generator
The only big thing to fix now before it's somewhat working is the blending of the billboards in the viewer I made. I'll also try to add some code for using .mesh files since .obj is so annoyingly hard to work with.
Biggest problems with the generator right now:
* The grid plane selector is much faster, but still awfully slow.
* The image packer is really crappy so the textures are way too pixelated.

The only big thing to fix now before it's somewhat working is the blending of the billboards in the viewer I made. I'll also try to add some code for using .mesh files since .obj is so annoyingly hard to work with.
Biggest problems with the generator right now:
* The grid plane selector is much faster, but still awfully slow.
* The image packer is really crappy so the textures are way too pixelated.
-
- Google Summer of Code Student
- Posts: 31
- Joined: Sun May 21, 2006 4:03 am
- Location: Sweden
I would really appreciate if someone could find a properly textured tree with a sane polycount (<50 000)... I have like 1 model that can be rendered properly, but it has 400 000 faces, which is way too much for the grid plane selector to finish in a reasonable amout of time. The thing I really need to fix right now is the textures, but its really hard when I dont have any proper data :/
-
- OGRE Retired Moderator
- Posts: 2060
- Joined: Thu Feb 26, 2004 12:11 am
- Location: Toronto, Canada
- x 3
I can give you a really low poly tree in .mesh format - probably around 2000 polys. I have a tree generated with TreeMagik G3.
I'll ask again because I think someone else answered other than you - if I had a mesh that used a vertex shader to orient leaf billboards towards the camera - would your billboard cloud calculation work with that?
I have a different tree - it's currently in two separate mesh files though, the trunk separate from the leaves - where the leaves are quads and do what I described above, use a material with a vertex shader to orient towards the camera - but it also requires a custom movable object factory. I could generate this one at a higher resolution.
Well, to tell you the truth it would probably take me a few days to get the code ready and generate the tree.
Clay
I'll ask again because I think someone else answered other than you - if I had a mesh that used a vertex shader to orient leaf billboards towards the camera - would your billboard cloud calculation work with that?
I have a different tree - it's currently in two separate mesh files though, the trunk separate from the leaves - where the leaves are quads and do what I described above, use a material with a vertex shader to orient towards the camera - but it also requires a custom movable object factory. I could generate this one at a higher resolution.
Well, to tell you the truth it would probably take me a few days to get the code ready and generate the tree.
Clay
-
- OGRE Team Member
- Posts: 3092
- Joined: Tue Apr 11, 2006 3:58 pm
- Location: TLV, Israel
- x 76
here is a tree model for you
faces: 33,145
vertices: 40,227
materials: 1

obj file:
http://www.upload2.net/page/download/iF ... e.zip.html
is it good for you?
vertices: 40,227
materials: 1

obj file:
http://www.upload2.net/page/download/iF ... e.zip.html

Watch out for my OGRE related tweets here.
-
- Google Summer of Code Student
- Posts: 31
- Joined: Sun May 21, 2006 4:03 am
- Location: Sweden
My first attempt to generate a simplified mesh:

http://rapidshare.de/files/30338913/sim ... e.rar.html
But it suffers from split stem (result of stem being simplified together with the foilage) and bad texture space usage (need to improve the packing scheme).
The billboard cloud generator takes a Ogre Mesh as input, so if you can render it in ogre, then you should be able to use if for texture generation. The problem is that you need a function that extracts faces, so the set of faces being simplified needs to be a view independent set of frames, which should be rather obvious since the final simplified mesh is view independent.

http://rapidshare.de/files/30338913/sim ... e.rar.html
But it suffers from split stem (result of stem being simplified together with the foilage) and bad texture space usage (need to improve the packing scheme).
The billboard cloud generator takes a Ogre Mesh as input, so if you can render it in ogre, then you should be able to use if for texture generation. The problem is that you need a function that extracts faces, so the set of faces being simplified needs to be a view independent set of frames, which should be rather obvious since the final simplified mesh is view independent.
-
- OGRE Team Member
- Posts: 3092
- Joined: Tue Apr 11, 2006 3:58 pm
- Location: TLV, Israel
- x 76
-
- Google Summer of Code Student
- Posts: 31
- Joined: Sun May 21, 2006 4:03 am
- Location: Sweden
-
- Google Summer of Code Student
- Posts: 31
- Joined: Sun May 21, 2006 4:03 am
- Location: Sweden
-
- Google Summer of Code Student
- Posts: 31
- Joined: Sun May 21, 2006 4:03 am
- Location: Sweden
-
- Goblin
- Posts: 279
- Joined: Sun Feb 19, 2006 1:08 am
-
- OGRE Team Member
- Posts: 3092
- Joined: Tue Apr 11, 2006 3:58 pm
- Location: TLV, Israel
- x 76
the next stage – a forest
I started thinking about the next stage – a forest.
Have a look on my post here:
http://www.ogre3d.org/phpBB2/viewtopic. ... 527#170527
Have a look on my post here:
http://www.ogre3d.org/phpBB2/viewtopic. ... 527#170527
Watch out for my OGRE related tweets here.
-
- Halfling
- Posts: 90
- Joined: Thu Dec 15, 2005 7:46 pm
I was just checking out the wiki and I noticed that Xavier Decoret wrote several Ogre tutorials:
http://artis.imag.fr/Membres/Xavier.Dec ... rial1.html
Isn't this the same person who introduced billboard clouds?
http://www-imagis.imag.fr/Publications/ ... ex.gb.html
Maybe this was common knowledge, but it sure sent me for a spin.
http://artis.imag.fr/Membres/Xavier.Dec ... rial1.html
Isn't this the same person who introduced billboard clouds?
http://www-imagis.imag.fr/Publications/ ... ex.gb.html
Maybe this was common knowledge, but it sure sent me for a spin.

-
- Google Summer of Code Student
- Posts: 31
- Joined: Sun May 21, 2006 4:03 am
- Location: Sweden
-
- Google Summer of Code Student
- Posts: 31
- Joined: Sun May 21, 2006 4:03 am
- Location: Sweden
Assaf Raman: Before you ask again... I've worked my ass of implementing a technique for minimizing the split stems, but the papers only mentions it very briefly (1 or 2 sentences), without providing any specific information at all. I've written code that implements it the way I think it works, but I still have a really nasty bug I need to fix, and I also need to try some variations. And this weekend I'm busy with labs for an AI course I'm taking, so I'll continue working on it on monday. So hopefully I will have fixed it sometime next week.
-
- Gnoblar
- Posts: 7
- Joined: Fri Sep 10, 2004 5:35 pm
-
- OGRE Retired Moderator
- Posts: 20570
- Joined: Thu Jan 22, 2004 10:13 am
- Location: Denmark
- x 179
Check the status of the SoC projects here:
http://www.ogre3d.org/index.php?option= ... 4&Itemid=2
And the billboard clouds project in particular here:
http://www.ogre3d.org/wiki/index.php/So ... oardClouds
http://www.ogre3d.org/index.php?option= ... 4&Itemid=2
And the billboard clouds project in particular here:
http://www.ogre3d.org/wiki/index.php/So ... oardClouds
/* Less noise. More signal. */
Ogitor Scenebuilder - powered by Ogre, presented by Qt, fueled by Passion.
OgreAddons - the Ogre code suppository.
Ogitor Scenebuilder - powered by Ogre, presented by Qt, fueled by Passion.
OgreAddons - the Ogre code suppository.