home home

downloads files

forum forum

docs docs

wiki wiki

faq faq

Cube & Cube 2 FORUM


Announcing Tesseract...

by eihrul on 04/18/2012 00:48, 137 messages, last message: 08/19/2013 16:01, 138265 views, last view: 12/09/2021 06:27

What is Tesseract? Tesseract is a sort of Frankenstein's monster that escaped the lab when I ripped out the static lightmapped heart of Sauerbraten, squished it under-foot with extreme prejudice, and stitched it back together with deferred shading and shadowmapping.

Run-down of the cool new features:
deferred shading
HDR rendering with tonemapping and bloom
omnidirectional point-light shadowmaps
sunlight cascaded shadowmap
screen-space ambient occlusion
screen-space water reflections (no more reflection plane limits)
refractive alpha cubes
refractive glass material

A dorky video of some of this stuff in action:
http://www.youtube.com/watch?v=ZkFT1ra2w-A

The actual code is at a github repository for the moment:
https://github.com/lsalzman/tesseract

See the README for some more details about running it.

The code is still under Zlib license.

The work on this code was done in collaboration with Benjamin Segovia over the last month or so.

The codebase is still in a state of high flux, so I would expect a lot of changes coming in the future.

The goal of all of this is not really to replace Sauerbraten and development on Sauerbraten itself will continue into the future. This is just a fork, a what-if experiment to see what it might look like if it dropped all concerns about compatibility and good performance on old hardware and just tried to modernize.

In fact, while it can load Sauerbraten maps, the lighting model of Tesseract is roughly incompatible, as not only do Sauerbraten maps use way too many lights, but Tesseract renders the lights a bit differently.

Tesseract is not at this moment endeavoring to be a stand-alone game, but just another parallel codebase people interested in the engine can choose from to work from if they want to mod it into a game of their own.

Go to first 20 messagesGo to previous 20 messages    Board Index    Go to next 20 messagesGo to last 20 messages

#8: ..

by _Spiney on 04/18/2012 14:45

This makes me happy, I no longer have to bitch about the LDR lightmapping in Sauer! :D

Eihrul: I know you did a cascaded light propagation volumes demo. Any chance that gets added?

The lighting reminds me of Darkplaces, I believe you had a hand in that as well :)

reply to this message

#9: Re: ..

by Q009 on 04/18/2012 15:12, refers to #8

Except the lighting in Darkplaces is A WHOLE LOT slower. I'm actually really suprised it's got so good performance here

reply to this message

#10: Re: ..

by Razgriz on 04/18/2012 15:12, refers to #8

Don't get too excited, it's gonna be a really long time before it makes it to the official release, lots of bugs, and the whole thing isn't exactly cheap on power draw.

reply to this message

#11: Re: ..

by eihrul on 04/18/2012 16:07, refers to #8

Tesseract builds off the work I implemented in DarkPlaces for omnidirectional shadowmapping.The unrolled cubemap system LordHavoc and I designed, the culling and PCF filtering code I wrote, and other things I sort of lifted wholesale from code I wrote for DP. That greatly accelerated the initial implementation. Stuff like the option for tetrahedral shadowmapping to reduce the number of renders from 6 to 4 and cascaded shadowmaps is entirely new.

LPV, I am not sure about yet. The LPV I implemented for the demo would have no occlusion, meaning it would bleed straight through a wall as if the wall did not exist, which would make it much worse than the existing SSAO. And doing good occlusion for it is quite expensive. There are potential other ways to do it, but I just wanted to get the basics in place first on which other stuff can be built.

reply to this message

#12: ..

by suicizer01 on 04/18/2012 18:47

When a final or even the beta of this comes out, I'll be there to map on this damn great new fork.

reply to this message

#13: ..

by _Spiney on 04/18/2012 18:56

Playing with debugbuffersplit 1 is strangely hypnotic :P

reply to this message

#14: Amazing!

by Windecker on 04/19/2012 17:24

I just spent the last two hours abusing the dynamic lighting. It's great! :D

I can adjust ever light source in the map at once without waiting, and watch the changes. :)

reply to this message

#15: ..

by great. on 04/19/2012 19:48

how do you install on windows?

reply to this message

