@pulsar
#470 posted by Baker on 2016/12/02 00:25:29
@pulsar - carry on knowing the feature will exist in a few hours ;-)
I'm slowboating a little because I noticed some scenarios I didn't consider and uncovered what might explain why all my attempts at adding alpha masked textures in the software renderer failed while looking through the mirror code, which doesn't matter right now but has me slightly annoyed at myself.
So I'm walking through the several pieces to make sure I didn't make any mistakes.
@c0burn
#471 posted by Baker on 2016/12/02 00:34:41
Already supported for crosshair 1, but I sense you may know that since you said crosshair 2.
Crosshair 1 is gfx/crosshairs/default.tga, which I am thinking is the same as DarkPlaces, but I can't really remember and I know DarkPlaces supports many crosshairs.
I never anticipated a reason that someone would want to substitute for the dot crosshair, but I am guessing you have a scenario in mind like an alternate gun crosshair or something?
/If you have a good scenario, I'll put it the eventual to-do list because I suspect even 2 crosshairs would not suffice. As soon I get pulsar func_illusionary mirrors ironed out, Mark V version 1.1 is wrapped and I plan on taking a break for a few weeks (I'm kinda burnt out).
@gunter
#472 posted by Baker on 2016/12/02 00:35:55
So the difference in the QMB particles is that I can turn them off?
Otherwise previous issues still exist.
Could you identify which ones? I thought I got them all, but maybe not?
@c0burn - Extra Thought
#473 posted by Baker on 2016/12/02 01:00:36
Is it just a 2nd crosshair for a gun?
If you tell me what DarkPlaces expects the replacement texture name to be, I'll see if I can add an alternate crosshair 2 to version 1.1
And I'll change the dot crosshair to be crosshair -1 (or something).
#474 posted by Baker on 2016/12/02 01:01:22
Like version 1.1 is the one I'm wrapping up now.
#475 posted by Gunter on 2016/12/02 01:04:59
#274 above -- what should be blue particle splashes sometimes come out as orange sparks (watch the splash.dem in the zip I linked to).
Even when they are not sparks, the blue QMB particles just appear then vanish without moving outward, as they do with QMB disabled.
The other issue wasn't really about particles, but about how an effect trail thinks it started where the last one ended if you are near that position; screenshots in #414 above. I found this quirk also happens with the rocket launcher trail, but it's faster moving and harder to reproduce. Try shooting a wall (like the one in the position of the screenshots), then move next to the wall and fire your next rocket, with the point of impact of the previous rocket still in your view. The rocket trail will originate from the previous impact point. Same with the trails from lava balls and knight spikes.
#476 posted by Baker on 2016/12/02 01:27:11
1) The QMB trails. Yeah, those sometimes they get confused. Inherited from the JoeQuake implementation. At some future date I'll fix that. It is hard to reproduce, annoys me too. It is more frequent with non-Microsoft compiler (Mac version has it happen more often).
So could be the compiler doing it. On longer term list.
2) Blue particles become orange ... yeah, I hear you. Likely similar issue to #1. Also I noticed Shambler charge up has slight checkerboarding and doesn't in JoeQuake -- tried to unearth the reason, couldn't figure it out.
Those little nuisances will dealt with at a future, but I think I inherited from JoeQuake implementation or compiler related or compiler optimization.
My mana bar is too low for me to take that on right now.
#477 posted by Gunter on 2016/12/02 01:55:34
The shambler thing doesn't actually look bad....
Wow, super ugly effect in DX with:
vid_hardwaregamma 0
chase_mode 2
chase_active 1
and swing the camera outside the wall. Doesn't occur in GL.
gl_clear 1 fixes it.
Is there any reason why someone would want gl_clear 0 [default]?
@c0burn - 4 Crosshair Support In Mark V 1.1
#478 posted by Baker on 2016/12/02 02:02:58
Decided to add support for multiple replacement crosshair textures.
Dot crosshair (currently crosshair 2), will become crosshair -1.
@gunter - gl_clear 0 is faster and you don't have to redraw the status bar every frame (if the status bar is solid like original Quake and not transparent or see through).
#479 posted by Baker on 2016/12/02 02:35:10
Replacement crosshair texture names will be named
gfx/crosshairs/crosshair_1.tga
gfx/crosshairs/crosshair_2.tga
gfx/crosshairs/crosshair_3.tga
gfx/crosshairs/crosshair_4.tga
Expected 32 x 32 texture with alpha channel.
A JoeQuake/ezQuake/Qrack crosshair is likely to work if it is a .tga
I named the texture names slightly different than DarkPlaces which doesn't have the underscore, because I don't know what rules/sizes DarkPlaces expects for a crosshair texture and it may suppport things like huge sizes, which I would not be willing to do.
#480 posted by Gunter on 2016/12/02 04:08:21
Is "gl_clear 0 is faster" just academic at this point, on modern hardware? Even on my ancient netbook, I can't tell any difference in performance.
#481 posted by Baker on 2016/12/02 04:54:52
Yeah, gl_clear 0 is rather academic usually.
@gunter - I may have fixed the QMB trails being jumpy. Maybe. Looks good so far.
Crosshairs in next version
Changed my mind. Per weapon crosshairs so if someone makes a single player release with a weapon they want special crosshair available, automatically takes effect.
Like if someone were to make a crossbow (Drake), could use custom crosshair for that weapon.
Crosshair details
// Yes, sadly it appears 24 weapons are possible. Quoth plasma gun is 24, as far as I can tell.
gfx/crosshairs/weapon_1.tga to
gfx/crosshairs/weapon_24.tga
gfx/crosshairs/default.tga // user's crosshair
scr_weapon_crosshair - defaults on. Use a single player release's crosshairs. Set to 0 to not use them.
crosshair 0,1,2 from previous builds continue to work as-is.
I've seen some mods that do stuffcmd ("crosshair 4") and it's just bad design. What the mod typically wants is per weapon crosshair anyway.
This will let single player releases provide crosshairs for crossbows (Drake) or even a empty texture for axe (no crosshair) or maybe a funky one for a high tech weapon.
Mark V - Build 1013 (Temp Build)
#482 posted by Baker on 2016/12/02 05:14:34
Build 1013 - Windows Open GL | DX8 | WinQuake
1) QMB trails being jumpy possibly fixed (gunter)
2) Per weapon crosshairs replacement texture support (c0burn)
scr_weapon_crosshair, defaults on -- allows single player releases to provide per weapon crosshairs. So if a mod has a crossbow like Drake (A Roman Wilderness of Pain, Something Wicked and a few others right?) or a high tech weapon and wants a special crosshair, it can do that.
User can set scr_weapon_crosshair 0 to not use the single player release's crosshair and just use normal crosshair. Player can still use gfx/crosshairs/default.tga to have a texture replaced crosshair.
Still tuning func_illusionary mirrors -- func_illusionary mirrors is not in the above build.
@gunter - Re:splash.dem
#483 posted by Baker on 2016/12/02 06:24:06
Another fine catch.
When I rewrote QMB particles, I missed something. Should be able to make the behavior proper.
#484 posted by Baker on 2016/12/02 08:00:54
If you are using using TE_GUNSHOT as a particle effect in splash1.dem, QMB modifies that into an effect.
Mark V - Build 1014 (Temp Build)
#485 posted by Baker on 2016/12/02 09:20:13
Should be the final temp build
Build 1014 - Windows Open GL | DX8 | WinQuake
Addressed some issues mostly reported by gunter and a few small things I noticed, like drawing external crosshairs slightly wrong.
func_illusionary mirrors is not in the above build.
func_illusionary mirrors will be in next build now that I finally have closed out all bugs reported. Needed to have a clean and stable base before putting in the complex changes for func_illusionary mirrors.
#486 posted by Spike on 2016/12/02 11:03:57
AFR setups will generally require gl_clear 1 in order to activate properly, while other setups won't really care too much.
why numbers for crosshairs, and not filenames?
@spike
#487 posted by Baker on 2016/12/02 11:15:05
why numbers for crosshairs, and not filenames
I'm guessing you mean model names? Like gfx/crosshairs/v_axe.tga or soemthing to that effect?
Here is just my thoughts ...
cl.stats[STAT_ACTIVEWEAPON] == (1 << i)
cl.stats[STAT_ACTIVEWEAPON] is a bit flag with 24 possibilities (but not 32? Because QuakeC is floating point, can't do unsigned?).
I used what sbar.c knows about the weapon, which is the weapon number.
Never thought of the idea of using the model name, that being said isn't it true that QuakeC could set anything it wanted as the view model weapon (including none!!)?
So QuakeC itself does not know the concept of a view weapon model, as far as I know. Someone could write some QuakeC where a fully charged weapon uses different model?
#488 posted by Spike on 2016/12/02 11:34:02
I meant for the crosshair cvar.
#489 posted by Baker on 2016/12/02 11:35:58
Which just reminded me. There are 25 possibilities, not 24. Because 0 is typically the axe (weapon 1). Makes Quoth Plasma gun weapon #25 (24th bit possibility) and Quoth sword weapon #13.
/Add to the model name thing ... hipnotic or rogue uses same model for a few weapons doesn't it? Like lava nails gun is same as nail gun, but different skin? Another possible example of how might be more confusing to use weapon model name -- if that is what you meant ... and might not have been.
#490 posted by Spike on 2016/12/02 11:39:05
qc can't change the viewmodel's skin. so they're different models if they have different skins.
the exception being .viewmodelforclient, but your engine doesn't support that... yet?
Ah!
#491 posted by Baker on 2016/12/02 11:40:55
Ok, Mark V ...
crosshair 0 (none)
crosshair 1 (Quake +)
crosshair 2 (dot)
That's it. I was briefly going to change to implement to number system like DarkPlaces.
Then I thought it about some more, and decided to tie it to the weapon number instead. Beats passing around "stuffcmd crosshair 1" -- I hate stuffcmd.
Mark V crosshair remains simple system .. crosshair 0, crosshair 1 (+), crosshair 2 (dot) are only possibilities.
But if a mod contains any weapon crosshairs (scanned on gamedir initialize), it will display the weapon crosshair unless user sets scr_weapon_crosshair 0 to override.
@spike
#492 posted by Baker on 2016/12/02 11:43:47
No extensions and still pure Quake at the moment.
At a future unknown time, I anticipate making another run at acquiring more Spiked Quakespasm's features.
#493 posted by Spike on 2016/12/02 11:44:46
also, STAT_ACTIVEWEAPON is sent as a byte in vanilla quake, and is thus normally limited to 9 different values, only 8 of which might be present in vanilla.
but that doesn't mean that they might be set on the server anyway, or that you'll never have more than one bit set.
hacking it to support more weapons is one of the first things that many mods need to achieve. you're better off using STAT_WEAPON.
unless you're making a new addition for ezquake anyway. other engines should avoid those hacks like the plague, but its too late for poor ezquake.
@spike - Part 2
#494 posted by Baker on 2016/12/02 11:48:58
2nd reason I implemented the per weapon crosshair system instead.
I very well know some people will end up making per model crosshairs for certain mods because now it requires zero QuakeC support.
You could just make a crosshair for the Drake crossbow in Something Wicked and name it appropriately and do it in 30 seconds or so.
|