Page 1 of 2

Any way to load more than 65535 triangles?

Posted: Mon May 15, 2006 4:21 am
by Wolf Dreamer
Is there any way to load more than 65535 triangles?

Any model of decent detail is going to have more than that.

Irrlicht still can't seem to do it.

Making games that have the graphics quality of things from 1997 is great, but I'd prefer to compete with more modern ones.

Surely in all sourceforge there must be a .dll someone knows of that supports this.

Please help.

---edit to change "anyone" to "any way". Not sure why I made that strange error---

Posted: Mon May 15, 2006 5:11 am
by German_man
im reading htis and hte number 65535 cought my eye. That is the most amount an unsigned integer can contian. So im gonan guess and say that irrlicht uses an unsigned integer for triangles. I don't know hte inner workings of irrlciht that well but if you find some way to make that a int into a long would probalby solve the problem

Posted: Mon May 15, 2006 8:45 am
by hybrid
Wolf, you seem to have missed a decent amount of information which came through these forums. There is a 32bit patch available to bring Irrlicht's mesh indices to double width, thereby supporting 4 billion triangles. If you don't want to recompile Irrlicht you could try IrrSpintz which came up with this patch and supports it natively.

Thank you

Posted: Tue May 16, 2006 4:13 am
by Wolf Dreamer
I've been gone for quite some time. Glad to see that Irrlicht finally left the beta stage, and decided to check it out.

That is odd that this patch wasn't included in the final release though. Any reason for keeping it out?

I'll go look for it now. Thanks.

And I believe someone once mentioned that the number 65535 was also the most triangles that an .x file could handle. Not sure about that though. I know .obj files can hold a whole lot more though.
Notify me when a reply is posted
I had this checked, but it didn't email me. Strange.

Posted: Tue May 16, 2006 9:34 am
by hybrid
Niko did not include any patch that was not urgent (i.e. library nor running correctly at all), but promised to become more active on this in the future.
I think that .x files can, just as Irrlicht's mesh buffers hold this number of vertices (not triangles!) per sub-object (don't know how they call it) such that you can have much more faces (and also vertices) per file.

Micro$oft says must buy upgrade!

Posted: Tue May 16, 2006 4:49 pm
by Wolf Dreamer
IrrSpintz can not compile with Visual C++ 2003 edition. You have to buy the three hundred dollar 2005 edition apparently.

Just another way Microsoft tries to make everyone buy something they don't need.

I remember when they did that last time, someone made a program that changed things from 2003 to the previous one, so it'd load up. Hopefully someone will do the same with this one.

I'll just try the patches I need at http://parsys.informatik.uni-oldenburg. ... /irrlicht/ and hope there are no problems.

Posted: Thu May 18, 2006 12:14 pm
by Spintz
Ummmm, you could use DevC++, or Makefiles with Linux. As far as Microsoft compilers go, I own Visual Studio 2005 Enterprise, and you can get Visual Studio 2005 Express.......FOR FREE!!!!! :shock: :o :shock:

Re: Any way to load more than 65535 triangles?

Posted: Thu May 18, 2006 5:49 pm
by Hirte
Wolf Dreamer wrote: Making games that have the graphics quality of things from 1997 is great, but I'd prefer to compete with more modern ones.
Has anybody a good example why about 65k of triangles are like graphics from '97? Thought it would be enough since "low poly game characters" from tutorials have only 4 or 5000 polys...

Posted: Thu May 18, 2006 6:11 pm
by Wolf Dreamer
Hirte, in late 1997 Quake 2 was released. The graphics I see in anything people have created, are equal to that level.

You can get the entire Quake 2 source code online through Microsoft's site or elsewhere, and tutorials to use it, by the way.

I see .obj files I have with more than a million polygons, and they formerly couldn't load. I didn't bother looking at the best model that formerly could. Anyone got one that is exactly 65535 we can use to compare quality levels with? I know if you take a model that was many times more than that and try to reduce it to that level, it looks like crap.

Posted: Thu May 18, 2006 6:55 pm
by gfxstyler
you consider a 65k model low detail? man ... :roll:

Posted: Thu May 18, 2006 7:11 pm
by vermeer
32 bit mesh index buffer

That's what an artist mind does with the reply about this exact question was answered waaaaay long ago.

Some sort of combination of those words was, lol.


well, irlicht nx was able to do it.


with x files.


and yup, even x files, not all version of x files do allow exporting more than 65k tris

exporters of 8.1+ x files could, though.