#16: Re: ..

by _Spiney on 04/20/2012 00:23, refers to #15

go here and download the .zip file
https://github.com/lsalzman/tesseract/downloads

unpack it.

now you need to add the packages folder of a recent Sauer build into the ../tesseract/packages folder

you can find a recent build here
http://sauerbraten.svn.sourceforge.net/viewvc/sauerbraten/

click on "download gnu tarball"
you'll need to use an archiver such as winrar or 7zip to unpack it.

If you get prompted to overwrite older files make sure to say no, so you don't accidentally mess up the Tesseract files.

reply to this message

#17: ..

by Windecker on 04/20/2012 04:10

I just created a junction point from my sauer svn packages folder.

Saves space. :)

reply to this message

#18: Re: ..

by great. on 04/20/2012 04:23, refers to #16

Thanks. I installed it, it looks very nice but it is very choppy on the lowest settings.

reply to this message

#19: Dynamic Rough Gem!

by Zamwa on 04/20/2012 07:43

After experimenting this is what I concluded:

.Coincidentally I'm not going to miss using the "old shool" lightmap generator ether though I'd like to use both in conjunction for optimal performance!

.It be handy to have a command line setting of the dynamic refresh rate!

.hardware compatibility is like an old mans love for a maxed out old dino MS-DOS purring like a kitty at 3 frames per second! :"P

Out of curiosity were the name Tesseract came from?

reply to this message

#20: Re: Dynamic Rough Gem!

by Razgriz on 04/20/2012 09:12, refers to #19

Gonna be a problem. The whole idea is ripping out the static lightmapping of the game, so there's no fixed-function pipeline for users who can't support this to fall back to. So either your hardware supports shaders and openGL, or it doesn't.

http://en.wikipedia.org/wiki/Tesseract

reply to this message

#21: Sauerbraten 3

by naggie on 04/20/2012 15:55

Great news!

This is similar in magnitude to the differences between Cube 1 and Cube 2.

How about calling it Sauerbraten 2 or cube 3?

reply to this message

#22: Re: Sauerbraten 3

by Q009 on 04/20/2012 16:08, refers to #21

No. It's not similar. It's just graphics overhaul

reply to this message

#23: Re: Sauerbraten 3

by _Spiney on 04/20/2012 16:25

While I wouldn't call it of a similar magnitude, it's pretty invasive. Unified lighting and shadowing allows all kind of stuff that would be very non-trivial to do with Sauerbraten.

reply to this message

#24: Re: Sauerbraten 3

by eihrul on 04/20/2012 17:12, refers to #21

The choice was either Cube 2.5 or Tesseract, so I went with Tesseract. :)

reply to this message

#25: Re: Sauerbraten 3

by suicizer01 on 04/20/2012 18:24, refers to #24

+1 for that.

reply to this message

#26: lighting extension

by suicizer01 on 04/20/2012 18:32

I don't know if this already is possible in Tesseract, but it would be damn great.

The idea is to have some more realstic lighting when using a shader like "pulseglowworld".
I talk about then:
- Controlling the intensity of the light real-time, so it could match the "pulsespeed" shaderparam (even it doesn't have to)
- Controlling the colour of the light real-time, so it would match the "pulsecolor" and "glowcolor" shaderparams.

Bad thought or what?

reply to this message

#27: ..

by Windecker on 04/20/2012 19:20

Not that this thread is for suggestions, but here are three thoughts for this amazing amazingness:

1 - A simple flickering/flashing/pulsating light controlled like a particle. ( like the old Unreal games had everywhere. ) Great for torches or those florescent lights with a bad ballast. ;)

2 - A bar light entity.. this might be difficult to do; I don't know. It would emit light from a line rather than a point.

3 - Finally, the ability for a texture to emit it's own light via a glow map with the right parameters.

reply to this message

Go to first 20 messagesGo to previous 20 messages    Board Index    Go to next 20 messagesGo to last 20 messages


Unvalidated accounts can only reply to the 'Permanent Threads' section!


content by Aardappel & eihrul © 2001-2021
website by SleepwalkR © 2001-2021
42368215 visitors requested 58075163 pages
page created in 0.038 seconds using 9 queries
hosted by Boost Digital