[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4787: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4789: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4790: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4791: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
InsideQC Forums • View topic - Future Tutorial Ideas ...

Future Tutorial Ideas ...

Discuss programming topics for the various GPL'd game engine sources.

Moderator: InsideQC Admins

Future Tutorial Ideas ...

Postby Baker » Sun Nov 23, 2008 3:32 am

I thought this might eventually evolve to be an interesting thread.

I also want to list the ones that I am considering personally contributing to the mix, either because it involves something interesting to me or that I want to study.

1. Adding Half-Life map support

(I find Half-Life .bsp to be intriguing ;) Not because it is Half-Life, but because if most of the changes in Quakeworld were Quake 1.5, Half-Life would be Quake 1.9 as it extended base Quake to new places. )

2. Adding scoreboard ping display to standard Quake

(I'd like to completely deconstruct how it works in ProQuake and then maybe improve it slightly based off DarkPlaces implementation).

3. Adding external .ENT support (this makes life so much easier, every engine should have this).
4. Fixing GLQUAKE so it color maps dead player bodies (LordHavoc did this way back in 2000).
5. Fixing the half-underwater rendering in GLQUAKE where it looks all distorted. [It may have been in quakesrc.org forums, but if so, it is dead].

This probably died in the Quakesrc.org implosion, but it doesn't exist now so #5...

6. Fixing GLQUAKE function as a dedicated server. (it's quite easy)

Recently I've played around with NPRQuake and something I'd think would be fun to do is isolating various renderers. In the past, I would have added JoeQuake to the following list, but I'm not sure there is much of a different between it and standard GLQuake except the fullbright and overbright support plus the "half in the water" rendering fix:

7. Adding the NPRQuake "sketch" renderer as native. (The .dll method that NPRQuake uses is very slow. And NPRQUAKE's .dll files aren't coded to support interpolation, for instance, and altering them would be a pain. Although they put a lot of work into exporting the rendering into a .dll, which was cool .. the speed for some reason isn't high.)
8. Adding only the FitzQuake 3D rendering portion to GLQUAKE.
9. Going historical and isolating DarkPlaces rendering in old DarkPlaces builds and doing the same.

(FitzQuake and DarkPlaces make the environment look a lot richer and really, I think a client that could switch between a few diffferent renderers would be cool. Especially in real-time via a toggle.).

And then as a huge fan of Fitzquake's texture manager:

10. Adding only the FitzQuake Texture manager to GLQUAKE.

^ Now the above has a interesting application. You could make a brightness slider that doesn't use hardware gamma while having an exact GLQUAKE look as well by clearing and reloading the textures with alterations to palette gamma modifier. An added benefit of not using hardware gamma is that it doesn't mess up brightness in Windows if a crash occurs AND it can adjusted independently from the Windows desktop. Yeah, it'd be a little slower during the adjustment, but a fun experiment.

[ezQuake does the above, but not with the care and concern of the purpose of the FitzQuake texture manager ;) I like the touchy feely hands-on approach of touching, categorizing and making available the texture information.]

11. "copy edicts" or "condump edicts" capability. The copy command idea can be found and a perfectly good any-engine condump can be found in the source in cmd.c. Anyway, it is somewhat annoying that typing the "edicts" even in DarkPlaces can't display the whole list of entities and their states (something that would help me with a rare and weird problem in an obscure engine project where the e4m4 silver key doesn't display! wtf!). My theory is that by allocating memory running an edicts command to get the size and dynamically allocating a string, copying it to the clipboard, and releasing it might provide a way to make the current states of all entities easily available. A theory at this point, since I haven't tried it. "edicts" would be a specially treated extra command argument.

12. Display mode switching in-game. Although I already have this and so do most other currently developed engines, it isn't as hard as it sounds. As long as you don't allow changing of the bpp ...

13. Intel display adapter fix. Again, most engines have this fixed now. But if you don't have the fix, your engine will crash and burn with certain [older] Intel display adapters. This really was a plague that helped destroy Quake, because they shipped with every new computer by Intel and could run Quake 3 and nearly every other game but not glquake. [How many people would buy a video card for a single old game when every other game works? Not many.]

/end ideas for now
User avatar
Baker
 
Posts: 3666
Joined: Tue Mar 14, 2006 5:15 am

Postby Baker » Fri Nov 28, 2008 7:53 am

User avatar
Baker
 
Posts: 3666
Joined: Tue Mar 14, 2006 5:15 am

Re: Future Tutorial Ideas ...

Postby mh » Fri Nov 28, 2008 4:56 pm

User avatar
mh
 
Posts: 2292
Joined: Sat Jan 12, 2008 1:38 am

Postby leileilol » Fri Nov 28, 2008 6:17 pm

leileilol
 
Posts: 2783
Joined: Fri Oct 15, 2004 3:23 am

Postby Baker » Fri Nov 28, 2008 6:48 pm

Before I wrote this up, I checked Telejano which is based on TomazQuake and it isn't chase cam fixed.

I loaded up TomazQuake 1.48 and I see the chase camera going outside the map or into the wall.

Image

TomazQuake might have a couple of those chasecam fixes that nearly every engine has, but it doesn't have the DarkPlaces "never allow the camera to go through the walls fix".

I'm not so familiar with TomazQuake, I wasn't around back then, so if there is a later version I should check, let me know.
User avatar
Baker
 
Posts: 3666
Joined: Tue Mar 14, 2006 5:15 am

Postby MeTcHsteekle » Sat Nov 29, 2008 11:05 pm

bah
MeTcHsteekle
 
Posts: 399
Joined: Thu May 15, 2008 10:46 pm
Location: its a secret

Postby Baker » Sat Nov 29, 2008 11:29 pm

User avatar
Baker
 
Posts: 3666
Joined: Tue Mar 14, 2006 5:15 am

Postby ceriux » Sun Nov 30, 2008 7:49 pm

User avatar
ceriux
 
Posts: 2230
Joined: Sat Sep 06, 2008 3:30 pm
Location: Indiana, USA

Postby Spike » Mon Dec 01, 2008 8:50 am

.
Spike
 
Posts: 2914
Joined: Fri Nov 05, 2004 3:12 am
Location: UK

Postby MeTcHsteekle » Mon Dec 01, 2008 10:31 am

bah
MeTcHsteekle
 
Posts: 399
Joined: Thu May 15, 2008 10:46 pm
Location: its a secret

Postby mh » Mon Dec 01, 2008 6:35 pm

User avatar
mh
 
Posts: 2292
Joined: Sat Jan 12, 2008 1:38 am

Postby frag.machine » Thu Dec 04, 2008 2:05 am

A tutorial showing how to implement a reliable way in GLQuake to change screen resolution and modes on the fly. I tried copying this from some engines but it was erratic to say the least (and usually just crashed when running in older GL cards and/or with buggy drivers).
I know FrikaC made a cgi-bin version of the quakec interpreter once and wrote part of his website in QuakeC :) (LordHavoc)
User avatar
frag.machine
 
Posts: 2120
Joined: Sat Nov 25, 2006 1:49 pm

Postby Baker » Thu Dec 04, 2008 2:49 am

User avatar
Baker
 
Posts: 3666
Joined: Tue Mar 14, 2006 5:15 am

Postby r00k » Thu Dec 04, 2008 4:35 am

r00k
 
Posts: 1111
Joined: Sat Nov 13, 2004 10:39 pm

Postby metlslime » Thu Dec 04, 2008 7:02 am

metlslime
 
Posts: 316
Joined: Tue Feb 05, 2008 11:03 pm

Next

Return to Engine Programming

Who is online

Users browsing this forum: No registered users and 1 guest