some ye old formats cant anyway handle that count, ie *.3ds, a format which i hate very truely.

Maybe old ts cob couldn't but my memory fails...

An obj can have a huge real lot. Is an average great format. Though not a full featured scene format, but very unversal and solid.

collada, x3d seem to be great scene formats(but cant ensure as I only ensure if I tested). Probably specially collada.

Posted: Mon May 22, 2006 7:29 am
by DriftRS
"Is there any way to load more than 65535 triangles?

Any model of decent detail is going to have more than that. "

I believe your greatly mistaken. I assume you've heard of the new Unreal 3.0 engine? Here's a model from it.

Image

That is built using 5,287 triangles, hardly 65,000

This picture here is of an environment again using unreal3.0 engine

http://www.unrealtechnology.com/screens/EmbryHigh.jpg
(not gonna post it here, to big)
Thats 500,000 polygons for the whole map.

So, I don't believe any games use 65k polygons in character models, chances are the majority will use 4-6 thousand, trying to stick more then 65,000 would probably cripple most computers. The trick is to use bump mapping and normal mapping. I havn't looked into it but I believe irrlicht has inbuilt support for both...

Posted: Mon May 22, 2006 3:43 pm
by sRc
yes it does have support for those, see the Per Pixel Lighting example.

ive been trying to do some normalmap examples in Irrlicht myself (i have a model and normalmaps sitting on my desktop), but my video card died and im stuck on integrated grapics now :(

but the point is they dont use high poly stuff. if you've got Lightwave and DOOM3, open up a couple models and look at how they do it (most all the DOOM3 models, probably Quake 4 as well but i dont have it, are Lightwave LWO format). DOOM3 uses normalmaps like crazy

Posted: Tue May 23, 2006 2:25 am
by Wolf Dreamer
That is odd.

Because I have a very simple model done in Daz3d, and it gives me the error of being over the 65535 limit.

The patch isn't working either. Someone please go check out the last few post in this topic http://irrlicht.sourceforge.net/phpBB2/ ... 6791#76791 and tell me if you can get anything working. I changed everywhere in irrlicht that has 65535 listed in it, to a much higher number, and I still get the 65535 error.

Perhaps .obj files are made to have vast amounts of triangles, while other formats don't. I can't find any program that can reduce that number without massive loss in quality. I believe I posted once months ago about that.

--edit--
http://en.wikipedia.org/wiki/Image:Norm ... xample.png
Found this example here. The original image has four million triangles, then its reduced to only 500 triangles and looks the same.

--
The mentioned problem with any engine slowing down greatly if it has to load up models with high triangle counts, is rather odd I think. Once daz3d loads up, you can take their insanely detailed models, and move them around without any delay at all. Moving them around in a game world that smoothly, would mean no problems. I wonder how the programmers that made it achieved that, and why they didn't go ahead and make a game engine with it.

www.daz3d.com is a free program by the way, and comes with the free Victoria model, among other things. You can export them to an .obj file.

Posted: Tue May 23, 2006 9:37 am
by DriftRS
Ok, well I don't know much about irrlicht but there's a few things you should know which are general 3D graphics (If I'm wrong somebody please correct me, I aint 100% sure of this stuff either :?)

Firstly the reason for the 65535 limit is most probably due to the maximum value of an unsigned int, so changing any 65535 found in irrlicht isn't going to help, you'd have to change the CORRECT instances of unsigned int to something larger, if I were you, I wouldn't do so.

High polygon counts do slow down engines alot. It isn't odd. Whatever 3D graphics software you use will often use a number of techniques to speed the processing up, for example they wouldn't bother rendering lighting, or not use textures and instead use solid colours and shading. Also some programs will not even use the number of polygons you request untill the image is acctually rendered. I guess another issue is shadows, which arn't generally in real time 3D previews in 3D apps, same with any effects such as bloom which you may incorporate in your game. Even more importantly is that your game won't be made out of one model, it will have multiple models and an environment, all of which add up to the polygon count. Factor in textures, sounds, physics and AI (although you may not include all of them), and suddenly polygon count starts to matter.

SO yeah, chances are the count won't matter so much in your game as unlike farcry or whatever you won't have to handle all the physics, environment, AI and post processing effects, but still, it's a good idea to keep the poly count down.

One thing I don't get though is how your simple model could have that many poly's, can you post a picture of it? Really I think the only way to solve your problem and keep the detail is to figure out how to use bump mapping or normal mapping, support is built into irrlicht, but I have no idea how to use it. Ask around and good luck :)