Supermodel/Src
Ian Curtis 40c8259130 Rewrite the whole project for GL4+. I figured if we removed the limitation of a legacy rendering API we could improve things a bit. With GL4+ we can do unsigned integer math in the shaders. This allows us to upload a direct copy of the real3d texture sheet, and texture directly from this memory given the x/y pos and type. This massively simplifies the binding and invalidation code. Also the crazy corner cases will work because it essentially works the same way as the original hardware.
The standard triangle render requires gl 4.1 core, so should work on mac. The quad renderer runs on 4.5 core. The legacy renderer should still work, and when enabled a regular opengl context will be created, which allows functions marked depreciated in the core profiles to still work. This will only work in windows/linux I think. Apple doesn't support this.

A GL 4.1 GPU is now the min required spec. Sorry if you have an OLDER gpu. GL 4.1 is over 12 years old now.

This is a big update so I apologise in advance if I accidently broke something :]
2022-11-07 21:33:01 +00:00
..
CPU 68K now uses run-time hooks for IRQ and instruction hook callbacks 2022-11-02 18:46:08 -07:00
Debugger check for __GNUC__ instead of just assuming it 2022-07-17 20:23:11 +02:00
Graphics Rewrite the whole project for GL4+. I figured if we removed the limitation of a legacy rendering API we could improve things a bit. With GL4+ we can do unsigned integer math in the shaders. This allows us to upload a direct copy of the real3d texture sheet, and texture directly from this memory given the x/y pos and type. This massively simplifies the binding and invalidation code. Also the crazy corner cases will work because it essentially works the same way as the original hardware. 2022-11-07 21:33:01 +00:00
Inputs address review 2022-07-17 20:29:25 +02:00
Model3 optimize ReadRegister, as localtime (at least on MSVC/Windows) is significantly showing up in profiling 2022-07-11 18:47:13 +02:00
Network address review 2022-07-17 20:29:25 +02:00
OSD Rewrite the whole project for GL4+. I figured if we removed the limitation of a legacy rendering API we could improve things a bit. With GL4+ we can do unsigned integer math in the shaders. This allows us to upload a direct copy of the real3d texture sheet, and texture directly from this memory given the x/y pos and type. This massively simplifies the binding and invalidation code. Also the crazy corner cases will work because it essentially works the same way as the original hardware. 2022-11-07 21:33:01 +00:00
Pkgs Update glew version 2020-07-31 19:18:51 +00:00
Sound Harmless math warning fixes. map->unordered_map in CNew3D::CacheModel. Avoid general aliasing problems (using bit_cast or the recommended/optimized-away memcpy). 2022-10-03 17:59:59 -07:00
Util address review 2022-10-03 17:59:59 -07:00
BlockFile.cpp fix some real errors (Model3,InputSystem), minor errors (SCSP,SDL/Main) and some performance warnings 2022-07-11 17:43:59 +02:00
BlockFile.h Added functions to safely read and write bools 2017-09-24 20:49:31 +00:00
Game.h njz3: Proper quadrophonic audio support. Need 4+ speakers to take advantage otherwise down mixed to stereo. 2022-06-09 21:10:39 +00:00
GameLoader.cpp address review 2022-07-17 20:29:25 +02:00
GameLoader.h Huge refactor of the Driveboard: 2021-02-18 10:29:15 +00:00
ROMSet.cpp add missing include 2017-04-08 21:01:11 +00:00
ROMSet.h Removed patches from source code and moved them into game XML file. Created ROMSet.cpp. Print a more descriptive error when game XML file fails to load. 2017-04-08 18:30:29 +00:00
Supermodel.h check for __GNUC__ instead of just assuming it 2022-07-17 20:23:11 +02:00
Version.h Introducing a special release build target with SVN version stamping. 2020-12-24 10:20:26 +00:00