Forum

What are you working on?

Discuss anything not covered by any of the other categories.

Moderator: InsideQC Admins

Re: What are you working on?

Postby r00k » Tue Jun 11, 2013 5:52 am

airshotmap : Airshot02

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

Re: What are you working on?

Postby qbism » Tue Jun 11, 2013 4:20 pm

Seven wrote:I know it is nothing special, but I just finished to add the Hexen monster: Afrit into Quake and wanted to mention it.
I used John "Psychikon" Jensen´s wonderful gpl model for it.
Using the Darkplaces engine I also made some fire particle effects for him.
If you are interested you can download him at quakeone.com
I like to see creatures that blend well into the environment in terms of lighting, style, and effects. The ablilty to do so is a talent in itself.
User avatar
qbism
 
Posts: 1236
Joined: Thu Nov 04, 2004 5:51 am

Re: What are you working on?

Postby qbism » Fri Jun 14, 2013 1:38 pm

mankrip wrote:Implemented true hi-res screen waterwarping in Makaqu. My previous hi-res waterwarp code did render the scene in hi-res, but the waves of the warping effect weren't scaled up. Haven't posted about it in the blog yet because I still have to take some screenshots for comparison.
Sorry, digging way back...
I'm working on removing the warpbuffer and rendering straight to the vid buffer. It would save the time it takes to transfer from on to the other. We can do this because in Windows it's not 'really' the vid buffer, it gets transferred to the "real" buffer later, 32-bit ddraw for example (depending on version of vid_win.c used). I've got regular rendering and fog working. But the catch with underwater warp is that it's destrucive/ overwrites original pixels (will post a screenie when I fix screenshot code...) so it really needs those two buffers. Or is there another way?
User avatar
qbism
 
Posts: 1236
Joined: Thu Nov 04, 2004 5:51 am

Re: What are you working on?

Postby mankrip » Sat Jun 15, 2013 4:11 am

qbism wrote:I've got regular rendering and fog working. But the catch with underwater warp is that it's destrucive/ overwrites original pixels (will post a screenie when I fix screenshot code...) so it really needs those two buffers. Or is there another way?

I guess I know what you mean. Fog must be calculated before the underwater warp, because the underwater warp doesn't change the Z buffer to match the resulting image.

You could probably make a copy of the D_WarpScreen function, call it D_FoggedWarpScreen or something, and modify it to do both things at once, while also writing directly to the system's video RAM.

And I guess there's a slight error in the case numbers of the unrolled loop of the tutorial I've posted a few days ago. It should go from 31 to zero, not from 32 to 1.
Ph'nglui mglw'nafh mankrip Hell's end wgah'nagl fhtagn.
==-=-=-=-=-=-=-=-=-=-==
Dev blog / Twitter / YouTube
User avatar
mankrip
 
Posts: 915
Joined: Fri Jul 04, 2008 3:02 am

Re: What are you working on?

Postby jitspoe » Sun Jun 16, 2013 2:32 am

Experimenting with various optimizations. Brought over the DarkPlaces point lighting to Quake2 and fixed some bugs with it.
jitspoe
 
Posts: 217
Joined: Mon Jan 17, 2005 5:27 am

Re: What are you working on?

Postby qbism » Mon Jun 17, 2013 5:47 am

mankrip wrote:I guess I know what you mean. Fog must be calculated before the underwater warp, because the underwater warp doesn't change the Z buffer to match the resulting image.

You could probably make a copy of the D_WarpScreen function, call it D_FoggedWarpScreen or something, and modify it to do both things at once, while also writing directly to the system's video RAM.

And I guess there's a slight error in the case numbers of the unrolled loop of the tutorial I've posted a few days ago. It should go from 31 to zero, not from 32 to 1.
Thanks for the tutorial, I've just finished implementing it (5 minutes ago) and enjoying the bigger warp. I don't know if it would be slower to warp the Z as well, or move fog calc back before warp. The issue with doing both at once (D_FoggedWarpScreen) is that warp will pull from pixels without fog calculation yet.
User avatar
qbism
 
Posts: 1236
Joined: Thu Nov 04, 2004 5:51 am

Re: What are you working on?

Postby mankrip » Wed Jun 19, 2013 12:39 am

qbism wrote:I don't know if it would be slower to warp the Z as well

It would, because you'd need to have a secondary Z buffer, and write the warped results into it.

qbism wrote:The issue with doing both at once (D_FoggedWarpScreen) is that warp will pull from pixels without fog calculation yet.

Make a turbzsrc variable, following how the turbsrc variable is implemented. You'll also need to make a local zsrc in D_WarpScreen. Then it will be just a matter of turning this:
Code: Select all
         tempdest[31] = src[row[turb_x_temp[31]] + col[31]];

Into something like this:
Code: Select all
         srcindex = row[turb_x_temp[31]] + col[31];
         depth = zsrc[srcindex];
         pixelcolor = src[srcindex];
         // apply fog and write to the screen
         tempdest[31] = fog (pixelcolor, depth)

