Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Replace 3rd party libs #74

Open
4 of 10 tasks
fgenesis opened this issue Jan 13, 2021 · 0 comments
Open
4 of 10 tasks

Replace 3rd party libs #74

fgenesis opened this issue Jan 13, 2021 · 0 comments

Comments

@fgenesis
Copy link
Member

fgenesis commented Jan 13, 2021

Easy, to be done first:

  • Remove iprof (was never used and is still in the repo) and related BBGE_PROF macro.
  • Replace Lua allocator with my new one
  • Replace old JPS with the improved version
  • Replace glm with a custom subset (Aquaria uses very little of what glm provides) and remove related BBGE_USE_GLM define. The math code from wfstd seems reasonably optimized and might be worth a try.

Later:

  • Replace OpenAL with SoLoud and remove the horrible FmodOpenALBridge. Maybe add a Lua API for some extra audio effects?
    • Delete ExternalLibs/AL headers + libs
  • Replace ttvfs with tio+vfs (when it's done)
  • Remove or rework glpng so that texture decoding and upload are separated. Decouple from OpenGL.
  • Remove pre-built SDL12 + SDL2 libs and the related headers from the repo
  • Delete the old vc90 project file and go full CMake (still relies on included SDL+AL libs)
@fgenesis fgenesis mentioned this issue Jan 13, 2021
8 tasks
fgenesis added a commit that referenced this issue Jan 23, 2021
Renamed original .c file to .cpp to make VS2008 happy
fgenesis added a commit that referenced this issue Mar 19, 2022
fgenesis added a commit that referenced this issue Apr 7, 2022
- Building with CMake for development is now actually sane
- Split deps into projects and extra files
- Building against external deps should still work but needs testing
- Can now build out of the box without further adjustments as long as SDL(2) is found properly
- Build Lua in C++ mode (so it can use exceptions instead of setjmp/longjmp)
  - Unfortunately we need to enable exceptions for this :(

- Remove these defines:
  * AQUARIA_BUILD_SCENEEDITOR (now always on)
  * AQUARIA_BUILD_CONSOLE (now always on)
  * BBGE_BUILD_ACHIEVEMENTS_INTERNAL (now always on unless BBGE_BUILD_STEAMWORKS is defined)
  * BBGE_BUILD_OPENGL_DYNAMIC (now always on, define BBGE_BUILD_OPENGL_STATIC if needed)
  * BBGE_BUILD_FMOD_OPENAL_BRIDGE (now always on)
- BBGE_BUILD_STEAMWORKS is not actually implemented (any volunteers?)
- Prepare later removal of SDL & the old vc90 project from the repo. See #74 for extra notes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant