Search found 2292 matches

by mh
Thu Jun 08, 2017 2:24 pm
Forum: Engine Programming
Topic: Good docs on BSP rendering?
Replies: 13
Views: 7181

Re: Good docs on BSP rendering?

The problem is that I didn't find any resource that explain all the cases where you should or shouldn't use pointers That's because there isn't such a resource. Pointers are one of those topics where if you ask 5 different people you'll get 5 different answers. A modern C++ programmer will tell you...
by mh
Wed Jun 07, 2017 10:52 am
Forum: Engine Programming
Topic: QBSP-VIS-RAD compiling process detailed documentation?
Replies: 5
Views: 4842

Re: QBSP-VIS-RAD compiling process detailed documentation?

Michael Abrash’s Graphics Programming Black Book is a source of information, but don't expect it to take you on a line-by-line trip through the code. It's available for free online here: http://www.drdobbs.com/parallel/graphics-programming-black-book/184404919 Relevant to lighting are chapters 68 an...
by mh
Mon May 08, 2017 10:21 pm
Forum: General Programming
Topic: xInput (xbox360 controller) in quake engines
Replies: 3
Views: 5171

Re: xInput (xbox360 controller) in quake engines

I can't remember why I used them for strafe, although I think that the N64 version of Quake used the equivalent buttons, and I would have probably followed that lead.
by mh
Sat May 06, 2017 2:38 pm
Forum: General Programming
Topic: How to compile WinQuake in 2017?
Replies: 6
Views: 4848

Re: How to compile WinQuake in 2017?

With VS 2008 (and 2008 Express) you can use gas2masm in the stock project, directly from source, to convert the .s files to .asm files, then remove the .s from your project and add the .asm; result will have the constraint that it's no longer portable between compilers of course but as a trade-off y...
by mh
Fri May 05, 2017 10:56 am
Forum: General Programming
Topic: How to compile WinQuake in 2017?
Replies: 6
Views: 4848

Re: How to compile WinQuake in 2017?

Visual C++ 2008 Express is capable of compiling WinQuake direct from source and without needing to install any other headers, libs, MASMs, or anything - just a fresh install of VCPP on a fresh install of Windows and fix up the crap with hwnd_dialog and it works. The only other thing you need to do i...
by mh
Thu Apr 13, 2017 4:04 pm
Forum: Engine Programming
Topic: Hardware Occlusion queries.
Replies: 15
Views: 10358

Re: Hardware Occlusion queries.

Soft particles is the term you're looking for: http://blog.wolfire.com/2010/04/Soft-Particles
by mh
Wed Apr 12, 2017 7:08 pm
Forum: Engine Programming
Topic: Hardware Occlusion queries.
Replies: 15
Views: 10358

Re: Hardware Occlusion queries.

It also breaks your ability to do batching/instancing, so you really need to evaluate performance both with and without rather than just assume that it will be faster.
by mh
Tue Apr 11, 2017 3:43 pm
Forum: Engine Programming
Topic: Hardware Occlusion queries.
Replies: 15
Views: 10358

Re: Hardware Occlusion queries.

With occlusion queries you're meant to issue the query, then come back a frame or two later and fetch the results, otherwise you've just broken CPU/GPU pipelining and you've done the equivalent of a great big glFinish call in the middle of your code. If fetching the results immediately doesn't reduc...
by mh
Tue Apr 11, 2017 3:35 pm
Forum: Programming Tutorials
Topic: Bug fix - Framerate-independent Damage and Bonus shifts
Replies: 12
Views: 9652

Re: Bug fix - Framerate-independent Damage and Bonus shifts

You should be getting the same problems on all of your cvar initializations too: typedef struct cvar_s { char *name; char *string; qboolean archive; // set to true to cause it to be saved to vars.rc qboolean server; // notifies players when changed float value; struct cvar_s *next; } cvar_t; There i...
by mh
Mon Mar 27, 2017 3:23 pm
Forum: General Discussion
Topic: Old school quake, well not quite but
Replies: 45
Views: 41313

Re: Old school quake, well not quite but

Is this the one that does a glReadPixels every frame and then computes bloom on the CPU? That was another piece of crap that needs to be killed.
by mh
Wed Mar 22, 2017 4:09 pm
Forum: General Discussion
Topic: Old school quake, well not quite but
Replies: 45
Views: 41313

Re: Old school quake, well not quite but

Yeah, if you're crashing inside the VM while playing a demo, then you're more likely to have a bad pointer transferring execution to random memory locations than you are to have anything wrong with the VM.
by mh
Wed Mar 15, 2017 10:21 am
Forum: OpenGL Programming
Topic: weird behaviour after changing to vertex arrays
Replies: 12
Views: 5504

Re: weird behaviour after changing to vertex arrays

No, the idea isn't to darken the lumas.

Darkening the lumas is the bad behaviour that happens with other methods. Using a max blend doesn't darken the lumas.
by mh
Tue Mar 14, 2017 4:18 pm
Forum: OpenGL Programming
Topic: weird behaviour after changing to vertex arrays
Replies: 12
Views: 5504

Re: weird behaviour after changing to vertex arrays

For luma textures I prefer: glBlendEquation (GL_MAX); glBlendFunc (GL_ONE, GL_ONE); This setup isn't 100% accurate to software Quake but does resolve one problem with others, which is cases where (with overbrights) the (diffuse * lightmap * 2) calculation actually comes out brighter than the luma te...
by mh
Sun Mar 12, 2017 12:30 pm
Forum: OpenGL Programming
Topic: weird behaviour after changing to vertex arrays
Replies: 12
Views: 5504

Re: weird behaviour after changing to vertex arrays

Check your glTexEnv calls as well. It's actually a good idea to set state before drawing rather than unset state after drawing. The latter approach can often leave unwanted left-over state that affects drawing of subsequent objects (or performance) in weird and unexpected ways. Stock Quake code is, ...
by mh
Mon Mar 06, 2017 8:16 pm
Forum: Engine Programming
Topic: FitzQuake Mark V - Easy to compile and ...
Replies: 115
Views: 427079

Re: FitzQuake Mark V - Easy to compile and ...

It's not the old crap detail map code, it is real normalmaps :) it just uses player position to calculate the bump vectors instead of light. Are you ashamed of that code ? :shock: Even allowing for the player position thing, the rest of it is completely mathematically incorrect. There's no rescalin...