Christoph Oelckers
dadc8e2ec2
- removed all uses of DTA_Translation except for the single one that passes a custom built table.
...
This means that with the exception of 3 pointers the DrawTexture interface only accepts numeric values now.
Still need to get rid of the last 3 to have this ready for scripting.
2017-02-04 23:26:28 +01:00
Christoph Oelckers
d3ed83942f
- did some preparations to ParseDrawTextureTags to allow using the same code for parsing tag lists generated by the VM.
...
- removed the fixed point alpha tag from DrawTexture and replaced all uses with the floating point version.
2017-02-04 13:11:12 +01:00
Christoph Oelckers
1d2ae53ecb
Revert "- made r_fullbrightignoresectorcolor a MAPINFO option, so far only working on the software renderer. GL still needs a few changes to handle it correctly."
...
This reverts commit dd03bb1fcb
.
Turns out that making this work in GL will create a complete mess so better remove the option as it would only cause problems.
2017-01-28 18:26:52 +01:00
Christoph Oelckers
dd03bb1fcb
- made r_fullbrightignoresectorcolor a MAPINFO option, so far only working on the software renderer. GL still needs a few changes to handle it correctly.
2017-01-28 12:20:18 +01:00
Christoph Oelckers
f9f5e45824
- memset the entire vissprite structure when drawing a psprite because this does not initialize all fields.
2017-01-22 20:12:44 +01:00
Christoph Oelckers
b41d4d9f84
- initialize variable to make Valgrind happy.
2017-01-18 01:53:15 +01:00
Christoph Oelckers
d3ab691afb
- scriptified APowerInvisibility.
...
- changed AlterWeaponSprite so that it doesn't expose renderer internals to the script code.
2017-01-16 20:34:12 +01:00
Christoph Oelckers
cd7986b1b1
- refactored global sides array to be more VM friendly.
...
- moved FLevelLocals to its own header to resolve some circular include conflicts.
2017-01-08 18:46:17 +01:00
Christoph Oelckers
581cd27818
- floatified the translucency values in particle_t to elimintate the gross inaccuracies with fadeout time.
...
- widened ttl variable in particle_t to short to allow longer living particles than 6 seconds.
- reordered fields in particle_t to reduce struct size a bit.
2017-01-07 15:44:39 +01:00
Christoph Oelckers
7f72de6b71
- use msecnode_t's for the touching_renderlists instead of std::forward_list.
...
- preparations for checking the proper sector to get a sprite's lighting info.
2016-12-26 11:58:08 +01:00
Christoph Oelckers
04ff4282ef
- removed the global 'sector_list' variable.
...
If the calling code wants to recycle this it will have to pass a container variable to AActor::UnlinkFromWorld and AActor::LinkToWorld.
This was changed because keeping such data in a global variable is dangerous for a set of functions that can be called from a script.
Note that the scripted versions do not yet support saving of the touching_sectorlist.
2016-12-25 22:40:26 +01:00
Christoph Oelckers
5723f10cc3
- use 'for' iterator syntax to check touching_renderlists.
2016-12-25 19:37:07 +01:00
ZZYZX
87b23d160b
Ported RenderRadius and related code from gzdoom branch
2016-12-25 13:09:32 +02:00
Magnus Norddahl
2fea46a719
Removed leftovers from QZDoom
2016-12-18 11:58:32 +01:00
Magnus Norddahl
9ac7a07be6
- Set colormap light info using R_SetColorMapLight and R_SetDSColorMapLight rather than manually calculating it
...
- Move texture and span management into R_DrawMaskedColumn
2016-12-18 11:58:32 +01:00
Christoph Oelckers
b43609c701
- fixed: The weapon sprite fudge offset should not be added when just interpolating the position and calculating the delta.
2016-12-11 14:45:20 +01:00
Christoph Oelckers
eab06ef086
- more Build cleanup: Moved clearbufshort out of Build derived headers, removed the inline version for GCC 32 bit which was actually Build derived and renamed the C-version of this function, which does not originate from Build to 'fillshort'.
...
- cleaned out a lot the SafeDivScale stuff in m_fixed.h. The only SafeDivScale variant still in use was #16 for FixedDiv, so all the SafeDivScale stuff has been removed and the 16 variant renamed to FixedDiv because that's the only form in which it is still being used. (2x in R_DrawVoxel and 1x in ACS's FixedDiv PCode.)
- removed Build notice from m_fixed.h because aside from the inlines includes there is nothing here from Build anymore.
2016-12-09 13:04:53 +01:00
Christoph Oelckers
5536184bee
- got rid of ksgn.
...
Because every bit of Build code that can be removed is a good thing.
This was only used in two places, one of which could be done better, the other one in the voxel drawer setup now uses a local C-inline version.
2016-12-09 00:43:54 +01:00
Magnus Norddahl
3ff91807b8
Move swrenderer into a namespace, add multithreading framework, and move drawers to commands
2016-12-07 09:34:49 +01:00
Magnus Norddahl
4b4d7a0768
Add texturefrac bounds clamping to R_DrawMaskedColumn to avoid buffer overruns
2016-11-04 10:16:44 +01:00
Magnus Norddahl
b04118032e
Fix wrapping and scaling issue for the U texture coordinate for sprites
2016-11-04 10:15:57 +01:00
Christoph Oelckers
6e6249f896
- reverted WEAPONTOP to its original value of 32 and made the added fudging bit part of the render side.
...
This is needed so that 'offset(0,32)' does what it is supposed to do.
2016-10-31 18:53:28 +01:00
Magnus Norddahl
87ea75169e
Fix texturefrac out of bounds bug
2016-10-29 08:11:12 +02:00
Magnus Norddahl
837ed7bd80
Fix dancing sprites due to texture coordinate calculations not taking pixel centers into account
...
Merge R_DrawMaskedColumn and R_DrawMaskedColumnHoriz into one function to remove code duplication
2016-10-29 05:35:41 +02:00
raa-eruanna
df6214b142
- Fixes
2016-10-21 07:21:56 -04:00
raa-eruanna
c76431414a
- Implemented r_fullbrightignoresectorcolor from QZDoom
2016-10-21 07:06:24 -04:00
Magnus Norddahl
36aff68501
Fix divide by zero if yscale is too small a number
2016-10-14 23:02:16 +02:00
Major Cooke
3de83b8943
Added PSPF_FLIP.
...
Flips the overlay on the X axis.
2016-10-11 17:20:58 -05:00
Marisa Heit
594b344be9
Don't use MIN<short> when clamping topclip.
...
- This was fine with fixed point numbers, since they could never be
outside of short range when converted to regular ints. With floating
point numbers now, that condition no longer holds.
2016-10-03 22:05:02 -05:00
Major Cooke
dfa4f38c8f
Updated to new save game code.
2016-09-24 09:17:18 +02:00
Magnus Norddahl
5b438d220f
Switch from ratio enum to float
2016-09-12 15:51:50 +02:00
Christoph Oelckers
e04055dbb2
- added multiple message levels for 'developer' CVAR so that the important stuff won't get drowned in pointless notification spam that's of no use to anyone.
...
- made 'developer' CVAR persist across launches and added some menu entries for it.
- added checks for 'developer' to ACS's CheckInventory function.
2016-08-28 09:55:04 +02:00
alexey.lysiuk
cbe0a34f0b
Fixed usages of abs() function with double arguments
...
Clang no longer issues "warning: using integer absolute value function 'abs' when argument is of floating point type"
2016-07-30 14:03:57 +02:00
Christoph Oelckers
5ddee98e70
- fixed: Voxels with scaled to 0 caused a division by zero crash.
2016-07-30 13:19:02 +02:00
Major Cooke
dfed6ac1fb
Added SpriteAngle and SpriteRotation properties.
...
- Includes four functions, A_SetSprite(Angle/Rotation) and GetSprite(Angle/Rotation).
- SpriteRotation offsets the angle of the sprite, allowing for actors to move backwards or sideways for example.
- SpriteAngle requires +SPRITEANGLE and sets the actor's sprite to the absolute rotation found at that angle. Overrides SpriteRotation once the flag is on.
2016-07-30 00:26:40 +02:00
alexey.lysiuk
4345623e28
Fixed incorrect scaling of particles
...
http://forum.zdoom.org/viewtopic.php?t=52906
2016-07-24 14:25:31 +03:00
Christoph Oelckers
018615ca0d
- fixed weapon-based Psprite adjustment to always use the weapon this was called from and make non-weapon specific checks only exclude the targeter.
2016-06-17 14:14:35 +02:00
Christoph Oelckers
7ccdbf9b62
Merge branch 'PSprites'
2016-06-16 16:16:16 +02:00
Christoph Oelckers
db2cef96d6
- removed unnecessary FLOAT2FIXED call in particle code.
2016-06-11 23:43:07 +02:00
Leonard2
eeff17c550
Account for this on the renderer's side instead
...
This fixes the weapon's layer behaving differently when called from
A_Overlay (the flag would be set in this case breaking the offsets)
2016-06-03 00:50:12 +02:00
Leonard2
e1f139ddcd
The targeter layers now use a proper Caller
...
This will avoid having to check for certain stuff and also allow them to not be destroyed when the ReadyWeapon is null like before
2016-06-03 00:50:10 +02:00
Leonard2
f14a840777
The ReadyWeapon is now assumed to not be null
2016-06-03 00:37:54 +02:00
Leonard2
d933f77bf5
Fixed: the game could crash if some inventory items were destroyed in a
...
certain way
2016-06-02 20:00:22 +02:00
Leonard2
2f5ae3b51e
Changed the default layer indices and renamed them
...
Note that this doesn't compile yet
2016-05-28 01:19:41 +02:00
Leonard2
c82620129c
Added A_OverlayFlags
...
Allows psprites to follow the weapon and/or the player's bobbing
2016-05-28 01:19:40 +02:00
Leonard2
1966b61b8f
Generalized the psprites implementation
2016-05-20 17:04:44 +02:00
Christoph Oelckers
8171637a57
- removed the last remaining uses of the finesine table from the rendering code.
2016-04-28 11:37:02 +02:00
Randy Heit
3cabd5f0ed
Fix compilation with GCC
...
- GCC is pickier than Visual C++. GCC requires that structs with constructors, etc that are
used in a union must be defined outside the union. VC++ lets you do it inline.
2016-04-23 20:58:15 -05:00
Randy Heit
991f49e321
Avoid copying vissprite_t in R_DrawPSprites()
2016-04-23 20:42:14 -05:00
Randy Heit
f1b3f59bcc
Renderer floatification: Use floating point for wall scale and yrepeat
2016-04-22 23:12:53 -05:00