Skip to main content
GameDev.net gamedev.net
🔒 Locked

Quark - Why isn't it popular?

Started by guanohead Oct 3, 2008 at 12:42 AM 15 replies 3.5k views
Original Post
guanohead
guanohead
So I've been getting into level editing lately. After checking out quark I am confused. It seems so much more powerful than other editors in such very fundamental ways that I'm not sure why it is so rarely mentioned. Some of these include: - Negative brushes - You can "carve" without locking yourself into your initial decision of WHERE to carve or even WHETHER to carve. - Duplicators - A "cloning" method where any changes to the original propagate to the clones. - An explorer style grouping system - You don't need to ungroup/alter/regroup to make changes to a group anymore. Also gives you a lot more fine-tuned control over your level (though I'm a coder, so I may enjoy having control more than a pure artist). - It seems simple to use. You don't have to pick a cylinder's face count from a drop down, it's picked intuitively as you drag. You don't need a separate "vertex editing" mode, it's part of the normal select mode. I'm sure there are other examples. Ok. I guess my question is threefold and is prompted by my need to choose an editor to focus on. First: this was originally designed for quake so you KNOW it's been around. Why haven't other editors picked up on some of these handy features? Esp. the first 2. Second: Since other editors have stuck w/ the "decide now and heaven help you if you change your mind" methodology, why isn't quark more popular? Third: Are there factors I'm not taking into account? Does it slow to a crawl w/ large levels? Is it really not that special, I just haven't found the features in other editors? I've searched for answers online and have gotten few facts, but many strange opinions. Someone even said that it's only for beginners: http://www.besmella-quake.com/forum/viewtopic.php?p=5454&sid=10432d43a9a4a4dcca265d6214f8a099 Would anyone agree? Why? I've seen mention of needing to download python, but I got it to work and I never downloaded python. It seems to support most popular formats, so that's not a problem. I can see "overwhelming" being an adjective used. I figure: if your going to learn an editor anyway, why not make it one that takes longer to master but will let you work more powerfully upon mastery. Perhaps this view is atypical. I haven't had a chance to use an of the radiant editors, which people often rave about. Are they better than this one? Why? Do they have the features I mentioned? Do they have any useful features that quark doesn't? Oh, and I'm not trying to start a flame war or anything, promise. There are many great editors, I'm just surprised that a few concepts from Quark haven't become standard issue by now.
Darragh
Darragh
I recall an assignment in second year where we had to do a couple of levels for Quake 2. Initially I tried using quark but found it to be extremely buggy, slow and poorly laid out / overcomplicated. For example, there was this memory leak which made the thing almost unusable after several minutes of use... Needless to say I got pretty peeved off with it after a while and switched to Radiant.

I'm sure others have had similar experiences too.
OrangyTang
OrangyTang
Back when I did Quake (1 & 2) modding (map making mostly) QuArK was king. I tried a whole bunch of different editors (ThrED, Quoole, Radiant, Worldcraft) and they've all got their quirks but QuArK is IMHO much more powerful. Proper per-face and per-vertex editing and the explorer window were the two things that stood out for me. Works great with big levels too since you can turn on/off whole subtrees to just concentrate on one bit at a time (to the point where I accidentally made some huge levels that worked just fine in QuArK but ran out of memory in Q2.

(Disclaimer: I haven't used any of them for a long time now, so things may have changed).
Daaark
Daaark
Who the hell uses brushes these days?

It's not popular because it's a relic from the past, where objects were limited to big blocky integer multiples of 8 for their positional values, and the brushes were an abstraction over raw polygons that kept them into limited shapes that were optimization for the engines running those maps.

Quark is not popular for the same reason that BUILD(Duke 3D) isn't. We've evolved past that stage. We edit in RAW polygons now, which for the most part can be any shapes and dimensions. We aren't limited to the crude, bulky, simple shapes of that era.

You want something powerful, Check out DeleD. It's a raw polygon editor (and soon animator) and it has a very flexible tagging system, so you can define all your own data inside it, and then extract it with your XML parser.

I used to love Radiant back in the day. Made some nice things, but couldn't work like that now.
guanohead
guanohead
Half-life 2's Hammer editor is still done with brushes.
The first UnrealEd was a brush based level designer and I'm pretty sure the latest UnrealEd is the same for the latest unreal engine outside of a few tweaks.
I just checked out doom3edit and it seems to be brush-based too.
Even mmorpg's like WOW and LOTRO use brush based level design.


I find it hard to believe that brushes are a dinosaur when these high-profile engines (a bit old, but not much) are using them.
I admit that deleD looks pretty cool though. I'll check it out.

[Edited by - guanohead on October 3, 2008 8:36:10 AM]
RivieraKid
RivieraKid
brushes, the way i understand it, are for the engine to partition the environment for optimizations. Unreal Ed 3 still uses brushes but you only see meshes when playing.
Kwizatz
Kwizatz
Brush and CSG based levels are still very useful for collision detection due to the advantages convex shapes have for it.

For some reason not knowing and having no interest to learn Delphi is what has kept me away from really digging into Quark, of course I have a developer's perspective rather than a level designer's perspective.
guanohead
guanohead
3D modeling packages work with polygons because you typically draw the "whole" model (minus a few polygon optimizations) at every frame.
3D engines can't afford to render all polygons in the level at once because levels can get really big. BSP partitioning is used to break the level down into bite sized chunks, only a small portion of which get rendered by the engine at any given time.
Brush-based level design ensures that all the spaces are convex, which is crucial for proper BSP partitioning.
So, while it's true that the end result is always going to be in polygons, designing with the brush paradigm lets the compiler optimize the level for speed.
As time goes on, levels are relying more on models to flesh out the level, but brushes still make up the basic outlines. Eschewing brushes would be a big step backwards in level design and that's why it's lasted this long. Outdoor based games can't effectively use BSP optimization so games like crysis aren't built with brushes.

After watching a vid, I think that perhaps the DelaD uses brushes too but that it does more of the grunt-work in terms of breaking your ideas down into convex shapes.

I know that UnrealEd, Hammer Editor, GTKRadiant and most of the others that are popular now are similar in design to quark.



Kwizatz
Kwizatz
With the advent of 3d hardware acceleration BSPs are no longer used for render culling, Portal based systems are now used instead, however, BSP trees are still a popular collision detection solution.
guanohead
guanohead
I apologize if I've gotten my information mixed up. If bsps aren't used anymore than why are all the indoor engines using brushes? Is it because of the collision detection you've been talking about?
owiley
owiley
brushes are way easier to work with thats why they should be used even for terrian

special brushes should exist to do terrian cause all the vertices needed to render it.

at least that's how i was going to implement it in my editor with brush vertice number being able to be set and the status bar hold number of triangles and vertices for whole level that way the artists know if the have more to play around with or needs to stop it even scans for referenced models using them in the count too.

this tool was to big and no one would help me build it so i scrapped it.
Bring more Pain
Kwizatz
Kwizatz
Quote:
Original post by guanohead
I apologize if I've gotten my information mixed up. If bsps aren't used anymore than why are all the indoor engines using brushes? Is it because of the collision detection you've been talking about?


Yes, collision detection tests are divided into a broad phase and a narrow phase, BSPs greatly improve the broad phase by culling out any brushes a game object or entity is never (at least for the current cycle) going to hit.
Daaark
Daaark
I can never go back to brush based editing. I like to just make whatever shapes I please, and deal with the individual polygons on in a completely freeform way. Something I could never do in a brush based editor, because you pull one vertex and it deforms the whole object, to keep it 'legal'.

Also, when you made a room in a brush based editor, you had a whole object just for the floor, with it's own 4 sides, instead of just a quad.

I remember mapping for the game I posted the screen shot for above. They licensed a brush based editor, but the game was just polygonal meshes with walk meshes for the players, and rough collision with the environment. So you've made a map, but then you'd have to select all the extra faces on the floor and set them to NO_DRAW to optimize them out, and the exporter converted it all back to polygons.

The partitioning was just boxes called Sectors that we placed down. If you could see that box in the frustum, the sector was rendered. Simple enough.

When using DeleD, it's the reverse. To get your data into torque, you need a plugin that converts all the raw polygon data back into brush based geometry, often at the expense of shape and UV control!
Kwizatz
Kwizatz
Well, at least in principle, you can make your whole level in free form and then build collision geometry underneath using brushes with a NULL shader, you'd have to either break the free form geometry into detail entities or have the BSP compiler break it and sort it for you.
guanohead
guanohead
The point is that most level editors these days still use brushes. So quark, while an old app, still works essentially the same as and can output the same formats as hammer, UnrealEd and radiant.
Another example of my question: You can edit the prefab file and choose to update the instances of the prefab in a level your designing. Seems like a good idea to me, why wouldn't other companies like epic and valve include things like that in their editors? I saw some mention of negative brushes when checking out unreal 3, but that's about it. Also, if there is an editor that includes features like this, why wouldn't people embrace it?
Edit: I don't mean prefabs you download, I mean prefabs you make, save and collect for consistent level design. Making a bridge and using it in a few places for example.
Edit: I'm thinking that: A) quark isn't packaged w/ any engine so you have to walk off of the beaten path a bit to find it. B) It's complex. Perhaps too complex to be inducted smoothly through word of mouth. These are reasons I've come up with for why quark isn't so popular.

