Kaiser Posted December 29, 2014 (edited) Note that in order to develop custom levels for the high-quality renderer mode, you will need the latest version of GZDoom Builder, which can be found here: http://devbuilds.drdteam.org/doombuilder2-gzdb/GZDoom_Builder-r2154.7z Lastly, grab the tools and configuration files for GZDoom Builder found here: https://github.com/svkaiser/dlight/releases This contains the tools and some updates and tweaks to the strife config files in order to support Veteran Edition. DLight is a command-line tool only but for those who don't like command-line tools, I've supplied a frontend GUI which builds a wad file with both GLVIS and DLight. Source code is included in the docs below. Any contributions is highly appreciated as more likely I might not have time to maintain them. =========================================================================== Using DLight =========================================================================== Before building lightmaps, the wad file must first be pre-compiled with GL nodes using GLBSP (http://glbsp.sourceforge.net/). Optionally, PVS data can be built using GLVIS (http://www.vavoom-engine.com/glvis.php) which can help speed up compile time. The input for DLight is as follows: dlight -map ## [option1] [option2] ... [wad file] As of version 2.0, DLight can only compile one map at a time so the -map option is required. =========================================================================== Options =========================================================================== -map <1-99> Specify the map number to compile for -samples <2, 4, 8, 16> Specify how many samples to build. Samples are automatically rounded into powers of two. Higher sample count will result in faster compile times but results in poor quality lightmaps, while lower values will generate better quality lightmaps but results in longer compile times. Using 8 or 16 is recommended. -size <64, 128, 256> Specify the width and height of the lightmap textures. Size is automatically rounded into powers of two. Using 128 or 256 is recommended. -threads <##> Specify how many threads to utilize for building lightmaps. By default, the tool will try to utilize 2 threads. -help Displays list of options -config <file path> Specify a configuration file to use. By default it will try to find SVE.CFG -writetga Dumps generated lightmaps as targa image files -ambience <##> UNUSED =========================================================================== DLight Configuration File Specification =========================================================================== Format: /* multi-line comment */ // single line comment block name { <property> <value> } integer a single whole number float a number with decimals vector a quoted string with 3 floating point or integer numbers usually in the form of xyz boolean either 0 or 1 Blocks: mapdef lightdef surfaceLight Mapdef block: A mapdef defines the global sunlight behavior for a specified map. Mapdef properties: map <integer> The map number this mapdef block should be assigned to sun_direction <vector> A vector representing the direction in which the direction of the sun is coming from. Vector is normalized, meaning each component ranges from 0.0 to 1.0 and is measured in Doom axis coordinates (e.g. x = left, y = forward, z = up) Default vector: "0.45 0.3 0.9" sun_color <vector> A vector representing the RGB color of the sunlight. Values ranges from 0 to 255 Default vector: "255 255 255" sun_ignore_tag <integer> If specified, any sector with this tag will not be lit by sunlight and no lightmaps will be generated for it. Lightdef block: A lightdef block allows to define a thing to emit light during compile time. Lightdef properties: doomednum <integer> The doomednum of this thing in which will generate lightmaps. rgb <vector> A vector representing the RGB color of the light height <float> Sets an offset on the z-axis for the origin of the light source. radius <float> Specifies the radius of the light. A larger radius will result in more surfaces affected by this light. Setting radius to -1 will tell DLight to take the radius based on the thing's angle value. intensity <float> Specifies how strong the light source is. A value of 4.0 is recommended in Strife: Veteran Edition falloff <float> Sets the falloff for this light (expiremental) ceiling If specified, then the origin of the light will be relative to the ceiling instead of the floor SurfaceLight block: A surfacelight block specifies a surface (either a wall or a flat) to emit light during compile time. SurfaceLight properties: tag <integer> Tells Dlight to emit light from all sectors/lines that contains this tag value. rgb <vector> A vector representing the RGB color of the light cone_inner <float> Specifies the FOV (in degrees) of the main source of light. Value ranges between 0 to 180 degrees. Smaller values results in larger cone. cone_outer <float> Specifies the FOV (in degrees) of the light fading out from the inner cone. distance <float> Specifies how much area to cover intensity <float> Specifies how strong the light source is. A value of 4.0 is recommended in Strife: Veteran Edition bIgnoreFloor <boolean> If 1, then floors will be ignored. falloff <float> Sets the falloff for this light (expiremental) =========================================================================== Map Lump Specifications =========================================================================== LM_MAP## Level marker LM_CELLS Contains rgb information on how sprites interacts with lightmaps. LM_SUN Contains RGB and vector data for sunlight. LM_SURFS Contains information for every surface that is bounded to a lightmap. This includes texture mapping (UV) data and which lightmap block the surface is mapped to. LM_TXCRD Contains all UV texture coordinates for each surface. LM_LMAPS Contains raw RGB texture data that makes up the lightmaps. New Thing Types --------------------------------------------------------------------- Player Start - Blue Team DoomEdNum 5080 Width 16 Height 56 Desc Used for placing player starts belonging to the blue team (Capture the Chalice). At least 8 of these must exist in the map. Player Start - Red Team DoomEdNum 5081 Width 16 Height 56 Desc Used for placing player starts belonging to the red team (Capture the Chalice). At least 8 of these must exist in the map. Red Talisman DoomEdNum 7966 Width 16 Height 16 ConversationID 348 Desc Inventory item that the player can pick up. Does nothing by itself but when the player possesses all 3, he will have super berserk strength abilities Green Talisman DoomEdNum 7967 Width 16 Height 16 ConversationID 349 Desc Inventory item that the player can pick up. Does nothing by itself but when the player possesses all 3, he will have super berserk strength abilities Blue Talisman DoomEdNum 7968 Width 16 Height 16 ConversationID 350 Desc Inventory item that the player can pick up. Does nothing by itself but when the player possesses all 3, he will have super berserk strength abilities Blue Flag Spot DoomEdNum 5130 Width 16 Height 16 Desc Marker for spawning the blue chalice for Capture the Chalice game mode. Will spawn the blue chalice 16 units in front of the marker in the direction that the marker is facing at the beginning of the match. Required when setting up a Capture the Chalice game mode and only one of these must exist in any given map. Red Flag Spot DoomEdNum 5131 Width 16 Height 16 Desc Marker for spawning the red chalice for Capture the Chalice game mode. Will spawn the red chalice 16 units in front of the marker in the direction that the marker is facing at the beginning of the match. Required when setting up a Capture the Chalice game mode and only one of these must exist in any given map. Blue Chalice (Inventory Only) DoomEdNum 7970 Width 10 Height 16 ConversationID 345 Desc Inventory item that the player can pick up. Does nothing by itself. Sector Light Level Modifier DoomEdNum 7957 Width 16 Height 16 Desc When placed in a sector, it will set an alternate sector light level based on the thing's angle. This is only affected when lightmaps are enabled. These are not spawnable and will ignore difficulty flags and removed on level load Sector Bloom Controller DoomEdNum 7969 Width 4 Height 4 Desc When placed in a sector, it will override the renderer's bloom threshold whenever the player enters that sector. The override value is determined by the thing's angle divided by 255. For example, if the thing's angle is 180, then it will override the bloom threshold to 0.705 whenever the player enters that sector. Note that this is ignored if the user's threshold settings is greater than the override value. These things are not spawnable and will ignore difficulty flags and removed on level load Degnin Ore Spawner DoomEdNum 7975 Width 20 Height 16 Desc These non-visible things are used to spawn an infinite supply of degnin ores whenever there are less than 4 of them in the current level. They will only spawn when the player is within 2048 units of the spawner's origin. Any questions, please feel free to ask. Enjoy. Edited May 1, 2017 by Kaiser 0 Quote Share this post Link to post
Clonehunter Posted December 29, 2014 Looks good. A nice way to see if there can be a boost in MP maps, then. 0 Quote Share this post Link to post
scaled Posted December 29, 2014 How do we back port the new assets to chocolate minus the gl bits? After all technically the CTF bits and the talasmins are now canon. Chocolate aims to have everything supported. 0 Quote Share this post Link to post
Gez Posted December 29, 2014 Will the lightmaps in Doom64 EX 2.0 work the same way? 0 Quote Share this post Link to post
Kaiser Posted December 30, 2014 Gez said:Will the lightmaps in Doom64 EX 2.0 work the same way? Sadly, no. It's merely an experimental feature in 2.0. I do intend on supporting it fully whenever I get around to doing version 3.0. 0 Quote Share this post Link to post
Graf Zahl Posted May 1, 2017 I may just ask this here because it fits the topic. While checking the SVE.wad I found that there's several thing types not listed here. From their placement they look like they have something to do with lighting but it'd be nice if someone could confirm. So far I found the numbers 7958-7960 and 7973. Also the link to the lightmap generator is dead. Has this been uploaded elsewhere? 0 Quote Share this post Link to post
Quasar Posted May 1, 2017 Those were all defined in the lightmap generator config file. As for uploaded elsewhere, I don't think so, but we have it on our machines so it can be reuploaded. 0 Quote Share this post Link to post
Graf Zahl Posted May 1, 2017 Never mind, I searched some old backups which contained the tool. It'd still be a good idea to upload it to Github so that it won't get lost. 0 Quote Share this post Link to post
printz Posted May 1, 2017 (edited) Links are dead. Can you please re-upload them? Are they available on a more definitive site? Does Doom Wiki refer to them? Sounds like a bad thing to lose, which is pretty likely, since Strife modding is seldom. Edited May 1, 2017 by printz 0 Quote Share this post Link to post
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.