gm-matthew
6908e5fd3f
Step15Luminous() applies to all polys, not just textured ones
2024-08-02 17:20:23 +01:00
dukeeeey
ce9809c4d7
Merge pull request #173 from gm-matthew/textureNP
...
New textureNP implementation
2024-08-02 08:03:06 +01:00
gm-matthew
493c5aae98
New textureNP implementation
...
This new implementation uses the previously unused viewport parameter "cota"
2024-08-01 23:24:46 +01:00
Ian Curtis
3d8557dc44
fix minor compile warning
2024-07-29 10:54:59 +01:00
Ian Curtis
49ca8c1480
Fix mipmaps
...
Real3d mipmaps only go down to 2x2 pixels. The 1x1 pixels generated previously were actually the last part of the 2x2 mipmaps.
2024-07-29 00:19:26 +01:00
dukeeeey
27a2336528
Merge pull request #169 from gm-matthew/texture
...
First 4MB of VROM maps to polygon RAM
2024-07-28 16:39:18 +01:00
gm-matthew
aeaa602093
First 4MB of VROM maps to polygon RAM
...
Daytona 2 PE replaces unused Dreamcast logo textures by filling in zeroed data from polygon RAM. Before we were reading from the first 4MB of VROM which is filled with 0xFF values, resulting in the replaced textures incorrectly becoming white and opaque.
2024-07-28 16:06:47 +01:00
dukeeeey
32414ee1fd
Merge pull request #168 from gm-matthew/specular
...
Specular lighting works differently on flat-shaded polys
2024-07-26 18:00:09 +01:00
gm-matthew
6d5aeb1da5
Specular lighting works differently on flat-shaded polys
...
Also lower multIndex values for smooth-shaded specular, more accurate to real hardware
2024-07-26 17:22:35 +01:00
dukeeeey
5fa402f2f5
Merge pull request #165 from gm-matthew/widescreen
...
Don't expand culling planes unless widescreen is enabled
2024-07-19 16:32:45 +01:00
gm-matthew
d7fdba0620
Don't expend culling planes unless widescreen is enabled
2024-07-19 14:19:09 +01:00
gm-matthew
a2645c944f
Give PowerPC more cycles to acknowledge sound IRQs
...
400 cycles was not enough and would cause VF3 to hang. 1000 cycles should be more than plenty
2024-07-13 18:50:31 -07:00
Ian Curtis
5a8cddd09a
remove dead code
2024-07-13 12:14:54 +01:00
Ian Curtis
79868e0ad3
fix compilation
2024-07-08 12:19:06 +01:00
dukeeeey
40bb7acbf7
Merge pull request #160 from gm-matthew/textureNP
...
Texture mipmaps must be at least 2x2
2024-07-06 18:47:05 +01:00
gm-matthew
2b186e688c
Texture mipmaps must be at least 2x2
...
Fixes sky in Dirt Devils
2024-07-06 00:04:52 +01:00
dukeeeey
ee5d6523c8
Merge pull request #159 from gm-matthew/textureNP
...
Implementing texture NP values
2024-07-05 17:21:14 +01:00
gm-matthew
3cf8a1fa94
Implementing texture NP values
...
For some reason Model 3 uses vertex coordinates rather than texel coordinates to calculate mipmap levels
Revised microtexture implementation; results are very close to real hardware when running at native resolution with supersampling disabled
2024-07-05 15:57:25 +01:00
Ian Curtis
19612e1b13
fix merge error
2024-06-13 13:43:42 +01:00
Ian Curtis
4d1484c0c9
merge conflicts
2024-06-13 13:40:30 +01:00
Ian Curtis
edb11dc223
Performance improvements
...
The old texture code was being bottle necked by the texture reads. We mirrored the real3d texture memory directly, including the mipmaps in a single large texture. I *think* most h/w has some sort of texture cache for a 2x2 or 4x4 block of pixels for a texture. What we were doing was reading the base texture, then reading the mipmap data from a totally separate part of the same texture which I can only assume flushed this cache. What I did was to create mipmap chains for the texture sheet, then copy the mipmap data there. Doing this basically doubles performance.
2024-06-13 13:36:30 +01:00
gm-matthew
42e236be0d
Add comment briefly explaining optimization
2024-06-10 15:25:13 -07:00
gm-matthew
f30a8ee2a8
Minor shader optimization
...
If the mipmap level is 0.0, we only need to run texBiLinear() for the highest quality texture mipmap
Adds around 10-20% more performance in Daytona 2
2024-06-10 15:25:13 -07:00
Ian Curtis
a6466b353d
spelling
2024-06-01 19:20:35 +01:00
Ian Curtis
21e148599a
Fix some missing scroll fog background effects in ECA
2024-06-01 10:38:40 +01:00
gm-matthew
7d32bde074
When disabling sound IRQs via MIDI control port, clear current IRQ
...
Prevents Dirt Devils hanging during boot
2024-05-22 15:36:15 -07:00
dukeeeey
976f0208dc
Merge pull request #151 from gm-matthew/sound-irq
...
Sound IRQs are acknowledged by writing to MIDI data port
2024-05-20 19:31:25 +01:00
gm-matthew
8a0bf29dd8
Sound IRQs are acknowledged by writing to MIDI data port
2024-05-20 13:38:45 +01:00
dukeeeey
7b02f58694
Merge pull request #149 from gm-matthew/scuddxo
...
Only access SCSI device at 0xC0xxxxxx if it has been configured to do so
2024-05-04 20:22:42 +01:00
gm-matthew
3e394d1257
Only access SCSI device at 0xC0xxxxxx if it has been configured to do so
...
Fixes some step 1.5 games not working in last update
2024-05-04 19:43:02 +01:00
dukeeeey
2245fca796
Merge pull request #147 from gm-matthew/scuddxo
...
Adding newly dumped version of Scud Race
2024-05-02 23:29:47 +01:00
gm-matthew
39dc16d8ba
Use integer value for game stepping
2024-05-02 23:25:53 +01:00
gm-matthew
944e4855d9
Adding newly dumped version of Scud Race
...
Allow Step 1.5 games to access 53C810 via 0xC00000xx if the netboard is disabled, because scuddxo requires this
2024-05-02 15:43:37 +01:00
Bart Trzynadlowski
250f84e78e
Updated .gitignore to exclude build directories and Supermodel release directories
2024-04-05 14:28:07 -07:00
dukeeeey
dec85032ba
Merge pull request #138 from h0tw1r3/fix/2d-shaders
...
Fix 2D texture rendering on OSX
2024-03-14 10:30:48 +00:00
Bart Trzynadlowski
d9f48db5db
CLogger: destructor needs to be virtual
2024-03-09 20:56:50 -08:00
Jeffrey Clark
93f622ee25
cleanup code format
2024-03-06 01:07:56 -06:00
Jeffrey Clark
047b15c210
fix 2d shaders on OSX
2024-03-06 02:11:21 -06:00
baraclese
1bb7de1dd9
fix segfault in CMultiLogger
...
vsprintf may change its va_list argument so repeatedly calling it with the same va_list arg is undefined behavior.
Fix this by creating a copy of the va_list argument before each vsprintf call.
2024-03-05 16:07:47 -08:00
Bart Trzynadlowski
e59ecea32d
PowerPC frequency determined by board stepping, config option is now just an override
2024-01-28 21:08:12 -08:00
Jacob Oxford
620a581227
No need to have changelog from 2011 in Readme.txt anymore.
2023-12-30 15:32:11 -08:00
Ian Curtis
75260f9f2c
Clamp LODscale. If the object is drawn at zero we produce an Inf value which will produce Nans with later calculations.
2023-12-29 13:28:10 +00:00
Ian Curtis
0e07f29f80
Amend ambient fog logic
...
Should stop the sky flashing in lemans24, and the background totally disappearing in sega rally after a game. The logic here is still not totally understood but works well enough for the games.
2023-12-27 12:42:32 +00:00
Ian Curtis
c039d08c03
Add supersampling anti-aliasing
...
Late christmas present. Due to the way alpha works on the model3 adding regular anti-aliasing doesn't really work. Supersampling is very much a brute force solution, render the scene at a higher resolution and mipmap it.
It's enabled via command line with the -ss option, for example -ss=4 for 4x supersampling or by adding Supersampling = 4 in the config file.
Note non power of two values work as well, so 3 gives a very good balance between speed and quality. 8 will make your GPU bleed, since it is essentially rendering 64 pixels for every visible pixel on the screen.
2023-12-26 18:25:03 +00:00
dukeeeey
33b84c89aa
Merge pull request #122 from gm-matthew/floatZ
...
Floating point reversed z-buffer and new clipping code
2023-12-22 17:06:35 +00:00
gm-matthew
6acb1165d4
Added new uniform bool polyAlpha to shaders
...
Added original matrix functions back into Mat4 class though they are currently unused
2023-12-22 16:31:05 +00:00
gm-matthew
9f66fcaac7
Floating point reversed z-buffer and new clipping code
...
Also always draw nodes with culling disabled even if they test as being outside the visible frustum
2023-12-22 02:00:47 +00:00
dukeeeey
6f409539a7
Merge pull request #120 from gm-matthew/patch
...
Fixed Scud Race Plus "ROLLING START" patch
2023-12-04 13:08:11 +00:00
gm-matthew
5b9e97008c
Fixed Scud Race Plus "ROLLING START" patch
...
Accidentally patched the wrong memory location in Scud Race Plus
2023-12-04 02:33:00 +00:00
dukeeeey
a19ba3cba8
Merge pull request #118 from firewave/uninit
...
Model3.cpp: avoid usage of uninitialized memory
2023-12-03 18:22:30 +00:00