DarkPlaces Limits

Discuss the construction of maps and the tools to create maps for 3D games.
Post Reply
toneddu2000
Posts: 1395
Joined: Tue Feb 24, 2009 4:39 pm
Location: Italy

DarkPlaces Limits

Post by toneddu2000 »

I was reading this tread on quakeone forums about RemakeQuake release and I noticed MH said
As GB said, the BSP2 format was absolutely essential. The options came down to cutting the maps or changing the format. In the former case it would have resulted in technology preventing creators from realizing their visions, and technology should not do that.

It is hoped - since the engine changes required for BSP2 are absolutely minimal - that this format will be picked up more widely. But that is entirely up to individual engine coders, and if someone doesn't want to do it then they won't.
And, about IQM support
IQM support is fully present and correct in the engine, and it can load and draw both version 1 and version 2 IQMs. The engine code can be used as a semi-reference for anyone else who is wanting to include IQM support, although fair warning is due that the kind of rendering code I write is slightly nuts and not very easily portable to other codebases.

r_shadows 1, entity alpha and skeletal animation via QC $frame is supported in this IQM implementation.

Credit must be given to AlienArena which I ripped a lot of the original IQM code from; that's also a very valuable resource for this, although I'd probably recommend grabbing an earlier version of it's source code for something that maps closer to trad Quake rendering.
So? With DP I couldn't make a map with more of 65000 vertices?
And IQM? I'm using now version 2. Can't I use it on DP?
Please tell me because I don't want to spend 6 months of development on a platform that I can use at 100% of my needs!
Anyway, if you know other DP limitations please post it here cause I'll have a more detailed picture!
Thx
Meadow Fun!! - my first commercial game, made with FTEQW game engine
Spirit
Posts: 1065
Joined: Sat Nov 20, 2004 9:00 pm
Contact:

Re: DarkPlaces Limits

Post by Spirit »

If you are plan to "only" use Darkplaces then I guess using q3bsp is a good idea.
Improve Quaddicted, send me a pull request: https://github.com/SpiritQuaddicted/Quaddicted-reviews
goldenboy
Posts: 924
Joined: Fri Sep 05, 2008 11:04 pm
Location: Kiel
Contact:

Re: DarkPlaces Limits

Post by goldenboy »

The 65k vertex limit is a Quake 1 BSP format limit. It is not Darkplaces specific. A Quake 1 BSP can't have more than 65k verts.

DP supports Quake 3 BSP format, but I'm unsure what the limits are there.

It is also admittedly somewhat hard to break the 65k vertices limit (breaking the clipnodes limit seems easier, for me at least). I currently work on a map with over 13,000 brushes that hasn't broken the BSP format yet. Big maps and broken BSP format aren't necessarily connected, it depends on what is in the map.
toneddu2000
Posts: 1395
Joined: Tue Feb 24, 2009 4:39 pm
Location: Italy

Re: DarkPlaces Limits

Post by toneddu2000 »

Ok guys thanks, now I understood. No, I'm using only DP because it's not a mod, it's a game. I'd like to import a lot of ase or objs (I don't know which format I'll use atm) so I was thinking that I would have reached the 65000 limit faster. Can you please tell me how to use q3bsp? Inside NetRadiant? I created a .game folder in radiant starting by nexuiz so I think I'm using quake3 maps. I'm not sure though
(breaking the clipnodes limit seems easier, for me at least)
Sorry for my ignorance but, what are clipnodes?

EDIT: what about iqm? Can I use version 2 from blender 2.59 exporter if DP supports only version 1? There are a lot of changes?
Meadow Fun!! - my first commercial game, made with FTEQW game engine
goldenboy
Posts: 924
Joined: Fri Sep 05, 2008 11:04 pm
Location: Kiel
Contact:

Re: DarkPlaces Limits

Post by goldenboy »

You use q3bsp by using a tool called q3map2 to compile your map.

