www.jpct.net

jPCT - a 3d engine for Java => Support => Topic started by: EgonOlsen on March 18, 2009, 09:43:58 am

Title: High polygon object
Post by: EgonOlsen on March 18, 2009, 09:43:58 am
Hi,

does anybody have a free high polygon model (something like 500.000+ polygons) that isn't in MAX-format? I would like to stress test some engine changes, but i can't find a model that

a) is high poly
b) isn't in MAX-format (because i can't load/convert that)
c) doesn't look stupid

Any ideas? OBJ or 3DS prefered.
Title: Re: High polygon object
Post by: paulscode on March 18, 2009, 12:31:40 pm
I have some animal models that are around 200K polys, but nothing 500K or over.  If you have something in MAX format, I can convert it to 3ds or obj for you.
Title: Re: High polygon object
Post by: EgonOlsen on March 18, 2009, 01:40:51 pm
Some animals with 200K each would do too...where can i get them?
Title: Re: High polygon object
Post by: fireside on March 18, 2009, 03:57:05 pm
If you want more poly's and it's in your modeler, you can select them all and subdivide, but it will grow exponentially. ;D
Title: Re: High polygon object
Post by: paulscode on March 18, 2009, 10:19:38 pm
Some animals with 200K each would do too...where can i get them?

I'll upload some, give me a few minutes.
Title: Re: High polygon object
Post by: paulscode on March 18, 2009, 10:52:53 pm
Ok, I uploaded some animals:

