alexey.lysiuk
fb71563311
- fixed inconsistent dymanic lights setup with UBO
...
https://forum.zdoom.org/viewtopic.php?t=62585
2018-12-17 12:27:35 +02:00
Christoph Oelckers
cc52f89372
- fixed: For non-persistent buffers, sprite vertices need to be recalculated in the splitter code of the translucent sorter.
2018-12-16 12:06:17 +01:00
Christoph Oelckers
1422a95aa8
Merge branch 'Texture_Cleanup'
...
# Conflicts:
# src/textures/formats/multipatchtexture.cpp
2018-12-16 10:19:58 +01:00
Christoph Oelckers
a96b86b13b
- fixed: sidedef-less GLWalls may not apply per-sidedef render properties.
...
These always come from open-sector render hacks where the renderer tries to fill in some gaps
2018-12-16 09:38:22 +01:00
Christoph Oelckers
d0ce021805
- fixed: Both main and worker thread were modifying the portal state.
...
The parts in the main thread have been offloaded to a new worker job to avoid having to use a mutex to protect the portal state.
2018-12-16 09:05:02 +01:00
Christoph Oelckers
091f73b833
- fixed: no sprites were drawn in a sector if it only had ones in its sectorportal_thinglist.
2018-12-15 20:22:42 +01:00
Christoph Oelckers
d937c50726
- use a TArray in PPUniforms.
...
This makes the vast majority of code in that class just go away
2018-12-15 14:59:49 +01:00
Christoph Oelckers
3d0fb6cf90
Merge branch 'master' into Texture_Cleanup
2018-12-15 09:45:26 +01:00
Christoph Oelckers
1187906a61
- use symbolic constants for the light modes.
2018-12-15 09:40:39 +01:00
Magnus Norddahl
3af6ae4b37
- add vanilla lightmode that behaves exactly as Doom's original light did
2018-12-15 07:11:28 +01:00
Christoph Oelckers
134460bae6
- one final fix.
2018-12-12 20:16:02 +01:00
Christoph Oelckers
01e05c9b70
- now it's correct.
2018-12-12 20:11:09 +01:00
Christoph Oelckers
7ea1e8acee
- fixed layer creation.
2018-12-12 20:08:12 +01:00
Christoph Oelckers
173b8beb33
- cleaned out the FHardwareTexture class, now that the translations are finally handled on a higher level.
2018-12-12 18:55:55 +01:00
Christoph Oelckers
c5447f0cdd
- continued work on texture management.
2018-12-12 18:39:38 +01:00
Christoph Oelckers
fb6ee5046c
- add the hardware texture container to FTexture.
...
Currently it does not use the translated entries yet.
# Conflicts:
# src/hwrenderer/textures/hw_material.cpp
2018-12-12 02:55:11 +01:00
Christoph Oelckers
e6b4c63b99
- More adjustments
2018-12-12 02:52:27 +01:00
Christoph Oelckers
200188b3a4
- FHardwareTextureContainer.
...
This is essentially a stripped down version of FHardwareTexture, which can exist on the API independent size, and which stores pointers to hardware textures instead of OpenGL texture handles.
2018-12-12 00:34:37 +01:00
Christoph Oelckers
07f87e2542
- changed CreateTexBuffer to return its info in a structure and not as a naked pointer.
2018-12-11 21:06:34 +01:00
Christoph Oelckers
86d851bc5c
- minor cleanup and allow FHardwareTexture to restore the old bindings after creating a texture.
2018-12-11 19:56:23 +01:00
Christoph Oelckers
2e7bcf9e41
- implemented a proper texture composition cache.
...
This will mostly ensure that each patch used for composition is only loaded once and automatically unloaded once no longer needed.
So far only for paletted rendering, but the same logic can be used for true color as well.
2018-12-10 01:17:39 +01:00
Christoph Oelckers
4cedbf6cc2
- split between textures and images is complete now.
...
* split up FMultiPatchTexture into a builder class and the actual image source.
* since images can now be referenced by multiple textures the old redirection mechanism has been removed. It can be done better and less intrusive now. Simple single patch textures already directly reference the underlying patch image now.
* allocate all image source related data from a memory arena. Since this is all static this makes it a lot easier to free this in bulk.
2018-12-09 15:25:56 +01:00
Christoph Oelckers
9409843931
- replaced the last access operator, too
...
Now everything uses a function.
This really wasn't what operators are supposef to be used for.
2018-12-07 03:01:40 +01:00
Christoph Oelckers
79a0f76801
- replaced TexMan.operator() with two functions.
...
This was done to make reviewing easier, again because it is virtually impossible to search for the operators in the code.
Going through this revealed quite a few places where texture animations were on but shouldn't and even more places that did not check PASLVERS, although they were preparing some paletted rendering.
2018-12-07 02:53:18 +01:00
Christoph Oelckers
bde3558dc2
- moved the bit size variables to FSoftwareTexture
...
They are only needed by the software rasterizer.
2018-12-07 02:13:11 +01:00
Christoph Oelckers
18c1a3abe5
- make the FWarpTexture class local to the software renderer.
...
This class has only meaning for software-based warping so it doesn't have to be a part of the FTexture hierarchy.
Making it a subclass of FSoftwareTexture is fully sufficient.
2018-12-07 00:58:37 +01:00
Christoph Oelckers
6eab4a882c
- narrowing down the public interface of the texture class
...
Cannot refactor if the entire class is this wide open to everything.
Not complete yet, doesn't fully compile!
2018-12-06 01:11:04 +01:00
Christoph Oelckers
aef882c137
- more direct native stuff, this is a week old but was almost forgotten.
2018-12-06 00:28:05 +01:00
Christoph Oelckers
cd563cc4db
Removed more literal references to AInventory.
2018-12-04 17:00:48 +01:00
Magnus Norddahl
1e30bc72fe
- compare against the thing renderstyle since the local copy has been modified
2018-12-03 11:10:40 +01:00
Magnus Norddahl
4604c9379c
- disable alpha test on models if the renderstyle isn't STYLE_Normal
2018-12-03 10:46:28 +01:00
Christoph Oelckers
bfcd714186
- started replacing direct references to class AInventory.
...
The easiest part was the type checks which could be changed to the name variant with a global search and replace.
2018-12-02 21:35:55 +01:00
Christoph Oelckers
7b63e088e1
- moved the GetBlend script call to the one single place where it is needed to get rid of one native AInventory method.
2018-12-01 17:21:20 +01:00
Christoph Oelckers
a0c0e8bdfe
Merge remote-tracking branch 'remotes/origin/weapon_scriptification' into asmjit
...
# Conflicts:
# src/g_inventory/a_pickups.cpp
2018-11-30 21:28:44 +01:00
Christoph Oelckers
5e4e9e2c2b
Merge branch 'master' into asmjit
2018-11-27 19:53:22 +01:00
Christoph Oelckers
59b4e297c0
- fixed the mapping of additive translucency to color-based translucency.
...
The destination mode sould be 'One', not 'InvSrcColor'.
Now both of these are available as explicit modes, not just through the optional mapping.
2018-11-27 19:43:10 +01:00
Christoph Oelckers
3d3a00fd0d
- fixed: The flat drawer did not check for full brightness before processing dynamic lights.
2018-11-27 17:49:10 +01:00
Christoph Oelckers
47b1fa774d
Merge branch 'asmjit' into weapon_scriptification
...
# Conflicts:
# src/gi.cpp
# wadsrc/static/zscript/base.txt
2018-11-26 00:14:44 +01:00
Christoph Oelckers
ead28db007
- consolidated the 3 nearly identical code fragments handling the weapon's YAdjust for the different renderers into a utility function in DPSprite.
2018-11-24 22:40:14 +01:00
Magnus Norddahl
31ed1da4e5
Merge remote-tracking branch 'origin/master' into asmjit
2018-11-23 22:57:11 +01:00
Magnus Norddahl
ac62088690
- fix wrong attribute count passed to SetFormat
...
- fix missing include statement
2018-11-23 12:09:36 +01:00
Christoph Oelckers
ce46f5165a
Merge branch 'master' into asmjit
2018-11-23 11:12:52 +01:00
Magnus Norddahl
216191c86d
- interpolate the normal for models
2018-11-20 13:41:27 +01:00
Christoph Oelckers
8bc2d50ad2
Merge branch 'master' into asmjit
...
# Conflicts:
# src/p_actionfunctions.cpp
2018-11-18 21:08:16 +01:00
Christoph Oelckers
426ee2b78e
- fixed: Ceiling render hack segments were inserted into the floor list and incorrectly rendered.
2018-11-18 20:03:06 +01:00
Christoph Oelckers
533f66396d
Merge branch 'master' into asmjit
2018-11-17 20:16:03 +01:00
Christoph Oelckers
45ef7bca4f
- fixed: FTexture::SmoothEdges must forward its result to the base texture in case a redirection is in effect.
...
Both need the bMasked flag, or some code will think that the texture is not fully opaque if no holes were found.
2018-11-17 18:55:44 +01:00
Christoph Oelckers
08fe9c375b
- use the same formula for calculating 3DMidTex offsets as the renderer when per-sidedef scaling is used.
...
This reuses the FTexCoordInfo class the hardware renderer had been using to calculate wall texture offsetting.
The software renderers still need this sorted out to bring them in line with the rest of the code, though, but they do not have this code sufficiently well organized to make this a straightforward task.
2018-11-17 18:24:14 +01:00
Christoph Oelckers
160f17a907
- fixed stencil cap generation for old hardware and changed it so that it only gets done once for each stencil setup, not for each stencil pass.
2018-11-17 15:34:23 +01:00
Christoph Oelckers
94ed30e782
- removed the default parameter handling from all native script functions because it is no longer needed.
2018-11-17 10:03:40 +01:00