News | Forum | People | FAQ | Links | Search | Register | Log in
Mapping Help
This is the place to ask about mapping problems, techniques, and bug fixing, and pretty much anything else you want to do in the level editor.

For questions about coding, check out the Coding Help thread: https://www.celephais.net/board/view_thread.php?id=60097
First | Previous | Next | Last
Sad News 
The reliable and also last known mirror of planetquake is now gone. ftp.sunet.se's idgames2 archive has been permanently deleted.

There are still some other idgames2 mirrors, but with far less content. 
Goddammit 
That's not true. How come sunet had more content than other idgames2 mirrors? I mean mirror is mirror after all.

I will try to contact them and get a mirror of sunet idgames2 at Quaddicted. At least as much as I can squeeze on my space :) 
WAH! 
Sunset.se is the best mirror in my experience - where other's faltered, SUNET.SE STOOD ERECT! 
ATTN Compiler Dudes 
Have the old -threads switches on the compiler utils been ripped out?
Now that I'm on a dual CPU system, it would be nice to be able to take advantage of it...
(Right now the compile won't use more than 50% CPU.) 
They've Never 
worked in Win32, only alpha (unix). I just removed the options. 
Oh Blah 
Still, I figured I could set it to run on realtime and still have windows be responsive since it only runs on one CPU anyway.
Not sure if it makes it go any faster though... 
I Wouldn't 
recommend that. You won't gain anything if you don't have other CPU-intensive processes running. And in that case, it's better to terminate them or set them to lower priority.

You could however run vis/light for two different maps simultaneously if you can specify thread affinity (i.e. manually select CPU for each thread) at startup. 
Well Yeah That's An Idea 
Too bad I'm not that multitasking. :/

Perhaps I could try to run vis and light for the same map at the same time...........
Perhaps if I made separate copies of the bsp for each process and then made some small prog to merge the visdata/lightdata lumps into one bsp... 
Models . . 
cheers, working on a monster now 3dsmax5 (until I "aqcuire" v8) and using qME - everything seems pretty straightforward, I�ve even managed to use unwrap texture properly and create a photoshop 256 .bmp for import (even though the skin painter in qME seems adequete).

>>watch this space for critical newb help errors<< ;) 
Gmaxed Out... 
According to the website:

As of October 6, 2005, Autodesk will no longer offer Gmax� software as a stand-alone product. If you are interested in other 3D animation, modeling, and rendering applications from Autodesk please check out Autodesk� 3ds Max� software. 
GMax 
I still have gmaxinst_1-1.exe 20.5 mb. 
Spiders 
Does anyone know of a good spider model for Q1. I have seen Willy the Spider but it's a bit too cartooney for my taste.

Perhaps like the D3 spiders? 
Marcher Fortress / SHIT! 
Mike - for SP the spiders in The Marcher Fortress by Ben are very nicely done, animated etc. download the map at www.quaddicted.com, but be sure to ask his permission first.

As to the use of unwrap texture - I goofed. It doesn�t work. I spent a couple of hours getting the UVW�s just right and then in qME it applied a basic x-axis planar map - ? is this a limitation of quake or qME? I ask because the UVW�s are a flat picture - is it that the engine can only render one channel per element / singular object? The UVW�s I set up were 8 seperate texture maps inside a single map (if that makes sense) but I know the base models in Quake have different maps within the same one for single objects (EG. the ranger�s, axe, muzzle flare and body are all seperately skinned).

If this is the only way to do it I may spilt the arms, legs etc into seperate entities and cap them so the join can�t be seen - a few extra polys for a much cleaner & detailed skin. 
Mike... 
Kinn used the Hexen 2 spiders in Marcher and they seemed to work just fine :) 
Spider 
cheque "the plumber" level on quaddicted.
it has a progs file with a spider and a snakeman mdl. of course you should give a word to the author. 
Preserving UVW Maps 
You can get a model with proper UV maps, if you use quark to convert it from Q2/Q3 model format to mdl. Any tools to export models to md2 or md3 should preserve the UV maps correctly, whereas no other Q1 tool does to the best of my knowledge. Quark essentially does this by splitting up the model on all the UV seams, so that in theory you could deform the model into the "pose" of the UV map, and then planar map that frame.

Because the quake model format rounds all the vertices onto a grid of 256x256x256, the seams aren't visible as all the verts on the joins snap to the same point. Of course, if you did further animation in qme, it would be possible to break the model apart at the seams, so take care when doing this or do all the animation prior to the conversion.

One thing you will have to do is consolodate all of your texture maps into one image file before you start this process, Q1 has no support for multiple maps on a single model. I'm not sure if that's what you mean by 8 seperate maps inside a single map, but as long as all 8 maps are on the same image(in the same way that ranger has the axe and gun on the same image as the body) then conversion is possible. 
People, I Have A Confession To Make 
I failed my calculus 1 & 2 classes.

