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
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. 
You Say Tomato, I Say Tomato 
Doesn't really work in text, does it?*

Anyway, "maths" is what we say in England, "math" is what Americans say. I wonder if they also say "mathematic" instead of "mathematics".


Unless I put it like this "You say tomayto, I say tomarto". Works best in phonetic script, but this doesn't support rich text, and most people don't have the phonetic script fonts installed anyway. 
The American Says: 
Mathematics 
Than 
Anyway, "maths" is what we say in England, "math" is what Americans say. I wonder if they also say "mathematic" instead of "mathematics".

We say "math" which is short for "mathematics." I can only assume you say "maths" which is short for "mathsematics." 
More Like 
mathsemantics

lol

*shoots self* 
Hipnotic Spawn Problem 
I'm working on my Quake Travail maps and am using Hipnotic spawn code (func_spawn) to bring in some of my enemies. This is needed to keep bmodel counts down by replacing teleport brushes with direct spawns.

I have a problem in that if I want to spawn a floating scrag, it just drops until it hits the ground. This results in them not being where I want them and if they drop into lava or water, they are effectively invisible.

Is there anything I can do to stop the drop? Any workarounds can't use bmodels otherwise I'd just go back to the old spawning method if I have bmodel counts to spare. 
Scragbait 
I've just had a quick look at hip2m1.bsp (Ancient Realms), and the scrags in that particular map are spawned in the traditional manner.

I've had a quick look at the func_spawn code and it's noticable that scrags are not included in the random spawn function. Also, there is a reference to MOVETYPE_NONE; in the section that deals with the non-random code.

I don't know enough about the code to go any further but perhaps the above is a pointer to someone else to help you (if this was of any help anyway?) 
Model Precache 
Saddly i have hit the limit yesterday :(
I think the reason is I have too many triggers and func_walls in the level (used some in light supports). I have two questions:

Can I combine func_wals from nearby places in the map into one bigger func_wall?
Do trigger_counter and trigger_relay eat up a precache slot everytime I use them in the level? 
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.