Direct 3D 9.0c Quake

Discuss programming topics for the various GPL'd game engine sources.
Zzanitari
Posts: 2
Joined: Thu Jan 29, 2009 10:30 pm
Location: Federal Way, WA

Post by Zzanitari »

Well I extracted the whole thing into my quake directory and then when I open it is playing sideways with GLquake graphics. And the start directory is just fine. C:\Quake is what it says.

What am I doing wrong here???
Baker
Posts: 3666
Joined: Tue Mar 14, 2006 5:15 am

Post by Baker »

I know this sucks to say, but here goes:

This is an experimental engine development thread, if you are having beginner and learner type of problems you shouldn't be using this.

This isn't a thread for hand holding but for feedback for the author to assist in the further development.
mh
Posts: 2292
Joined: Sat Jan 12, 2008 1:38 am

Post by mh »

Feedback and notification of problems are VERY important to me. :D Otherwise it will never get past the experimental stage.

What you are experiencing is a display driver that is capable of rotating the desktop. The initial display startup will choose what it thinks is the "best" fullscreen mode, which is normally the one at the end of the mode list. So you are getting something like 800 x 1280 instead of 1280 x 800 as your video mode.

I had noticed this a while back, and had taken a note that it was something I needed to fix, but never did get round to doing it.

For now the fix is to just select a different video mode (you may need to turn either your monitor or your head sideways to do this :lol: ).

Bakers point holds true, by the way. While I believe this engine is mostly good enough for some general ID1 play, I don't recommend it for use as a more general purpose Quake client. Switching to C++ and Direct3D are two huge leaps into the unknown for Quake, either of which could bring in all manner of unknown problems. Step 1 is always to see if any issues with it also occur in regular Win/GL Quake.
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
Chip
Posts: 575
Joined: Wed Jan 21, 2009 9:12 am
Location: Dublin, Ireland
Contact:

Menu graphics

Post by Chip »

Well, mh, glad I caught you here. My question is how would it be possible to use characters instead of graphics for menus?

So that I can choose the font/size for it.

And, by the way, happy anniversary.
QuakeWiki
getButterfly - WordPress Support Services
Roo Holidays

Fear not the dark, but what the dark hides.
mh
Posts: 2292
Joined: Sat Jan 12, 2008 1:38 am

Re: Menu graphics

Post by mh »

Chip wrote:Well, mh, glad I caught you here. My question is how would it be possible to use characters instead of graphics for menus?

So that I can choose the font/size for it.

And, by the way, happy anniversary.
Thank you. :D

It's easy enough to do, I already have OpenGL code for exactly that in a Q1 codebase somewhere, but it's not really high on the current priority list. Why not? Coupla reasons, the main one being that it can get messy. OS fonts have too many hangovers from the old printing press analogy that are just not suitable for bringing across to a game engine. Using a fixed character texture means that you can greatly simplify the whole process of displaying text. A second reason is that Q1 has a number of special characters which are used in the 2D displays, easy to work around though. A third reason is performance - The OpenGL method was really really slow by comparison to just blasting textured triangles on-screen. I don't believe that displaying text should impact on your framerates so much. Direct3D is probably faster (not being tied to Display Lists would help here). Fourth reason is that it didn't look good. The Q1 charset is designed in a specific way so that the characters are all legible and there's no weirdness with underhang or overhang on them. Not so with OS fonts. Fifth reason is that OS fonts are designed for printing rather than for looking right onscreen. Switching from even one size to another within the same font can have pretty radical changes on-screen (you can see this yourself in any WP app by switching from 10 point bold Verdana to 12 point bold verdana); even worse it's heavily dependent on the users display settings. This makes a nightmare of something that should be straightforward like centering text in a proportional width font.

In other words: been there, done that, it didn't work too well.

