Vile Flesh - Legacy's version

Advanced OpenGL source port fork from ZDoom, picking up where ZDoomGL left off.
[Home] [Download] [Git builds (Win)] [Git builds (Mac)] [Wiki] [Repo] [Bugs&Suggestions]

Moderator: Graf Zahl

Locked
User avatar
Jive
Posts: 340
Joined: Sat Mar 11, 2006 23:44
Location: Manaus (Amazonia)
Contact:

Vile Flesh - Legacy's version

Post by Jive »

Hi there.

Gzdoom is compatible with my version of OpenGl mode for Vile Flesh, apart the fact that there is no compatibility with the fragglescript for the lightnings.
I have no opengl lightings at all, apart the ones controlled internally by the Gzdoom engine.

http://dlw.doomwadstation.com/Best_of_1.html#vile

May I dream to have a fully Gzdoom compatibility for this megawad, making Gzdoom totally compatible with Doom Legacy?

On the screenshots, you can see "before" and "after" my work.
Playing with Gzdoom, I have the 3D structures, but no opengl lightning, like on the first screenshot.
Attachments
Map01_2.jpg
Map01_2.jpg (30.97 KiB) Viewed 1547 times
Map01_21.jpg
Map01_21.jpg (40.35 KiB) Viewed 1547 times
User avatar
wildweasel
DRD Team Admin (Inactive)
Posts: 2132
Joined: Wed Jun 29, 2005 22:00
Location: the Admincave!
Contact:

Post by wildweasel »

For the lighting, are you loading the Lights.pk3 that's included with GZDoom? Are the dynamic lights enabled? If you want Legacy-style dynamic lights as well, you'll have to set it to use additive lights in the OpenGL settings.
User avatar
Jive
Posts: 340
Joined: Sat Mar 11, 2006 23:44
Location: Manaus (Amazonia)
Contact:

Post by Jive »

thank you for your answer!!
I wasn't clear enough: I have dynamic lights, and opengl mode... when it is already coded by the engine.
In my mod, I used tricks with fragglescripts and dehacked code in order to add static opengl lightnings, like you can see it with the doom legacy engine on the 2d screenshot.
Those additive lightnings are not rendered with gzdoom. They are purely ignored.

For example, here is the script used for map26:

Code: Select all

//script by Jive
//october 10, 2004

levelname = Service Tunnels
creator = Gwyn Williams

[scripts]
include("things.h");


script 1
{
setcorona(REDSMALL_L, CORONA_OFFY, 20.0);
setcorona(REDSMALL_L, CORONA_SIZE, 220.0);
//setcorona(REDSMALL_L, LIGHT_RADIUS, 100.0);

setcorona(GREENSMALL_L, CORONA_OFFY, 20.0);
setcorona(GREENSMALL_L, CORONA_SIZE, 80.0);
setcorona(GREENSMALL_L, LIGHT_RADIUS, 100.0);

setcorona(BLUESMALL_L, CORONA_OFFY, 20.0);
setcorona(BLUESMALL_L, CORONA_SIZE, 240.0);
setcorona(BLUESMALL_L, LIGHT_RADIUS, 100.0);

setcorona(REDTALL_L, CORONA_OFFY, 30.0);
setcorona(REDTALL_L, CORONA_SIZE, 280.0);
setcorona(REDTALL_L, LIGHT_RADIUS, 100.0);

setcorona(GREENTALL_L, CORONA_OFFY, 30.0);
setcorona(GREENTALL_L, CORONA_SIZE, 80.0);
setcorona(GREENTALL_L, LIGHT_RADIUS, 100.0);

setcorona(BLUETALL_L, CORONA_OFFY, 30.0);
setcorona(BLUETALL_L, CORONA_SIZE, 280.0);
setcorona(BLUETALL_L, LIGHT_RADIUS, 100.0);

setcorona(CANDLE_L, CORONA_SIZE, 60.0);
setcorona(CANDLE_L, CORONA_OFFY, 8.0);
setcorona(CANDLE_L, CORONA_COLOR, "FFFFFFCC");
setcorona(CANDLE_L, LIGHT_RADIUS, 40.0);
setcorona(CANDLE_L, CORONA_TYPE, LIGHT_SPR);

setcorona(CANDLEABRE_L, LIGHT_COLOR, "00ffff88");
//setcorona(CANDLEABRE_L, CORONA_COLOR, "00ffff88");
setcorona(CANDLEABRE_L, CORONA_SIZE, 15.0);
setcorona(CANDLEABRE_L, CORONA_OFFY, 33.0);
//setcorona(CANDLEABRE_L, LIGHT_RADIUS, 100.0);

setcorona(BFGEXP_L, LIGHT_COLOR, "FFE4A950");

setcorona(COLUMN_L, LIGHT_COLOR, "C3E597ff");
setcorona(COLUMN_L, LIGHT_RADIUS, 100.0);
setcorona(COLUMN_L, CORONA_COLOR, "C3E597ff");
setcorona(COLUMN_L, CORONA_SIZE, 80.0);
setcorona(COLUMN_L, CORONA_TYPE, LIGHT_SPR);

setcorona(TECHLAMP_L, LIGHT_COLOR, "D2E6F2ff");
setcorona(TECHLAMP_L, LIGHT_RADIUS, 100.0);
setcorona(TECHLAMP_L, CORONA_COLOR, "D2E6F2ff");
setcorona(TECHLAMP_L, CORONA_SIZE, 80.0);
setcorona(TECHLAMP_L, CORONA_TYPE, LIGHT_SPR);

setcorona(TECHLAMP2_L, LIGHT_COLOR, "EAD0D0ff");
setcorona(TECHLAMP2_L, LIGHT_RADIUS, 100.0);
setcorona(TECHLAMP2_L, CORONA_COLOR, "EAD0D0FF");
setcorona(TECHLAMP2_L, CORONA_SIZE, 30.0);
setcorona(TECHLAMP2_L, CORONA_TYPE, LIGHT_SPR);
}
startscript(1);
Attachments
VILE-deh.zip
deh file included within the wad, fragglescripts included within the head of some maps
(3.47 KiB) Downloaded 98 times
User avatar
Graf Zahl
GZDoom Developer
GZDoom Developer
Posts: 7148
Joined: Wed Jul 20, 2005 9:48
Location: Germany
Contact:

Post by Graf Zahl »

Unfortunately I haven't found a way to translate that hack-ish code for setcorona to something usable. I know other WADs, too where it might be useful. But that particular code is classic Legacy: crude, badly designed and not well suited to be ported to other implementations.
User avatar
Jive
Posts: 340
Joined: Sat Mar 11, 2006 23:44
Location: Manaus (Amazonia)
Contact:

Post by Jive »

That's too bad, because this megawad was downloaded 1500 times the passed year, and it's pretty the only one complete megawad for Doom II using intensively a bunch of cool tricks, making it pretty without any real interest out of Legacy, making consequently of it a darn good port!!!
I don't care to know that this particular opengl code of legacy was badly designed. The effect IS awesome, and it's the only important point for a player.
Anyway, thank you very much for your friendly answer!
User avatar
Jive
Posts: 340
Joined: Sat Mar 11, 2006 23:44
Location: Manaus (Amazonia)
Contact:

Post by Jive »

But I perfectly understand that the translation of a badly designed code must be terrific for a coder, even particularly gifted like you (not joking, nor kidding)
Locked

Return to “GZDoom”