News | Forum | People | FAQ | Links | Search | Register | Log in
Mark V - Release 1.00
http://quakeone.com/markv/

* Nehahra support -- better and deeper link
* Mirror support, "mirror_" textures. video
* Quaddicted install via console (i.e. "install travail")
* Full external texture support DP naming convention
* Enhanced dev tools texturepointer video inspector video
* IPv6 support, enhanced server capabilities
* Enhance co-operative play (excels at this!)
* Software renderer version (WinQuake)
* "Find" information command (ex. type "find sky")

Thanks to the beta testers! NightFright, fifth, spy, gunter, pulsar, johnny law, dwere, qmaster, mfx, icaro, kinn, adib, onetruepurple, railmccoy

And thanks to the other developers who actively provided advice or assistance: Spike (!), mh, ericw, metlslime and the sw guys: mankrip and qbism.

/Mac version is not current yet ...; Linux will happen sometime in 2017
First | Previous | Next | Last
 
its at times like this that I apprechiate vulkan's WSI (windowing system integration).
its a bit like gl (in that its simply attached to the client part of a window), except with explicit swapchains like d3d (but cleaner and less annoying. its just much more sane than either.
fte now uses the same gl_vidnt.c file for both gl and vulkan. one renderer creates a wgl context attached to the window, the other a wsi surface. which is much nicer than having d3d doing random poorly-documented things to your window thereby breaking things.

vulkan's backbuffer is actually an image just like any other, which means you can blit true-colour software-rendered images to the backbuffer using only simple buffer copies, no glsl required. unfortunately the queues and stuff are kinda annoying. when everything uses compositors anyway, there's not really any difference between the backbuffer and a texture nowadays - render-to-texture for all!

I assume d3d12 is similar, but I've never really looked at that. 
 
From what I've seen of D3D12 it's much the same DXGI interfaces as D3D11, so you've got the same swapchains, texture with rendertarget view, and arseways crap of running in one of two modes: "we control everything and nothing works the way you actually want it to" or "we control nothing and you have full responsibility for all of the pain and suffering" - neither of which are the way you'd actually like it to run. 
 
eww, dxgi 
Ignored Opengl32.dll In Quake Folder Implemented 
My idea of doing a chdir to id1, forcing the opengl32.dll to load, then chdir back failed.

Had to revert to Spike's LoadLibrary/GetProcAddress suggestion.

Wasn't a big deal, since Mark V is already setup to rewire rendering functions (OpenGL vs. Direct X 9, etc.)

A call to getenv("COMSPEC") /* should be highly retrocompatible*/ obtains the system directory where the correct opengl32.dll should live.

If it doesn't find the .dll there, or can't load that .dll or any of the functions fail to load, it describes the problem and asks user to rename opengl32.dll

It also prints a few lines of bronzed text complaining.

Why does this matter?

Because GOG.com --- the DRM-free game buying site --- distributes GLQuake complete with a toxic OpenGL32.dll provided. 
 
qboolean CheckOpengl32(void)
{
FILE *f;
char ogname[1024];

Q_snprintfz (ogname, sizeof(ogname), "%s\\opengl32.dll", com_basedir);
if ((f = fopen(ogname, "rb")))
{
fclose (f);
return true;
}

return false;
}

/*
===================
VID_Init
===================
*/
void VID_Init(unsigned char *palette)
{
int i, existingmode;
int basenummodes, width, height, bpp, refreshrate, findbpp, done;
HDC hdc;
HGLRC baseRC;
DEVMODE devmode;
extern void VID_Menu_CalcConTextSize (float cw, float w);

if (CheckOpengl32() == true)
Sys_Error ("Please delete the opengl32.dll from the Quake folder."); 
@R00k 
I've had one that similar to that in ProQuake for ages.

I wanted one that doesn't require any user action at all and simply ignores it, haha ;-)

Mission Accomplished. 
@dumptruck_ds 
Qrack is an old engine based on joequake .13dev (circa 2004) I released a final version for Quake's 20th bday, hense the silly webpage; looks like a 90s website. The "whatsnew.txt" is in the zip in the Qrack folder. it's just a changelog (where most of the documentation can be discerned). Newest version will load arcane dimensions and has protocol 666 etc but not bsp2 support. it's basically just my personal project to keep me entertained and doesnt try too hard to do anything else :P 
@R00k Part 2 
It requires at a minimum using /DELAYLOAD:opengl32.dll in visual studio

Or I guess simply not linking to the opengl32.dll at all is also an option. 
@baker 
nice, "**warning Mark V detected an evil troll, killed it with the glowing sword, you may proceed.."

"The Troll Room
This is a small room with passages to the east and south and a forbidding hole leading west. Bloodstains and deep scratches (perhaps made by an axe) mar the walls.
A nasty-looking troll, brandishing a bloody axe, blocks all passages out of the room.

Your sword has begun to glow very brightly.
The troll swings his azxe, but it misses.

>swing sword
Whoosh!
The troll swings, you parry, but the force of his blow knocks your sword away.

>get sword
Taken.

The troll hits you with a glancing blow, and you are momentarily stunned.

>kill troll with sword
The troll is staggered, and drops to his knees.
The troll slowly regains his feet." 
Beer Etc. 
I've always wanted to make a QuakeC console version of some kinda Zork clone hehe to play while wiating for a multiplayer game to start. ;) 
Arcane Dimensions 
A fair number of the Arcane Dimensions maps are BSP2.

Spike added BSP2 in this patch: http://triptohell.info/moodles/junk/markv_bsp2.zip

I'm sure I've posted you a link the above before. BSP2 is way easier than protocol 666.

There is also the Quakespasm acquisition of that BSP2 patch at https://sourceforge.net/p/quakespasm/patches/11/ which has a diff file. 
 
I do have a working version with bsp2 support but somehow it broke my normal quake skys. Sky boxes work fine. Spike made suggestions yet i havent had any time to fix :S 
#819 
O_o really? Would be interesting. 
Happy Fun Time! 
In 24 hours or less, some fun stuff to play with ...

* A very nice Direct X 9 build, with mirror support.

* Ubuntu Linux Open GL build
* Ubuntu Linux WinQuake build

* GL builds have MH WinQuake-style water warp. Default setting. Setting r_waterwarp 2 will get the FitzQuake look.

* Windows WinQuake through Open GL for KillPixel. I also happened to need to make this for Linux purposes.

* GeForce/Nvidia issues and DPI annoyances should be gone.

This feature is somehow a super-perfect fit with Quake. You don't quite realize it is missing until you have it available, and then not having it feels wrong.

* A rather extensive changelog, but I couldn't say for sure what is in it.

* I do know it has a worldspawn option for dumptruck_ds to set the sound distance.

* WinQuake version now also has resizable window in real-time like the Open GL and Direct X 9 versions.

* Mac mouse acceleration fix (The "SleepWalkr" fix, as I think of it).
* IPv6 tune-up on non-Windows platforms giving it all the nice features available in the Windows version.

Linux versions have about 99.5% of the Windows feature set, with the main omission from my perspective being video capture -- which the Requiem engine has and I haven't had time to get "X Windows"-ish with the code base.

Oddly enough, the Linux build requires SDL 2.0.5 ... at one point I was preparing for an Android build (which isn't coming anytime in the new future, but I always lay foundations in advance) and I need SDL for Android.

Many people think that any engine using SDL needs to have external dlls. It's not true. Just for fun, I'll throw in a Windows SDL build that requires no DLLs. To keep things relevant, I guess I'll make this SDL build a WinQuake Through Open GL SDL build for Windows. 
Sounds Interesting 
looking forward to waterwarp especially :) 
My Body Is Ready 
 
 
@fifth/@kp -- Trying to fill my mana bar for final gauntlet.

I actually have a list of 24 separate individual items on a sheet of paper to apply what I hope is the right level of polish to this.

Engine coding is all about the small ball.

Testing 4 or 5 Windows builds (GL, DX9, DX8, WinQuake, WinQuake via GL), 2 Mac builds, 2 Linux builds, making sure the Debug and Release builds are right and then in Windows making sure it works in Visual Studio and CodeBlocks is a hassle.

But if all goes well ... it'll be worth it ;-)

/Sometimes I ask myself "Ok what is the reason to do all of this again?" Usually the answer is "Because it is there." Or something, haha ;-)

No seriously, should be quite worth it. ;-) 
 