It might happen some time (it's a nice enough idea despite all of the above), but it's not high priority.
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
Chip
Posts: 575
Joined: Wed Jan 21, 2009 9:12 am
Location: Dublin, Ireland
Contact:

Fonts

Post by Chip »

Thanks for the answer. I'll lay low on this idea then. Anyway, there's a lot to do on mapping for my project, so I'll get back to work. ;)
QuakeWiki
getButterfly - WordPress Support Services
Roo Holidays

Fear not the dark, but what the dark hides.
mh
Posts: 2292
Joined: Sat Jan 12, 2008 1:38 am

Post by mh »

=peg= wrote:
"trying to save a game (both in deatmatch 0/1) -> hangs (needs a system reboot to recover, system still works fine but screen is unusable)"
I need to check that out. One of the last things I worked on was the mapshot system with save games (things had to change dramatically there with the waterwarps), and it was working on my PC fine. Are you overwriting a save game or creating a new one? Suggestion: I've noticed issues with modal dialogs that don't appear properly, and the symptoms here suggest this is related, so maybe try pressing "Y" or "N".
hmm actually, i did some more testing on this and it seems that the engine only hangs on saving when using that pegdm6_beta2 map (see my post above). It does save tho (maybe only partially) and i can load the saved game (it is listed in the list albeit nameless and no mapshot) so my guess is, it chokes on making a mapshot.
however if i load that saved game, all is fine until i try to load another saved game from a succesfully saved one, then it also hangs.. so maybe my map just violates some protocol limits or whatever... its a fairly complex one and close to the 'normal engine' limits ;)

edit:
or maybe, its just that the name of the map is too long (its over the usual 8 characters, dunno if thats a hard limit)
Just been going back working on sorting this one out; it seems to have fixed itself somewhere along the line. Which is a bit worrying, I don't like things that mysteriously fix themselves (they usually mysteriously break again soon enough).

I think the last thing I need to do pre-release is finish up fixing the translucency problem. It's done for the worldmodel, but brushmodels can behave a little weird depending on whether or not the world detects translucency (i.e. flip from translucent to opaque and back again as visible surfaces change...).
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
mh
Posts: 2292
Joined: Sat Jan 12, 2008 1:38 am

Post by mh »

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
MeTcHsteekle
Posts: 399
Joined: Thu May 15, 2008 10:46 pm
Location: its a secret

Post by MeTcHsteekle »

unce unce unce cha-cha-cha
bah
Chip
Posts: 575
Joined: Wed Jan 21, 2009 9:12 am
Location: Dublin, Ireland
Contact:

Yey

Post by Chip »

Can't wait to test it!
QuakeWiki
getButterfly - WordPress Support Services
Roo Holidays

Fear not the dark, but what the dark hides.
=peg=
Posts: 12
Joined: Wed Dec 17, 2008 11:44 pm

Post by =peg= »

woot :D

fixes/new features that seem to be working fine as of 1.4:
  • - lightmaps on ETP maps
    - OSD elements
    - shirt/pants color sliders in menu
    - load/save games + mapshots
problems/bugs:
  • - getting gibbed (splash damage from own rocket) sometimes makes it crash on respawn.
    (encountered a problem and needs to be closed)
    - on id maps: r_wateralpha <1 and r_novis 1 -> no translucency at all.
    - on maps compiled with -transwater qbsp option -> translucency works fine.
    (but maybe for compatibility sake, env textures on func_illusionary should not render translucent.. cvar toggle?)
    - i can't seem to get any music to work (but i might be doing something wrong).
    ds_musicdir "music"
    volume ".2"
    bgmvolume "1"
    folder structure:
    dq\music\*.mp3
    dq\id1\music\*.mp3
suggestions:
  • - crosshair_size/color/alpha and cl_crossx/y support.
    at the moment the crosshair is way off, position wise, and cl_crossx/y don't work.
    (i suspect this is planned anyways)
    - bestweapon support (equivalent of proquake).
    - independent water/lava/slime/tele alpha sliders
    use these testmaps (quake/valve220/etp formats included)
kempie
Posts: 10
Joined: Sun Dec 21, 2008 12:33 pm

Post by kempie »