Horse (http://www.paulscode.com/Models/Horse.3ds)
Nessy (http://www.paulscode.com/Models/Nessy.3ds)
Cat (http://www.paulscode.com/Models/Cat.3ds)
Dog (http://www.paulscode.com/Models/Dog.3ds)  (Dog Texture (http://www.paulscode.com/Models/dogskin.jpg))

Upon second look, these models are actually lower-poly than I thought they were - like between 75K and 150K each.  I think I know where I can get some higher-poly models at, though.  I'll let you know if I find something good.
Title: Re: High polygon object
Post by: EgonOlsen on March 18, 2009, 11:19:36 pm
The horse, as the highest polygon object of these, renders at 500fps on my machine...i need more polygons... ;)
Title: Re: High polygon object
Post by: paulscode on March 19, 2009, 12:47:57 am
Here is a free high-res skeleton model I found (1.2M polys):

(LINKS REMOVED)

I had a small network hickup while it was uploading, so let me know if the file is corrupt, and I'll try uploading it again.

Oh, I forgot to mention, there were too many polys to convert to .3ds, so I converted it to .obj format (Max exported the .mtl file along with the .obj).  I don't know if jPCT is able to load .mtl material libraries, but if not, this skeleton model only has one material - light grey (bone color), so you could just apply a grey texture to the model after loading (there are no UV maps for this model - texturing is done entirely with polygons).  I'm searching for even higher-poly models than this one, and I'll let you know if I find something.

-EDIT
No luck finding anything for free that has more than around 1 million polys.
Title: Re: High polygon object
Post by: paulscode on March 19, 2009, 02:01:29 am
Here's a nice model of an Infiniti Triant (way cooler model than the skeleton, but fewer polys - a little over 1 million).  It is in .3ds format (texture image files are included in the .zip):

Infiniti Triant (http://www.paulscode.com/Models/triant.zip)
Title: Re: High polygon object
Post by: EgonOlsen on March 19, 2009, 12:39:29 pm
Thank you. The car is pretty nice, i think i'm going to use that. The only drawback is, that this model combines transparent and opaque polygons on one part (for example, the front window is part of the chassis, the side windows are part of the doors...). That way, i can't make them transparent without making the whole car transparent. I've never seen something like this in a 3ds file before.... ???
Title: Re: High polygon object
Post by: paulscode on March 19, 2009, 11:19:15 pm
Oh, that's an easy fix.  Here is that model with the windows and mirrors detached into seperate geometries (in .obj format because Max's .3ds exporter choaks when there are too many polys):

Triant (.obj format) (http://www.paulscode.com/Models/triantObj.zip)

The above .zip file includes the .obj and .mtl files (the textures are the same as before).  The geometries I detached should be the last objects loaded in this order:
Code: [Select]
Windshield
BackWindow
DriverWindow
PassengerWindow
BreakLights
Headlights
SideMirrors
RearViewMirror
Title: Re: High polygon object
Post by: fireside on March 20, 2009, 12:06:14 am
Does this mean you can do bump mapping in hardware?
Title: Re: High polygon object
Post by: EgonOlsen on March 20, 2009, 10:18:48 am
Does this mean you can do bump mapping in hardware?
No, not yet...i'm planning to add a hook into the pipeline to support shaders...we'll see how this works out...
Title: Re: High polygon object
Post by: EgonOlsen on March 20, 2009, 07:13:09 pm
Oh, that's an easy fix.  Here is that model with the windows and mirrors detached into seperate geometries (in .obj format because Max's .3ds exporter choaks when there are too many polys):
Works great so far (...your exporter creates another variant of OBJ (must be the 2001th) with strange group namings, but anyway...) expect for the break lights. The glas and the insets are still one object, so i can only make them both transparent, which causes the break lights to become a window into the whole car. Is it possible to split those?
Title: Re: High polygon object
Post by: paulscode on March 20, 2009, 11:02:59 pm
The glas and the insets are still one object, so i can only make them both transparent, which causes the break lights to become a window into the whole car. Is it possible to split those?
That's weird, I thought I had only grabbed the red polys on the outside of the break lights.  Just so I know where to look for the problem, are those "window into the car" polys behind the glass or are they around the border of the glass?
Title: Re: High polygon object
Post by: EgonOlsen on March 20, 2009, 11:09:10 pm
They are behind. Some parts behind seem to belong to another object, but most of them somehow still belong to the glass.
Anyway, here's how it looks right now. It currently renders @75fps on my machine:

(http://www.jpct.net/pix/high_poly_car.jpg)
Title: Re: High polygon object
Post by: paulscode on March 20, 2009, 11:24:15 pm
Looks awesome!  If I may make a small suggestion - do you see the glass poking through the billboarded glow on the passenger headlight?  I figured out a way to fix that kind of behavior when I was playing around with glow effects a while back.  For the billboard itself, make it the same diameter as the longest diagonal length of whatever object is supposed to be glowing (the headlight in this case - the diameter you are using looks about right in this screenshot).  Then, offset the two polys of the billboard to half that distance in the -z direction in object-space.  Finally, place the center of the billboard at the center-of-mass of the headlight.  That way, no matter what angle you look at the headlight from, the glass will never be sticking through the billboarded glow effect.

--EDIT--
I drew a diagram in case my description above doesn't make any sense:
(http://www.paulscode.com/images/BillboardGlow.gif)


If you wanted to be really creative, you could put three smaller less transparent glows per headlight inside/behind the large glow (one at the COM for each bulb) using the same method I described above.  That might be a little bit of overkill...
Title: Re: High polygon object
Post by: paulscode on March 20, 2009, 11:59:08 pm
Ok, I corrected the problem.  I must have used the wrong method for selecting the glass last time.  Max is a great modeler, but it has WAY too many options sometimes!  Here's the fixed model:

Fixed Triant (http://www.paulscode.com/Models/triantObj.zip)

Due to the change, the geometries I detached should now load in this order:
Code: [Select]
Windshield
BackWindow
DriverWindow
PassengerWindow
Headlights
SideMirrors
RearViewMirror
BreakLights
Title: Re: High polygon object
Post by: EgonOlsen on March 21, 2009, 01:49:03 pm
The new model works fine, thanks. I know about the lights poking through, but i don't care... ;D I'm not sure that your method will help here, because sorting of compiled objects is based on objects only, not longer on polygons like it is with the normal pipeline. Simply setting a sort offset may help too.
Title: Re: High polygon object
Post by: paulscode on March 21, 2009, 04:01:45 pm
sorting of compiled objects is based on objects only, not longer on polygons like it is with the normal pipeline.
I can imagine where that would cause some really strange behavior, such as when two objects "pass through" each other in the camera-space Z-axis direction (in one frame, object A would be behind object B, then in the next frame object A would be in front of object B), and it would create problems with pretty much every billboarded-child special effect.  I suppose the way to avoid odd behavior would be by making sure objects in the "compiled pipeline" never pass through each other (removing the possibilty of some special effects).  It is definitely going to be a huge advantage that jPCT will let you choose between the two pipelines.
Title: Re: High polygon object
Post by: EgonOlsen on March 21, 2009, 08:26:14 pm
I can imagine where that would cause some really strange behavior, such as when two objects "pass through" each other in the camera-space Z-axis direction (in one frame, object A would be behind object B, then in the next frame object A would be in front of object B), and it would create problems with pretty much every billboarded-child special effect.  I suppose the way to avoid odd behavior would be by making sure objects in the "compiled pipeline" never pass through each other (removing the possibilty of some special effects).  It is definitely going to be a huge advantage that jPCT will let you choose between the two pipelines.
This is a problem for transparent objects only. Any others will simply rely on the ZBuffer and everything is fine.