In short, Quake 1 maps use .wad files for textures, a Quake 1 map compiler, and Radiant set to "Quake" with the Quake gamepack. Very logical :wink:

Quake 3 maps use "shaders" (aka materials) for textures, a Quake 3 map compiler, and Radiant set to something other than "Quake" with something other than the Quake gamepack (probably "Darkplaces"). The gamepack includes an entity def file which gives you the selection of map entities for that game, as well as some format definitions etc.

I don't use q3bsp + DP for mapping, so others might give you better advice.

I have yet to hear a good description of what clipnodes are, except that they're obviously used for clipping and your map is filled with them. From a mapper perspective, your clipnodes count rises sky-high when you include an unusual amount of brush-based detail and wide open spaces combined (e.g. e1m2rq). The vertex limit, on the other hand, is usually broken by having a physically humungous map (e.g. e2m1rq) - lots of triangle terrain helps you break it quicker.

I don't think mapmodels count towards the BSP format limits since they're not physically part of the BSP. They will only add to the vertex count if you somehow convert them to .map format and physically paste them into the map (as opposed to loading them at runtime via misc_model or the like).

I don't know how well DP handles version 2 IQMs, Lord Havoc is the person to ask there.
toneddu2000
Posts: 1395
Joined: Tue Feb 24, 2009 4:39 pm
Location: Italy

Re: DarkPlaces Limits

Post by toneddu2000 »

ok, thanks goldenboy for the clarification. I use q3bsp so I think I have no problems.
I have yet to hear a good description of what clipnodes are, except that they're obviously used for clipping and your map is filled with them. From a mapper perspective, your clipnodes count rises sky-high when you include an unusual amount of brush-based detail and wide open spaces combined (e.g. e1m2rq). The vertex limit, on the other hand, is usually broken by having a physically humungous map (e.g. e2m1rq) - lots of triangle terrain helps you break it quicker.
ah ok, I'll find some guide over the net
I don't know how well DP handles version 2 IQMs, Lord Havoc is the person to ask there.
I did. But in these days he must be super busy. No problem, I'll wait! :)
Meadow Fun!! - my first commercial game, made with FTEQW game engine
mh
Posts: 2292
Joined: Sat Jan 12, 2008 1:38 am

Re: DarkPlaces Limits

Post by mh »

The easiest way to break the limits is with a large unsealed map. As soon as you seal a map so that it will vis properly, QBSP removes a lot of "outside" brush faces, which will cause the numbers to go down quite a bit - otherwise it must generate vertexes and clipnodes for those too (despite the fact that the player will never actually be going there or seeing them). That's also the main reason why putting a big box around a map to make it seal is probably the worst thing you can do - QBSP can't remove the outside stuff and counts will skyrocket.

Clipnodes are just used for helping with collisions and traces - nothing much more you need to know about them. If you're familiar with traceline from QC or SV_RecursiveHullCheck from the engine - they depend on clipnodes.

One way to get the clipnodes count down is - if you have a large area with irregular geometry (like a smashed up floor) - you can just layer some simple clip brushes over the irregular stuff. QBSP will use those to generate clipnodes instead of your detailed geometry and the count will go down. Won't be suitable for all cases of course, but worth a try.

Having a look at the latest DarkPlaces beta source (http://icculus.org/twilight/darkplaces/files/darkplacesengine20120126beta1.zip)I can see that it supports IQM2 so that should be OK to go with. (I would have been shocked if it didn't as LordHavoc's rather distinctive mark is all over the IQM devkit sample code.)
We had the power, we had the space, we had a sense of time and place
We knew the words, we knew the score, we knew what we were fighting for
toneddu2000
Posts: 1395
Joined: Tue Feb 24, 2009 4:39 pm
Location: Italy

Re: DarkPlaces Limits

Post by toneddu2000 »

Thanks a lot for this clarification post, mh! Now I'm ready to start!
Meadow Fun!! - my first commercial game, made with FTEQW game engine
Post Reply