I've got the following line of text
"BRUSH_PLANE_0" "3, 0, 0, 1, -160, CITY3_4, 0, 0,0, 0, 1,1" *)
which defines a brush face by giving the normal of the face (0,0,1) and the distance (-160) to it.
I need to convert it to a quake style face which should be looking like this
( -256 -128 160 ) ( -224 -128 160 ) ( -224 -384 160 ) CITY3_4 0 0 0 1.000000 1.000000
where it is defined by three points on the plane.

Now, I could probably use Google, I could sure as hell phone my mom and ask her to send me my old calculus textbook, I could also ask some of the professional math people at this establishment, but dangit, I'll ask you guys first.

Could you please help me with some mathematics for converting (0,0,1) -160 into (-256,-128,160) (-224,-128,160) (-224,-384,160)?

I'm not a complete moron when it comes to vector maths, I know a little bit about a lot of bits, but I have no idea how to put them together.
I would love if someone could just at least point me in the right direction of what I should be looking for.

Also I notice in the quake map format that the three points that are selected seem to be vertices on the brush. I guess this is not important, but perhaps it is easier to figure out the points that way? (I'm shooting in the dark, doom comic style, here people!)


*) I don't know what the first '3' or what the first '0' after the texture name means. They are 3 and 0 throughout the entire file. Maybe something like surface flags or whatever. I've ignored them anyway. 
Spides 
Thanks for the info ijed, madfox and generic. 
Preach 
ok cheers, I�ll give it a try. I�m using Max and photoshop and qME only as a converter so there shouldn�t be a problem. oye, I meant a single texture map with multiple pictures inside it mapped onto the different models / objects . . . I�ve studied this stuff and I still don�t know the terminology :/ 
Czg 
Take a look at http://www.gamers.org/dEngine/quake/QDP/QPrimer.html

In your case, you have a plane normal in positive z-direction positioned at z=-160. You just need three points on that plane that don't line up and are arranged clockwise (I think) so the normal points in positive z-direction, something like:

(1, 0, -160) (0, 1, -160) (-1, 0, -160)

Btw, the three points don't need to be vertices in the brush and AFAIK seldom are. 
More Spiders 
Has any got a working link to Requiem's Redback Spider? 
CZG 
I thought that the way Quake worked is that you needed all the planes that define a convex volume (i.e. a brush) to be able to resolve the Quake .map face definitions? You need to find the intersections of the planes to get the vertices - which is why you can't define a concave volume with a brush.

I don't really know much about this, but I wrote a .map compiler for the game I wrote at uni, which did pretty much exactly what you want (I think). It converted .map planes into polys/tris strips easily renderable by OpenGL.

Can't explain the maths, because I have completely forgotten it, but I still have the source if you are interested.

Actually, I just looked at the source, and don't understand it at all. Don't know how I wrote it :(

What are you trying to do anyway? 
Aha, Maybe This! 
Here is the function I found. Sorry if it doesn't render correctly:

bool LdfCompiler::getPlaneIntersection(CPlane& a, CPlane& b, CPlane& c, CVector& v)
{
//if denom is 0, then the planes are parallel (hence no intersection can be found between them)
float denom = CVector::dotProduct(a.n, CVector::crossProduct(b.n, c.n));
if(denom == 0) return 0;

//calculate intersection point
v = (a.d * (CVector::crossProduct(b.n, c.n))
+b.d * (CVector::crossProduct(c.n, a.n))
+c.d * (CVector::crossProduct(a.n, b.n)))
/ denom;
return 1;
}


The function takes 3 planes and a reference to a vector. The planes are resolved to calculate a point and the point is stored in the vector. The other functions called are functions of the vector class I implemented and should be pretty obvious.

LDF is the map format I used for my game. It stands for Level Definition Format. Amazing!

I might have missed what you are looking for completely, but I hope this helps.

I got the maths from a textbook called real-time rendering I think. There is also a really good Half-life format map compiler writing guide that I used for sorting out some problems I had, but I don't know if I still have it.... it is possible. Email me if this sounds helpful. 
Er 
don't bother emailing, since I haven't put it on my website or here or anything. Just post in here again.

Anyway, you need three planes to get one vertex. You need all the planes of a brush to be able to get all the vertices. I think there can be certain cases where a vertex can be defined twice by two or more different sets of planes (not sure of this though) so if you want to convert a brush into tris for some reason, you might need to check all the vertices are different.

Also, since I am a shit coder and my maths is crappy, the function I posted is probably less than optimal. 
"Maths" 
WTF? Math. 
First | Previous | Next | Last
You must be logged in to post in this thread.
Website copyright © 2002-2024 John Fitzgibbons. All posts are copyright their respective authors.