#442 posted by Baker on 2016/12/01 06:47:17
nomonsters 1 - and they don't act so crazy
They still move a little funny, but not insanely funny.
 Baker
#443 posted by PuLSaR on 2016/12/01 07:07:22
I seems like the func_illusionary mirror support doesn't work so far. I'll experiment more with that when I get from work.
 @pulsar
#444 posted by Baker on 2016/12/01 07:16:17
I'll be taking care of that. You need not worry about that. Haha.
Before the night ends in my time zone on the other side of the world, there will be mirrory func_illusionary.
When the guy who made Menkalinan, one of my favorite maps of all time, has an idea -- yeah, I think I want to play that map ;-)
 @spy
#445 posted by Baker on 2016/12/01 07:29:03
I thought about putting instructions on the proper way to run nehahra on the page for Mark V. Or even block / warn in the engine.
Then I decided against it.
The way I see it --- when knowledgable people like yourself encounter a small issue, it enables the knowledgeable crowd who read the discussion to help the newbies who would mess it up no matter how hard I documented it. And gets the less knowledgeable to read threads to expand their horizons.
Also: the awesome thing about func_msgboard is that the participants are expert level and through discussions in threads like this, it educates to create more knowledgeable users.
 @spy - Fmod.dll From Mark V Page
#446 posted by Baker on 2016/12/01 07:31:31
You need that one. One in Spirit's very nicely repackage is not good fmod.dll.
#447 posted by Baker on 2016/12/01 13:34:04
Done for next version, but no time to build on Windows and then the Mac and package and rebuild the installer version, etc. etc.
1) Mirrors for func_illusionary, mirror scanning moved to cls.signon == 2 (after all the static entities received, walks any statics too. Tested by turning an E1M1 door into a func_illusionary as a test)
2) IPv4 printing on Mac fixed
3) Mac startup fixed when Mark V isn't in a proper Quake folder
4) Autosave was saving as wrong name, fixed.
5) Installer can handle zips like RetroJam5 which had unanticipated structure.
6) Non-issue: Nehahra menu (already coded, lack of -nehahra caused issue)
7) Non-issue: Alpha channel 2D elements (already supported)
8) QMB reworked for gunter ... QuakeC originated particles either render via QMB consistently with expected appearance or if individually disabled, with QMB active, via qmb_particles_quakec 0 --- draw particle in the classic way. Results generally in a more mod friendly implementation of QMB, where its behavior is predictable.
9) Something else for the Mac. Forgot what it was.
Note to self: Update page with link to the codecs folder. Put a .txt in there that says name of parent site for each of the 2 and put the (slightly annoying) instructions to disable the XVID status window via the registry (i.e. Run regedit.exe and find key "HKCUSoftwareGNUXviDdisplay_status", set to 0.)
http://www.optimasc.com/products/vp8vfw/index.html
https://www.xvid.com/download/
 Can't Keep Up With These Updates
any eta when I get to try out splitscreen w/ controllers?
#449 posted by Gunter on 2016/12/01 18:00:47
Yes, update! We are the test gorillas who want to beat on your luggage to see if it breaks!
https://www.youtube.com/watch?v=5b1aRop-UbU
 @Baker
#450 posted by mh on 2016/12/01 18:44:11
If you were ever interested either in upgrading the wrapper or writing a new one using Mark V, FitzQuake 0.85 or Quakespasm as the base...
OK, I've done the initial port of the wrapper to D3D9 with a Fitz 0.85 base (actually the original DirectFitz I made years ago). This is just the "do enough to get it working" stage, but it has established that (1) the port works, and (2) it's viable to move forward from.
If you have any requests for features to add to it, now is a good time. I'm thinking glCopyTex(Sub)Image and the full set of combine modes would be good candidates. Stencil. Fix polygon offset. Texture matrix stack. Vertex arrays. NPO2. I just mention these but without commitment to do all of them.
 @mh Re:wrapper DX 9 Thoughts (1 Of 2)
