DaMarkov
15b6650851
Added more null pointer checks.
2022-02-23 04:58:50 +01:00
DaMarkov
4897b053a9
Added more null pointer checks to avoid a crash in RSP_LoadMatrix
.
2022-02-23 04:40:19 +01:00
DaMarkov
f2df41128c
Added null pointer check to gSPLight
.
2022-02-23 04:02:55 +01:00
DaMarkov
e07e8c69df
Added a null pointer check to gSPDisplayList
.
2022-02-23 03:59:56 +01:00
Blake Warner
403658b456
used bit 1 to signify segment address lookup
2022-02-10 23:54:51 -05:00
Blake Warner
a054cb622b
stripped unneeded files and changed default config options
2022-01-31 16:41:02 -05:00
Blake Warner
0255e10db6
native port
2022-01-29 17:22:09 -05:00
Sergey Lipskiy
30e4d3416b
Minor code cleanup in gSPCullVertices
2022-01-16 18:07:24 +07:00
Sergey Lipskiy
4ec006f57d
Debug print TextureDetail mode in gSPSetOtherMode_H
2021-08-07 22:21:34 +07:00
s2s
fe244c5560
Update widescreen hack
2021-04-19 21:55:00 +07:00
Sergey Lipskiy
3d67ac4630
Fix clipping
2021-04-19 21:55:00 +07:00
s2s
81318c5445
Use screen coordinates to render primitives
2021-04-19 21:55:00 +07:00
Sergey Lipskiy
7d237650ef
Correct texture coordinates calculation in gSPSprite2DBase.
...
Fixed WipEout 64 Texture Pack #2423
2021-01-24 19:40:47 +07:00
Sergey Lipskiy
46c65776a0
Code refactor and cleanup:
...
* type cast fixes
* signed/unsigned fixes
* code formatting fixes
* class members initialization fixes
2020-11-14 16:54:28 +07:00
Sergey Lipskiy
2616ba9587
Code cleanup.
2020-05-11 18:17:46 +07:00
Sergey Lipskiy
c8cbafff71
Use the second color section of the Light structure for vertices with odd index (1, 3, ...).
...
Both color sections of the Light structure must store the same color,
but it is not so for SM64.
Fixed #2212 SM64 koopa's shorts are not correct in hle
2020-05-03 12:10:09 +07:00
Sergey Lipskiy
a2d731b4db
Update viewport on clip ratio change.
2020-04-06 20:01:53 +07:00
Sergey Lipskiy
022b375614
RE2 related fixes:
...
* fixed gSPModifyVertex for case when primitive depth enabled
* fixed GraphicsDrawer::isRejected for case when coordinates of vertex set by gSPModifyVertex
* fixed writeDepth() shader for RE2
Fixed various issues mentioned in #2152
2020-03-18 14:50:45 +07:00
Francisco Zurita
c06c593eba
Improve logging information
2019-04-23 11:15:41 +07:00
Sergey Lipskiy
c57909e2e9
Reset gSP.geometryMode at display list load and display list end.
...
Fixed culling issue in Triple Play 2000.
2019-04-01 15:21:08 +07:00
Sergey Lipskiy
6041b47271
Fix Insert Matrix moveword command.
...
Fixed Sim City 64 HLE City Rendering Issue #1200
2019-03-11 22:10:28 +07:00
Sergey Lipskiy
76a56b4273
Fix gSPModifyVertex for Z coordinate.
...
Fixed gasp: wrong depth in menu #2019
2019-03-07 12:09:26 +07:00
Sergey Lipskiy
31e2c7e11a
Correct lighting for CBFD.
...
Code refactoring.
2019-01-13 01:07:20 +07:00
Sergey Lipskiy
6135aa9de1
Activate hack for WCW Nitro backgrounds.
...
Currently it is impossible to draw them without hack.
Fixed WCW Nitro: the mysterious wrong textures #179
2019-01-13 00:38:10 +07:00
Sergey Lipskiy
dcbea90e76
Correct _loadSpriteImage: if bg image address is inside cfb buffer, remove that buffer.
2019-01-13 00:38:06 +07:00
Sergey Lipskiy
bb8c13ccce
Implement rejection processing, see 25.3.2 of programming manual
...
Fixed Mario Party: Coin Block Blitz ground flicker / darkening #1912
2018-12-06 17:31:50 +07:00
Sergey Lipskiy
cbf5821f8e
Clamp arguments for acos when calculating G_TEXTURE_GEN_LINEAR
...
Fixed (Majora's Mask) Glass in Postman House not rendering #1941
Note: ucode actually works a bit differently because it uses approximated acos calculation.
2018-11-20 22:47:59 +07:00
Sergey Lipskiy
7aa360c900
Clear fog parameters in gSPLoadUcodeEx.
...
Fixed Zelda OOT wrong fog [HLE] #640
2018-11-03 15:40:41 +07:00
gizmo98
13f587a360
tile functions: Replace magic numbers with constants
...
Just refactoring. Replace magic numbers with constants. No functional
changes.
2018-09-30 18:03:46 +07:00
Sergey Lipskiy
b012e8b53c
Code refactor:
...
* move implementation of S2DEX commands from gSP.cpp to uCodes/S2DEX.cpp
* code cleanup
2018-09-30 18:03:44 +07:00
Sergey Lipskiy
9192a82905
Rewrite vertex coordinates calculation for gSPObjRectangle using fixed-point math decoded from S2DEX ucode by olivieryuyu
...
Code refactoring.
2018-09-30 18:03:44 +07:00
Sergey Lipskiy
7d75b99705
Rewrite gSPObjSprite using fixed-point math decoded from S2DEX ucode by olivieryuyu
2018-09-30 18:03:44 +07:00
Sergey Lipskiy
cf05918222
Revert "Shift sprite origin Y by -0.5"
...
This reverts commit 43e0ad500f
.
2018-09-30 18:03:43 +07:00
gizmo98
d4cce52c60
Rewrite ObjCoordinates(const uObjScaleBg * _pObjScaleBg)
...
gSPBgRect1Cyc() and gSPBgRectCopy() use ObjCoordinates(const
uObjScaleBg * _pObjScaleBg).
This modification fixes bad texture quality in following games:
-Bakuretsu Muteki Bangaioh
-Nintama Randou
-Starcraft
-Command & Conquer
-SD Hiryuu noKen Densetsu
https://github.com/gonetz/GLideN64/pull/1878
2018-09-07 21:25:44 +07:00
Sergey Lipskiy
43e0ad500f
Shift sprite origin Y by -0.5
...
Fixed Parlor! Pro 64 #133
2018-08-12 16:27:40 +07:00
gizmo98
59ad164258
ObjCoordinates: Implement G_OBJRM_BILERP
...
-Rewrite lrx, ulx, lry, uly, lrs, uls, lrt, ult calculation
-Implement SHRINKSIZE according to programmers guide
-Implement G_OBJRM_BILERP according to programmers guide
-Worms Armageddon: Menu items, 2D elements and worms are sharp
-Kirby Crystal Shards: Menu is sharp
2018-08-04 20:36:54 +02:00
gizmo98
c76daedfc0
Fix Worms Armageddon
...
Rewrite
https://github.com/gonetz/GLideN64/commit/feb0e53034d54095464687dbae1785
4c9dc3caa6 to fix Worms Armageddon. If upper left value is zero lower
right value is scaled width minus one scaled texel.
Example:
Width = 10.0f, scale is 1.0f
urx = 0.0f;
lrx = 0.0f + 10.0f/1.0f - 1.0f/1.0f = 9.0f
Resulting range is 0-9 for a 10 texel width texture.
2018-08-03 17:15:24 +07:00
gizmo98
a6adf6308d
gSPInsertMatrix: fix insert fractional part if old value is negativ
...
s32 integer = static_cast<s32>(-2.5f) = -2
GetFloatMatrixElement(static_cast<s16>(integer), 0x44) = -1,9993286030
Fix:
s32 integer = (-2.5f * 65535.0f) >> 16 = (163837) >> 16 = -3
GetFloatMatrixElement(static_cast<s16>(integer), 0x44) =
-2,999008163576715
2018-07-22 19:58:22 +07:00
Sergey Lipskiy
b0a575313a
Implement Factor5 ucodes for Indiana Jones/Battle of Naboo, task #1259
2018-06-16 18:41:50 +07:00
Sergey Lipskiy
3ff1478103
Add matix element conversion functions.
2018-06-11 20:12:13 +07:00
gizmo98
95d5264300
Add better matrix load, insert and store fixed to float logic
2018-06-09 12:29:01 +02:00
gizmo98
35f4ad3b28
gSP.cpp: Replace _FIXED2FLOAT if there is no real fixed to float conversion
...
Use * recip instead
2018-06-02 21:35:32 +07:00
gizmo98
4750e10076
Use _FIXED2FLOATCOLOR
2018-06-02 21:35:32 +07:00
gizmo98
bb00ed3f4f
gSPInsertMatrix remove (int) cast and use copysignf
...
Fraction value gets lost if float is cast to int. Use copysignf to
transfer sign from fraction to newvalue.
2018-06-02 21:35:32 +07:00
gizmo98
a8349418ce
Use _FIXED2FLOAT
...
Replace x/65536 and x*0.00390625f with _FIXED2FLOAT
2018-06-02 21:35:32 +07:00
Logan McNaughton
e80577e105
Allow non-0 default framebuffer
2018-05-22 08:25:24 -06:00
Sergey Lipskiy
6725ad474a
Fix warnings of 64bit compiler.
2018-05-06 15:54:12 +07:00
Logan McNaughton
18e9a73eba
Cache SpecialFeatures check
2018-04-07 11:30:33 +07:00
Gillou68310
592c732ef3
Implement BOSS ZSort ucode (WDC, Stunt Racer)
2018-02-12 12:28:58 +01:00
Sergey Lipskiy
acc884ac0b
Apply Acclaim point lighting for vertices, which also shaded by standard lighting.
...
Fixed #1683 Turok 2: Seeds of Evil (and maybe other Iguana made games) - Object Dynamic Light Issue
2017-12-16 13:10:15 +07:00