That's nice and all but is there twue rotation w/collision :-P

I heard the time is now... 
Hold Your Horses There Damage 
He needs to add 4 player splitscreen coop yet ;) 
To The Back Of The Line I Go 
... grrr, hehe 
+10 Mana 
 
Someone Set Us Up The Bomb 
Mark V - Version 1.25 Beta

http://quakeone.com/markv/older/1025_mark_v_beta.zip

http://quakeone.com/markv/media/ubuntu_linux.png
http://quakeone.com/markv/media/ubuntu_linux_winquake.png


Ubuntu Linux Open GL
Ubuntu Linux WinQuake (software renderer)

(* Requires SDL 2.0.4, only tested with Ubuntu Linux 16.04 LTS.)

Direct X 9 Renderer
Direct X 8 Renderer
Windows Open GL
Windows WinQuake (killpixel, it may work good 4 you now)
Windows WinQuake via GL (killpixel, if above doesn't this one should in theory be a sure thing)

RARE: Windows SDL 2.0.4 Open GL build (***)

(*** Does NOT require ANY DLLS - just to demonstrate that Windows engine builds using SDL2 need not have external DLLs).

@fifth - "He needs to add 4 player splitscreen coop yet" --- Yeah, exactly! Hahaha.

MH Waterwarp

All the Open GL and Direct 3D builds have MH WinQuake Waterwarp (except DX8) and it defaults on. r_waterwarp 2 is classic FitzQuake waterwarp in those engines.

(Mac version is resisting me at the moment. I'll upload source codez after the Mac version is owned.) 
OpenSUSE 
Using openSUSE 42.1 linux here.

Will try compiling for my distro. when source code is available. Will there be a MAKE file? Maybe a configuration file? 
Winquake GL Runs Great 
I haven't spent that much time in the non-gl version to say for sure, but the stuttering seems to be gone as well. How'd you do it?

minor bug in WinGL: the prompt isn't visible after selecting new game (reminder, a game has to be in session to get this prompt).

nice work, baker. this is definitely my go-to engine. I'll have more time to test it out in the coming days. *eyeballs last few mapjams* 
 
So many versions to choose from!
This will rightfully become the standard Quake client for everyone....


Well, the DX9 version no longer makes my fog look worse when gl_overbright 1 is set.


vid_hardwaregamma 0 behaves differently in DX9.
When using it, the gamma slider still works, and it does not affect my desktop gamma (just the Quake window gamma). That's nice. But txgamma does not work, so I'm getting gamma-adjusted polyblends again (which makes them too intense).


In DX9, changing to a 800x600 window causes the Quake window to... vanish completely (netbook res = 1024x600). If I start up having previously set to 800x600 window, it works but tells me I'm actually in a 800x578 window. The window looks the same as with the DX8 version when I tell it to use an 800x600 window.


It seems the SDL version doesn't play the MP3s. 
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.