Not strictly engine related but what is the process for re-lighting the ID maps with MHlight?

When MHcolour only used to produce lits and leave the bsp un-touched I'd extract a copy of the BSP's, run the util then delete the temporary copy.

Now that the bsp is modified is it possible to return them to the pak or should I just extract the whole pak contents and delete the pak itself?

Cheers, kempie
Chip
Posts: 575
Joined: Wed Jan 21, 2009 9:12 am
Location: Dublin, Ireland
Contact:

OK

Post by Chip »

Well, you should be able to return the BSP file to the PAK using one of the generally available utilities such as PAKExplorer or WinPAK. By extracting the whole PAK could impact the game speed by as much as 10%, depending on the game engine you use.

You should, however, keep the old BSP safe, in case something goes wrong.

@mh: Some of the things I've noticed while playing 1.4 version:

Regarding the coloured lighting, it works OK with rockets and grenades, however it produces horizontal tearing when using the lightning gun.

The water is no longer translucent (as it used to be in 1.3 - even partially). Probably 1.4 requires fully vised maps in order to properly work.

The increase in speed is noticeable, and I like the intermission text info more than the original. I did not have time to play with skyboxes and external textures, but I promise I will.
QuakeWiki
getButterfly - WordPress Support Services
Roo Holidays

Fear not the dark, but what the dark hides.
Squirt
Posts: 30
Joined: Fri Jan 21, 2005 2:08 am

Post by Squirt »

very awesome! I just tried a round of kickflip quake with it and it worked perfect.

I really like the speed of it :)
mh
Posts: 2292
Joined: Sat Jan 12, 2008 1:38 am

Post by mh »

Okeydokey, getting back into the swing of things after a short break. :D
Regarding the coloured lighting, it works OK with rockets and grenades, however it produces horizontal tearing when using the lightning gun.
That's my "rapid fire muzzleflash" code, a hangover from the (can I say "aborted" now?) old GL engine. It'll have to be made into a cvar and defaulted to off.
The water is no longer translucent (as it used to be in 1.3 - even partially). Probably 1.4 requires fully vised maps in order to properly work.
on id maps: r_wateralpha <1 and r_novis 1 -> no translucency at all.
Messed up again. :( I think I'm just going to revert this to the simpler old GLQuake-like behaviour at this stage, too many variables and too many things to go wrong.
maybe for compatibility sake, env textures on func_illusionary should not render translucent.. cvar toggle?
Nice enough idea but the client doesn't know what a func_illusionary is. I think for consistency sake all bmodels should have the same anyway (thinks - this is one bad thing about translucent liquids on bmodels - they can give away secrets like that either way).
crosshair_size/color/alpha and cl_crossx/y support.
at the moment the crosshair is way off, position wise, and cl_crossx/y don't work.
In the works. I'll be adding a full crosshair menu, positioned like other HUD elements (so if you want it bottom-right corner you can have that too :lol: )
independent water/lava/slime/tele alpha sliders
I'd thought about something like that but it seems too fiddly. Some people will want full control over each, some will want just a single cvar for everything; I think the way I have it is a reasonable compromise. If I can think of another way I'll see what can be done, but no promises.
The increase in speed is noticeable
:D :D :D
It is nice, isn't it?
I like the intermission text info more than the original
Just seemed to make sense to keep this consistent with the SP scoreboard, which in turn is now consistent with the DM rankings.
getting gibbed (splash damage from own rocket) sometimes makes it crash on respawn.
(encountered a problem and needs to be closed)
I noticed a similar crash in the Hard lava pool in start.bsp but was never able to reproduce it. Now that I have something else to work off, I'll see what can be done.
bestweapon support (equivalent of proquake)
Strikes me as something more appropriate for QC (...if it is what I think it is...), but I'll have a look at how PQ does it, and if it tickles me in the right places I might do something.
i can't seem to get any music to work (but i might be doing something wrong)
I have ds_musicdir "music" and MP3s in "C:\Quake\ID1\Music". Might be codec-related...
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
Post Reply