[Edited by - guanohead on October 4, 2008 10:57:04 PM]
Captain P
Captain P
Quote:
Original post by guanohead
The point is that most level editors these days still use brushes. So quark, while an old app, still works essentially the same as and can output the same formats as hammer, UnrealEd and radiant.

Personally I still find brush-based editors far easier to work with than modelling-tool-esque editors, at least for the rough outlines of a level. But I suppose that's just what I got used to. :)

Quote:
Another example of my question: You can edit the prefab file and choose to update the instances of the prefab in a level your designing. Seems like a good idea to me, why wouldn't other companies like epic and valve include things like that in their editors? I saw some mention of negative brushes when checking out unreal 3, but that's about it. Also, if there is an editor that includes features like this, why wouldn't people embrace it?

Most editors nowadays allow you to import models. Modify the model and all your instances are modified. As far as I've seen, many level-designers have mixed feelings about prefabs - they're useful for consistent design, but they've also been overused by many, which has given them a controversial imago. I hardly ever used a prefab system - copying stuff around is easy if your editor of choice supports some short-hand actions for that (Ctrl + dragging in Hammer).

As for negative brushes, I don't know, as I never used them. They don't sound like they'll solve any specific issue for me or like they'd save me a lot of time though, so I'm not very eager to try out such an editor unless I knew it would offer me substantial benefits. Bah, I know I should try different editors just to see what's around. But then again, I hardly ever do any level-design anymore these days.

Quote:
Edit: I'm thinking that: A) quark isn't packaged w/ any engine so you have to walk off of the beaten path a bit to find it. B) It's complex. Perhaps too complex to be inducted smoothly through word of mouth. These are reasons I've come up with for why quark isn't so popular.

Both are compelling reasons not to choose an editor, yeah.
OrangyTang
OrangyTang
Quote:
Original post by Captain P
Most editors nowadays allow you to import models. Modify the model and all your instances are modified. As far as I've seen, many level-designers have mixed feelings about prefabs - they're useful for consistent design, but they've also been overused by many, which has given them a controversial imago. I hardly ever used a prefab system - copying stuff around is easy if your editor of choice supports some short-hand actions for that (Ctrl + dragging in Hammer).

The advantage of having the editor itself support prefabs (particularly the Duplicate functionality in QuArK) is that you get much better feedback and it's quicker and easier to change (which leads to better results). And it's still possible to do local modifications to each duplicate to reduce the visual repetition but edit the original for any large scale modifications.

A common trick is for CTF maps where you'll create one half of the map, then duplicate that to create the other half (since CTF maps are often symmetrical for fairness). Then you go back and add the detail geometry onto both halves to make them visually distinct.

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.