8 Commits (2a4ec90ff1d414cc78e2c210ee7f26dc6df7b2fd)

Author SHA1 Message Date
Nico de Poel 2a4ec90ff1 Reworked setup of native-to-managed callbacks. The "target" pointer is no longer a part of the callbacks struct, instead this is now supplied and stored as an opaque "context" pointer along with a pointer to the callbacks struct. These are provided through separate SetCallbacks functions before initializing the UniQuake native plugin. This cleans up several functions and requires less use of global pointers, while also making it easier to see how things fit together and how to add new modules in the future. 5 years ago
Nico de Poel e6fd7b83ae First bits of entity logic: assign alias models, update transform and animation, remove entity. Still lots of problems to solve, but it's starting to do something. 5 years ago
Nico de Poel 7f358f5188 Added back in acknowledgements. Seems fair. 5 years ago
Nico de Poel 99b09dc854 Moved some global variables around for portability 5 years ago
Nico de Poel 09ad4b848c Added a build configuration which will only include portable code, i.e. no dependencies on SDL, OpenGL or native Windows libraries 5 years ago
Nico de Poel 11cdaf7a75 Allow passing of player number to FMOD for split-screen purposes. Not used for anything yet, but it's handy to have it in there already. 5 years ago
Nico de Poel 243bb70613 Rewrote the BGM system using FMOD, making the whole codec system rather obsolete 5 years ago
Nico de Poel c91e6b2bea Replaced UQE-based engine code with a modified QuakeSpasm, stripping out all music codecs (obviously losing music playback capability but that'll be re-added later), and compiling to a DLL with the UniQuake integration code added in. 5 years ago
Nico de Poel 404f19a56d Renamed mod* to gl* to reflect that it's about rendering in general, and cleaned up & rearranged some code 5 years ago
Nico de Poel 264848f832 Integrated FMOD (just Core, not Studio) into the Unity project and initialize it through a new AudioManager. The FMOD Core system handle is shared between Unity and Quake, so that both may produce sound through the same audio device. 5 years ago
Nico de Poel e9529687e5 Newlines correction 5 years ago
Nico de Poel fa50659490 Use custom exceptions to stop control flow in the Quake engine on Error and Quit, and shut down the engine. Doesn't work quite as intended yet (Quit will terminate the entire Unity application for some reason, instead of just Quake) but it's a step in the right direction. 5 years ago
Nico de Poel ec8951fa7c First test to upload model data (brush models and alias models) from Quake to Unity 5 years ago
Nico de Poel 40c8c13fb3 Moved native Sys_ calls into their own separate compilation unit, and removed some auto-generated Windows garbage 5 years ago
Nico de Poel 0fafaf32ad Callback target pointer is now contained within the struct passed to native. Organized yet more code to move generic GCHandle stuff into the base class. 5 years ago
Nico de Poel b2ad8a5074 Added an opaque target pointer to each callback function, so that Unity can pass an object instance and use that instance when processing callbacks. 5 years ago
Nico de Poel 9c5e00b8a0 Modified callback conventions so that the paradigm is more Unity implementing system calls required by Quake in whatever way works best, rather than Quake calling specific Unity functions. 5 years ago
Nico de Poel 3f74b45969 Renamed UniQuake files and functions to have consistent casing 5 years ago
Nico de Poel 6a06621b90 Added some fun stuff that allows you to play with the time scale in Quake, either speeding it up or slowing it down from Unity. 5 years ago
Nico de Poel 03cee3a4ce Implemented minimum system functionality to initialize Quake from inside a DLL 5 years ago