#451 posted by Baker on 2016/12/01 20:25:10
If you have any requests for features to add to it, now is a good time.
1) Enough that I can do mirrors (stencil plus depth splitting trick - split range into 0 to 0.5, 0.5 to 1) .. Despite not having stencil, in theory mirrors should work in DX8 (without stencil, so glitches particular for the sky), but the wrapper hates me when I try and it doesn't work -- probably fighting an optimization.
2) 8x multitexture (which was easy, even for me), GL_TEXTURE_MATRIX (which I have zero chance of doing myself). "Combine".
3) The feature where you copy the screen to texture (FitzQuake's oldwater). Yeah, I know you aren't fond of that one.
 Hmmm
#452 posted by PuLSaR on 2016/12/01 20:36:46
Mirror func_illusionary doesn't work for me in the latest release as well. I should have mentioned that these are AD func_illusionary, though I doubt they have any difference with the regular ones. I tryied both every side mirror texture brush and one face with with mirror texture and the rest covered by skip texture. Neither of them work.
I'll try to do that in vanilla quake and let you know if it works.
 @mh (fifth Might Wanna Read)
#453 posted by Baker on 2016/12/01 20:37:23
No obligation and separate issue - but you've written controller support before and no one else does Microsoft Direct X type of coding on your level ... and XInput is probably similar ...
I've looked at the XInput tutorials from Microsoft and my head about exploded all the monotonous steps involved and not necessarily even understanding what is going on for sure.
Multiple controller support (hell even single controller) where each controller can be read separately once per frame.
-----
No obligation, but since that kind of thing falls in your wheelhouse, I thought I'd bring the topic up as an example of something nigh impossible for me, but that falls into one of your primary strengths categories.
 @pulsar
#454 posted by Baker on 2016/12/01 20:39:55
Haven't updated the version yet, got to audit the code, etc. I'll do I "New Version" kind of post after I update it. Might be 2 hours.
 Ah
#455 posted by PuLSaR on 2016/12/01 20:54:24
I see. I've even made a special test map for it. Can upload it for you for easy testing.
 @gunter
#456 posted by Baker on 2016/12/01 20:55:47
Exactly! Yeah, everyone's beta testing and the level of detail has been incredible. Best experience as an engine coder ever.
And your unique perspective as an active QuakeC coder running a server has been an invaluable contribution.
Very nice that everyone has been bringing some unique perspective to the table.
 @pulsar
#457 posted by Baker on 2016/12/01 20:56:53
Yes, do that!
 Test_mirror
#458 posted by PuLSaR on 2016/12/01 21:03:52
#459 posted by mh on 2016/12/01 21:06:39
...XInput is probably similar...
It's not unfortunately; XInput is actually very different.
I'm not certain what tutorials you've looked at, but IIRC XInput is just 10 or so lines to initialize, then another 5 or so to read the input. Everything else is translating input data from XInput format to Quake format (i.e. button mapping, etc).
Quake's joystick code is NOT DirectInput - ignore what it says in the comments in in_win.c; it's NOT DirectInput, it's actually a totally different Windows multimedia controller API. DirectInput joystick code looks a little like the DirectInput mouse code.
I wouldn't touch multiple controller support with a 10 foot pole. You need support for multiple clients first, and that's not a light undertaking. I know you're getting requests for splitscreen, but it's not something you can just easily patch in. I think your time is better spent elsewhere.
 @mh
#460 posted by Baker on 2016/12/01 21:15:22
It's all good. I thought I'd ask.
(@fifth: eta = very murky. I will promise that it will happen at some point. Maybe spring. It's important to me.)
/Yeah, I know joystick in Quake isn't DirectInput but multimedia.
#461 posted by mh on 2016/12/01 22:55:59
The feature where you copy the screen to texture (FitzQuake's oldwater). Yeah, I know you aren't fond of that one.
Done.
I just need to sanity-check my bottom-left-is-origin to top-left-is-origin conversion, but otherwise - done.
An interesting FitzQuake bug arose while doing this, that's specific to a GL vs D3D difference.
In GL the current viewport doesn't affect glClear calls.
In D3D the current viewport does affect IDirect3DDevice9::Clear calls.
So in other words, in D3D the clear is bounded to the viewport dimensions.
This came up because FQ sets a smaller viewport to draw the warp images, but doesn't unset it before clearing; that small viewport is therefore the only cleared region. A "GL_SetCanvas (CANVAS_DEFAULT)" was needed in R_Clear to work around this. You could probably also put it in R_UpdateWarpTextures.
This wouldn't affect D3D10+ where the clear is done directly on a render target view, and I have no idea if it affects D3D8-.
Odd what MH is saying, you had a video with multiple clients and splitscreen?
I don't have much choice but to wait... us non-coder guys are at the mercy of whatever you guys decide tbh. :P
 Mark V Build 1011 - Temp Build
#463 posted by Baker on 2016/12/01 23:03:08
pulsar - this doesn't have func_illusionary mirrors. I'm putting that in separate 1012 build in case I messed up something ...
Build 1011 - Windows only GL|DX8|WinQuake
Everything except func_illusionary mirrors, in case func_illusionary mirrors explode something.
@fifth - I multitask extremely poorly. Can't get into deep discussion with MH about that without jeopardizing what I'm doing now. If I mess up 1 line of code ... you get the point.
#464 posted by mh on 2016/12/01 23:05:03
I also multitask poorly but am less disciplined about it, so I'm heavily dependent on people just backing off. :)
 @mh
#465 posted by Baker on 2016/12/01 23:12:42
Yeah, ...
This func_illusionary mirrors thing is cool, but has several points of modification. Don't want to unleash an exploding build.
/Ok .. concentration time ...
 Vsync
#466 posted by mh on 2016/12/01 23:17:46
Implemented WGL_EXT_swap_control - vsync no longer needs a mode change and works perfectly.
|