Christoph Oelckers
94eadb1a8c
- made it compile again.
2018-03-18 13:47:40 +01:00
Christoph Oelckers
de8db297a6
- made the backdrop texture also inherit from FWorldTexture.
...
In this case the only benefit is one less piece of GetColumn duplication - this texture is simply not usable in-game, unlike the BarShader.
2018-03-18 13:12:25 +01:00
Christoph Oelckers
494504229f
- fixed the BarShader texture.
...
Even though unlikely, this should work as a regular texture because it can be used as such.
As a result of the above, true color generation needs to be done explicitly now.
2018-03-18 12:54:40 +01:00
Christoph Oelckers
1d59a53cd4
- added worldtexture.cpp
2018-03-18 12:54:14 +01:00
Christoph Oelckers
7e169eb76f
- split out the span generation from most texture classes
...
Until now each subclass of FTexture had to implement the entire span generation itself, presumably so that a few classes can use simpler structures.
This does not work if a texture can have more than one pixel buffer as is needed for alpha textures.
Even though it means that some classes will allocate more data now, it's the only way to do it properly.
In addition this removes a significant amount of mostly redundant code from the texture classes.
- added alpha texture processing to all converted classes
As of now this is not active and not tested.
Note that as part of the conversion even those textures that were working as alphatextures will not look correct until the higher level code gets adjusted.
2018-03-18 12:36:14 +01:00
Christoph Oelckers
b939836846
- renamed FileRdr back to FileReader.
2018-03-11 19:29:37 +01:00
Christoph Oelckers
0be1ed252b
- rewrote the operator>> methods of FileReader as normal functions for clarity.
2018-03-11 18:20:49 +01:00
Christoph Oelckers
b14ee50d0d
- transition to new FileReader interface complete, but untested.
2018-03-11 12:33:46 +01:00
Christoph Oelckers
b315bc3be0
- added a few more FileRdr replacements
...
- fixed: The streaming music player must return the file reader if it fails to open, so that the next player can still use it.
- fixed: Timidity++'s Instruments class did not delete the sound font when it was destroyed.
..-
2018-03-10 20:33:49 +01:00
Christoph Oelckers
c4387459bb
- use FileRdr in the PNG code, in particular to sanitize the savepic handling.
2018-03-10 19:22:26 +01:00
Christoph Oelckers
5fa63c396d
- sound code and most of texture code converted to FileRdr.
...
This allowed to remove a lot of bad pointer voodoo in the music loader, because the new class does not allow duplication of the reader object
2018-03-10 18:45:11 +01:00
Magnus Norddahl
94fbcacf22
Merge branch 'gzdoom' into materials
2018-02-10 00:08:17 +01:00
Christoph Oelckers
c1d2b54820
- let TexMan.GetName return the actual name for a texture that was created from a full path name.
2018-01-28 11:54:24 +01:00
Magnus Norddahl
7a59bcde4c
- move glossiness and specular level to GLDEFS
2018-01-25 19:53:55 +01:00
Magnus Norddahl
f3c55c01c8
Add material definition to GLDEFS
2018-01-20 16:28:24 +01:00
alexey.lysiuk
9b52c18ef6
Improved layout of FMultiPatchTexture::TexPart structure
...
Removed "gaps" between members (for 64-bit targets) and initialized them in place
2018-01-13 12:44:23 +02:00
alexey.lysiuk
d95ac93376
Fixed crash when resolving multipatches with missing textures
...
https://forum.zdoom.org/viewtopic.php?t=59088
2018-01-13 12:41:19 +02:00
Christoph Oelckers
20b8c1ef70
- moved buildtexture.cpp from using stdio-based file IO to FileReader.
2017-12-02 11:57:32 +01:00
Rachael Alexanderson
505da5bf4f
Merge branch 'master' of https://github.com/coelckers/gzdoom into newtimercode4
2017-11-21 05:23:00 -05:00
Christoph Oelckers
f0dc619b5b
- fixed bad use of FScanner::GetNumber and GetFloat in code inherited from ZDoomGL.
...
This could lead to bad error messages if some malformed definitions were used.
2017-11-19 15:30:45 +01:00
Rachael Alexanderson
909daadd75
- update more millisecond-storing data structures to u/int64_t to fix possible rollover bugs
2017-11-15 20:33:08 -05:00
Christoph Oelckers
0323f54384
- rename I_FPSTime function.
...
- now that the frame buffer stores its render time, the 'ms' return from I_GetTimeFrac is not needed anymore, we may just as well use the globally stored value instead.
The only feature this value was ever used for was texture warping.
2017-11-13 00:54:32 +01:00
alexey.lysiuk
f40a31409d
Added ability to get texture name from script
...
Use TexMan.GetName(TextureID tex) member function
2017-10-24 11:11:33 +03:00
Christoph Oelckers
a1694a79c6
- removed the FGLBitmap class and replaced all uses with the regular FBitmap.
...
The only reason this ever existed is that the GL renderer used RGBA instead of BGRA but there's no reason why this is even necessary.
2017-06-18 09:14:33 +02:00
Christoph Oelckers
8b19ae98ea
- consolidated the two averageColor instances.
2017-06-07 22:42:59 +02:00
alexey.lysiuk
dcded0e183
Handle unloading of canvas textures properly
...
https://forum.zdoom.org/viewtopic.php?t=56207
2017-05-01 16:20:25 +03:00
Christoph Oelckers
57d703236b
- changed Doom source license to GPL in all subdirectories and fixed missing licenses in a few other files.
2017-04-17 12:27:19 +02:00
Christoph Oelckers
dc5a5419fc
- took DCanvas and all its subtypes out of the DObject tree.
...
I have no idea why they were even in there, as they intentionally circumvented all GC related features - they declared themselves fixed if prone to getting collected, they all used OF_YesReallyDelete when destroying themselves and they never used any of the object creation or RTTI features, aside from a single assert in V_Init2.
Essentially they were a drag on the system and OF_YesReallyDelete was effectively added just to deal with the canvases which were DObjects but not supposed to behave like them in the first place.
2017-04-14 10:48:18 +02:00
Christoph Oelckers
6599e2c425
- moved the VM types into their own file and only include it where really needed.
2017-04-13 01:12:04 +02:00
alexey.lysiuk
ac5e516148
Removed obsolete forward declaration
2017-04-06 10:39:53 +03:00
Christoph Oelckers
bc95e5180d
- moved the BarShader textures into the texture manager so that ZScript can use them. ZScript only knows about TextureIDs, but those require the texture to be handled by the texture manager.
2017-03-27 01:55:47 +02:00
Christoph Oelckers
a2f2be17ef
- status screen fully scriptified but not active yet.
2017-03-18 19:35:26 +01:00
Christoph Oelckers
1e9ef2b1df
- started scriptifying the level intermission screen. This compiles but is not active yet.
...
- allow treatment as one-character string constants as character constants. This became necessary because name constants already use single quotes and are much harder to repurpose due to a higher degree of ambiguity.
- fixed: protected methods in structs were not usable.
2017-03-18 12:18:15 +01:00
Christoph Oelckers
d423ad0d18
- moved CheckRealHeight from wi_stuff.cpp to texture code.
2017-03-17 23:08:22 +01:00
Christoph Oelckers
c9296ead57
- moved the skybox texture files to the main textures directory.
2017-03-17 21:12:09 +01:00
Magnus Norddahl
22d3599ea1
Fix warp texture crash in software renderer true color mode
2017-03-13 18:02:44 +01:00
Magnus Norddahl
0c9014b984
- move r_utility globals into r_viewpoint and r_viewwindow
...
- change r_utility functions to only work on FRenderViewpoint and FViewWindow
2017-03-11 23:28:07 +01:00
Rachael Alexanderson
81291e6892
- fixed: Clang on Linux compile
2017-03-11 11:01:30 -05:00
Christoph Oelckers
343db41b63
- changed the #defines in ddstexture.cpp into an enum
...
(because #defines suck...)
2017-03-10 20:08:39 +01:00
Christoph Oelckers
9b87a167d7
- replaced a large batch of DWORDs.
...
Most of those which still rely on ZDoom's own definition should be gone, unfortunately the code in files that include Windows headers is a gigantic mess with DWORDs being longs there intead of ints, so this needs to be done with care. DWORD should only remain where the Windows type is actually wanted.
2017-03-09 20:19:55 +01:00
Christoph Oelckers
d2beacfc5f
- except for DWORD, all homegrown integer types are gone - a handful were left where they represent genuine Windows types.
2017-03-09 19:54:41 +01:00
Christoph Oelckers
c008ddaf66
- replaced homegrown SWORD, SBYTE and uint32_t types.
2017-03-09 19:31:45 +01:00
Rachael Alexanderson
cc9a2e5121
Merge https://github.com/coelckers/gzdoom
2017-03-08 21:25:24 -05:00
Christoph Oelckers
6dee9ff566
- replaced another large batch of homegrown type use.
2017-03-08 18:55:53 +01:00
Rachael Alexanderson
2c27b74e34
Merge https://github.com/coelckers/gzdoom
2017-03-05 02:55:38 -05:00
Christoph Oelckers
600f57405f
- fixed typo in TexMan.GetSize.
2017-03-05 00:28:15 +01:00
Rachael Alexanderson
21a8964bea
Merge remote-tracking branch 'gzdoom/master'
...
# Conflicts:
# src/v_video.cpp
2017-03-03 16:29:33 -05:00
Christoph Oelckers
c630b07011
- replaced SDWORD with int32_t globally.
...
This type wasn't used in the software rendering code so it could be removed already. The other homegrown types will have to be dealt with later.
2017-03-03 19:35:08 +01:00
Rachael Alexanderson
8c176575c8
Merge https://github.com/coelckers/gzdoom
2017-02-12 21:39:20 -05:00
Christoph Oelckers
947b625c50
- all menu items scriptified, but not yet active.
2017-02-11 16:11:48 +01:00
Rachael Alexanderson
a52f79055d
Merge https://github.com/coelckers/gzdoom
...
# Conflicts:
# src/menu/playerdisplay.cpp
2017-02-11 05:05:24 -05:00
Christoph Oelckers
98de1fcfcb
- make the pixel buffer of the player backdrop dynamic.
2017-02-10 14:18:00 +01:00
Christoph Oelckers
65174af544
- moved the backdrop for the player box into the texture manager so that the menu doesn't have to bother with managing the texture itself.
2017-02-10 14:07:21 +01:00
Magnus Norddahl
1c3440e391
Merge remote-tracking branch 'gzdoom/master' into qzdoom
...
# Conflicts:
# src/r_plane.cpp
# src/r_plane.h
2017-01-16 06:03:21 +01:00
Christoph Oelckers
d2d6e5d486
- scriptified PowerFlight and PowerWeaponLevel2.
2017-01-15 23:21:38 +01:00
Rachael Alexanderson
de5f5a1221
Merge https://github.com/coelckers/gzdoom
2017-01-06 22:06:25 -05:00
alexey.lysiuk
1a0d8dffd9
Fixed harmless initialization order mismatch
...
No more 'field ... will be initialized after field ...' warnings reported by GCC/Clang
2017-01-06 10:40:51 +01:00
Rachael Alexanderson
de896920b4
Merge https://github.com/coelckers/gzdoom
2016-12-28 17:38:00 -05:00
Christoph Oelckers
02c3b3613f
- added UDMF properties to set glows per sector.
...
- for explicitly defined glows, use the one for the current animation frame, if an animated texture is active. For default glows it will still use the base texture's to avoid inconsistencies.
2016-12-28 21:35:42 +01:00
Christoph Oelckers
3b823fa3eb
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# wadsrc/static/compatibility.txt
2016-12-22 11:29:44 +01:00
Rachael Alexanderson
978152f483
Merge https://github.com/rheit/zdoom
...
# Conflicts:
# wadsrc/static/compatibility.txt
2016-12-19 08:16:41 -05:00
Rachael Alexanderson
5d85990d5f
- Implementing RGB666-to-Palette colormatching for textures.
2016-12-19 13:46:08 +01:00
Rachael Alexanderson
a78b713f4b
Merge https://github.com/coelckers/gzdoom
...
# Conflicts:
# src/v_video.cpp
2016-12-06 18:19:08 -05:00
Christoph Oelckers
fbc8d0e83c
Merge branch 'zscript' of https://github.com/rheit/zdoom into gz-zscript
...
# Conflicts:
# wadsrc/static/zscript.txt
2016-12-03 18:51:10 +01:00
Christoph Oelckers
21e3aba1c7
- optionally allow passing a script position object to V_GetColor and subfunctions for better error output. Implemented this for all occurences where this info was available.
2016-12-03 16:27:53 +01:00
Rachael Alexanderson
c95372052c
Merge branch 'master' of https://github.com/rheit/zdoom
2016-12-02 16:39:50 -05:00
Christoph Oelckers
60b1f5c25a
- fixed: FPNGTexture::fr could be left uninitialized.
2016-12-02 19:38:30 +01:00
Christoph Oelckers
c927aca2a0
Merge branch 'zscript' of https://github.com/rheit/zdoom into gz-zscript
...
# Conflicts:
# wadsrc/static/zscript.txt
2016-11-30 18:46:23 +01:00
Rachael Alexanderson
2e7c512891
Merge branch 'master' of https://github.com/rheit/zdoom
2016-11-23 11:09:46 -05:00
alexey.lysiuk
e138a3ffbc
Fixed infinite recursion with self-referencing multipatch textures
...
See http://forum.zdoom.org/viewtopic.php?t=54355
2016-11-23 14:33:31 +01:00
Magnus Norddahl
d084f77546
Fix mipmap generation bug
...
Fix crash due to dc_source2 not always being set
Add r_lod_bias to control mipmap selection
Improve LOD calculations to take the U texture coordinate into account
2016-11-05 16:12:59 +01:00
Christoph Oelckers
747b612860
Merge branch 'master' of https://github.com/rheit/zdoom
2016-11-03 19:42:03 +01:00
Magnus Norddahl
1ccf190c4f
Merge remote-tracking branch 'zdoom/master' into qzdoom
2016-11-01 19:51:17 +01:00
Marisa Heit
9388597443
Add 1 pixel tall and wide texture support to the renderer
...
- These require manual detection and overriding of the scaling factors to
0, because a right shift of (32-0) bits wraps around to 0 and results in
no shift at all rather than leaving the register zeroed out.
2016-11-01 00:08:16 -05:00
Christoph Oelckers
7f2350cf64
Merge branch 'master' of https://github.com/rheit/zdoom
2016-10-29 16:08:46 +02:00
Rachael Alexanderson
9ed45c7e03
Merge branch 'master' of http://github.com/rheit/zdoom
2016-10-26 22:06:25 -04:00
Christoph Oelckers
327d4d85a7
- fixed: UseOffsets can only be handled after the patch is has been set up.
2016-10-26 15:02:20 +02:00
Rachael Alexanderson
692a0034b4
Merge http://github.com/rheit/zdoom
2016-10-26 06:10:52 -04:00
Christoph Oelckers
5309209039
- print a developer warning if the texture manager had to resolve a circular reference.
2016-10-26 12:03:28 +02:00
Christoph Oelckers
28fefdabc7
- added a 'listall' option to FTextureManager::ListTextures, so that the multipatchtexture lookup can find multiple older versions with the same use type.
...
This fixes an issue with DUMP 2 which looked for patches of the same name as the texture currently being defined and where the patches had the same use type as the composite texture. The function as implemented would only find the newly added composite and print an error.
2016-10-26 11:56:15 +02:00
alexey.lysiuk
316e3395ad
Fixed crash on loading multipatch texture with height of 256
...
http://forum.zdoom.org/viewtopic.php?t=53953
2016-10-26 12:15:22 +03:00
Rachael Alexanderson
e533bc8234
Merge http://github.com/rheit/zdoom
2016-10-25 23:52:25 -04:00
Christoph Oelckers
fa8e05d56d
- do not allow a multipatch texture to use itself as patch. Instead, look for an older texture with the same name.
2016-10-25 22:40:58 +02:00
Rachael Alexanderson
b460ce31e8
Merge http://github.com/coelckers/gzdoom
2016-10-24 21:02:09 -04:00
Christoph Oelckers
f0ee3e3fa3
Merge branch 'master' of https://github.com/rheit/zdoom
2016-10-25 01:04:43 +02:00
Christoph Oelckers
8368272b4d
- just to be thorough, added a 'sprite' keyword to define a patch to give priority to the TEX_Sprite namespace.
2016-10-24 23:40:37 +02:00
Christoph Oelckers
4e4fd97950
- fixed: Multipatch textures may not set up their patch references until all textures have been loaded.
...
If done earlier they will not be able to detect overrides of sprites and graphics which are not part of the PATCHES lump. There was some fudging code to work around this problem but it was only partially working.
Now these textures only collect the texture name and use type during setup and resolve them after all textures have been created.
2016-10-24 23:35:18 +02:00
Christoph Oelckers
10203afa41
Merge branch 'master' of https://github.com/rheit/zdoom
2016-10-23 18:50:59 +02:00
raa-eruanna
9cf9cc1318
Merge http://github.com/rheit/zdoom
...
# Conflicts:
# wadsrc/static/language.enu
2016-10-21 13:37:12 -04:00
Christoph Oelckers
b1289fa783
- fixed: The serialiter functionfor FDoorAnimation accessed the invalid destination pointer when loading a savegame.
2016-10-21 19:24:40 +02:00
raa-eruanna
c62ee28726
Merge http://github.com/coelckers/gzdoom
2016-10-20 04:54:44 -04:00
Christoph Oelckers
96437d95fa
- use the new ZDoom code for retrieving a sky's cap color to avoid redundancies.
2016-10-20 10:36:23 +02:00
Christoph Oelckers
ce80d8157b
Merge branch 'master' of https://github.com/rheit/zdoom
2016-10-20 10:24:37 +02:00
raa-eruanna
a4393d352f
Merge http://github.com/rheit/zdoom
2016-10-20 03:30:51 -04:00
Christoph Oelckers
19d070c9bd
- fixed: averageColor swapped red and blue.
...
- renamed some stuff
2016-10-20 09:08:07 +02:00
Magnus Norddahl
0888fc0cde
Merge remote-tracking branch 'origin/capsky' into qzdoom
2016-10-20 00:13:58 +02:00
Magnus Norddahl
5de8112578
Add support for capping sky with a solid color
2016-10-19 23:52:09 +02:00
raa-eruanna
135c861247
Merge http://github.com/coelckers/gzdoom
2016-10-16 04:02:34 -04:00
Christoph Oelckers
b03489a43c
Merge branch 'master' of https://github.com/rheit/zdoom
2016-10-16 08:51:13 +02:00
Marisa Heit
e4281454ce
Split ANIMATED into three parts, filtered by game that uses them
...
- ANIMATED contained definitions for Doom, Heretic, and Strife, all
crammed into a single file. This meant that animations from one game
could erroneously make their way into maps for another game that
provided custom textures with names that matched textures that animated
in the other game. There are now three separate ANIMATED lumps with only
the animations defined for the original game and no others. The one
that gets loaded depends on the game being played.
- Added documentation for the ANIMATED file format to the comment for
FTextureManager::InitAnimated(), since I had to figure it out from the
code.
2016-10-15 21:40:24 -05:00