Of course, zsrc and src can be read directly by the fog algorithm, to make it faster. And you can change tempdest to point to the system's video buffer instead.
Ph'nglui mglw'nafh mankrip Hell's end wgah'nagl fhtagn.
==-=-=-=-=-=-=-=-=-=-==
Dev blog / Twitter / YouTube
User avatar
mankrip
 
Posts: 915
Joined: Fri Jul 04, 2008 3:02 am

Re: What are you working on?

Postby qbism » Sat Jun 22, 2013 2:52 am

mankrip wrote:Of course, zsrc and src can be read directly by the fog algorithm, to make it faster. And you can change tempdest to point to the system's video buffer instead.
I began to implement this. It would work, but requires flagging of hud pixels, possibly by using z buffer. I was too lazy to take it that far, but not too lazy to justify myself :D I found that in a particular underwater view, frames took 20ms to render and took 0.18ms to copy the warpbuffer, less than 1% overhead. The flagging of hud pixels and the extra conditional in post-process would eat into that small potential savings.

Here's waterwarp into it's own buffer as promised, showing soon at your local modern art gallery:Image
User avatar
qbism
 
Posts: 1236
Joined: Thu Nov 04, 2004 5:51 am

Re: What are you working on?

Postby Ghost_Fang » Sat Jun 22, 2013 3:01 am

Been learning a bit of C lately and having fun with it.
Added basic achievements to the PSP (L4Q).
It plays a sound, slides down, pauses for 3 seconds, and slides back up.
Image
Image
Ghost_Fang
 
Posts: 336
Joined: Thu Nov 12, 2009 4:37 am

Re: What are you working on?

Postby Spike » Sat Jun 22, 2013 3:17 am

qbism, surely the hud is drawn after fog, thus the fog code doesn't need to care about any 2d stuff (also, drawing the hud is very likely to not affect the depth of those overlay pixels).

any luck with using threads to offload parts of the rendering? might help achive 60fps+vsync, to make things smoother. most aproaches buffer the result of one thread for use by the second thread the following frame, rendering an extra frame behind. not sure what you can easily chuck on to such a worker thread. fog, I suppose, though that does make the hud awkward unless its drawn by the worker thread too (which likely requires more sync points).
Spike
 
Posts: 2892
Joined: Fri Nov 05, 2004 3:12 am
Location: UK

Re: What are you working on?

Postby ceriux » Sat Jun 22, 2013 6:30 am

cool stuff ghost_fang.
User avatar
ceriux
 
Posts: 2223
Joined: Sat Sep 06, 2008 3:30 pm
Location: Indiana, USA

Re: What are you working on?

Postby qbism » Sun Jun 23, 2013 1:12 am

@Spike: putting fog at the very end (vid_win flipscreen) is a performance boost but means zeroing out z at each hud pixel or just letting the hud be a little foggy. Plus there are other gotchas that eat into the initial boost. Would be great to at least thread the fog loop. Likewise warp.

@ Ghost_Fang: A great idea. Achievements add fun and even replay value to levels if done well. Modern Warfare 2 is an example.
User avatar
qbism
 
Posts: 1236
Joined: Thu Nov 04, 2004 5:51 am

Re: What are you working on?

Postby mankrip » Thu Jun 27, 2013 2:54 am

qbism wrote:
mankrip wrote:[...] you can change tempdest to point to the system's video buffer instead.
[...] It would work, but requires flagging of hud pixels, possibly by using z buffer. [...] The flagging of hud pixels and the extra conditional in post-process would eat into that small potential savings.

Actually, I've thought about this for a while, and there's no good way to write the warped image directly into the system's video buffer without also warping the HUD, menus and all other 2D elements. It's better to only copy the engine's video buffer to the system's video buffer after everything has been drawn into it.

About threading, it would be interesting to make the whole server side of the engine run in a separated thread.
Ph'nglui mglw'nafh mankrip Hell's end wgah'nagl fhtagn.
==-=-=-=-=-=-=-=-=-=-==
Dev blog / Twitter / YouTube
User avatar
mankrip
 
Posts: 915
Joined: Fri Jul 04, 2008 3:02 am

Re: What are you working on?

Postby ajay » Tue Jul 02, 2013 5:04 pm

After doom and gloom, I've finally got my hands on a new pc. Alls working well. Anyway, I reviewed the brightness, or lack of it, debate I was struggling with, where some would see it how I did and others would see it as too dark. ON my my new pc, it looked.... too dark! Some adjustments (not subtle, just to raise the overall light values, still work in progress) later, and the result can be seen here: http://wp.me/a1NjfD-8Q
It still needs work, but I hope it looks to others how I've always seen it. :)
User avatar
ajay
 
Posts: 559
Joined: Fri Oct 29, 2004 6:44 am
Location: Swindon, UK

Re: What are you working on?

Postby goldenboy » Tue Jul 02, 2013 5:17 pm

w00t, a new post!

Yeah, that looks a lot more sane Ajay.

Something else: Your curbs are too high. Imagine driving that bicycle up that curb. Ouch!! Your street is also a little flat.
User avatar
goldenboy
 
Posts: 924
Joined: Fri Sep 05, 2008 11:04 pm
Location: Kiel

PreviousNext

Return to General Discussion

Who is online

Users browsing this forum: No registered users and 1 guest