Commit Graph

25 Commits

Author SHA1 Message Date
e6a33aa5b3 refactor 2020-09-01 10:20:28 +04:00
15230781e1 comments 2020-09-01 10:20:16 +04:00
4994725805 preset loader updates care of @khoaxtru20 2020-09-01 10:19:21 +04:00
e49720ecfa Preset subdirs (#385)
Scanning textures/presets dirs for textures and scanning preset dir for presets.
Scanning is now done recursively, so presets and textures can be organized into subdirectories instead of needing to be flattened into a single directory.

On POSIX systems makes use of [ftw](https://linux.die.net/man/3/ftw) which should be relatively efficient. Otherwise falls back to recursing with `dirent` (for windows).

Probably should have made an autoconf check for `ftw` instead of doing `#ifdef WIN32`. 

* Scan subdirectories in presets directory

* remove preset subdir config

* Recursively scan for textures too, add c++-17 compatibility

* Refactor directory scanning code so it's reused by texture loader and preset loader. Make cross-platform (maybe)

* filescanner in makefile

* extension filter for file loader

* make extensions match up'

* need string.h

* Add FileScanner.cpp to win build (maybe)

* scan all dirs

* #ifndef #ifdef is def fun

* bogus comment

* bleh

* bleh

* itunes plugin with c++17

* EyeTunes needs to know about the FileScanner

Co-authored-by: milkdropper.com <milkdropper.com@gmail.com>
Co-authored-by: milkdropper <59471060+milkdropper@users.noreply.github.com>
2020-07-28 22:01:56 +03:00
d4d74f6d05 Build warnings cleanup 2018-11-17 11:42:28 +01:00
1593d10656 sort of progress w/ comp/warp shader programs 2018-06-12 09:35:08 +03:00
2df0738cce Cross-platform GL include (#41)
* qt autoconf

* WIP: Qt5 makefile

* go away cmake

* testing bsd define

* readme

* replacing __linux__ with __unix__

* sdl/libGLU

* Revert "WIP: Qt5 makefile"

This reverts commit aaa44566b9.

* Revert "qt autoconf"

This reverts commit a82dae3c54.

* Revert "go away cmake"

This reverts commit 1392d5e658.

* fix amflags for m4 dir

* opengl header

* opengl header

* use one header for dealing with cross-platform GL includes

* include opengl header in dist

* fix _WIN32 (maybe?)
2018-03-12 22:20:19 +02:00
8eaa232dda Use autotools to build (#27)
* remove c3d/build

* autotools start

* ignore

* autoreconf? idk

* linux/osx gcc/clang

* no glut, need glew tho

* fix test matrix

* fix linux conditional includes?

* sdl makefile am

* SDL2 m4/autoconf

* idk more m4 crap

* ignore more junk

* ug

* go away idk

* renderer makefile

* fixing SDL's broken-ass sdl2.m4 lol

* progress

* cmake go away

* full autotools build working yay

* autogen script, readme update

* fix linux ifdefs

* stuff

* fix linux -ldl

* mac sdl dep for travis

* whoops

* brewwww

* no osx gcc

* no test

* kinda working linux library build

* travis apt packages

* ignore old SDL2 for travis

* typo

* autogen for osx build readme
2018-02-09 14:25:54 -08:00
db7430668b can build libprojectM+renderer+presetfactories and projectM-SDL with some Make. cmake status: BTFO 2017-09-18 15:18:51 -07:00
a36cf56b66 experimenting with osx/Cg 2014-06-22 12:48:59 -07:00
b87f1ad8a3 encapsulate factory/preset alloc in one method.
throw typed exception in allocate()
2012-11-11 23:11:21 -05:00
562700a643 core: Fix crash on Windows
Thanks to Clementine devs for the patch!


git-svn-id: https://projectm.svn.sourceforge.net/svnroot/projectm/trunk@1380 6778bc44-b910-0410-a7a0-be141de4315d
2012-01-05 21:06:13 +00:00
071a6a4ac6 use preset list size to compute initial preset rating sums, not ratings sum size.
git-svn-id: https://projectm.svn.sourceforge.net/svnroot/projectm/trunk@1306 6778bc44-b910-0410-a7a0-be141de4315d
2009-12-01 02:46:47 +00:00
707beb75a8 whats with my amazing ability to keep around invalid assertions.
git-svn-id: https://projectm.svn.sourceforge.net/svnroot/projectm/trunk@1294 6778bc44-b910-0410-a7a0-be141de4315d
2009-10-09 02:47:07 +00:00
7d0daf3339 refactored libprojectM preset rating interface to support generic number of ratings.
git-svn-id: https://projectm.svn.sourceforge.net/svnroot/projectm/trunk@1289 6778bc44-b910-0410-a7a0-be141de4315d
2009-10-04 02:20:03 +00:00
1829b879a4 super new, unpolished "breedability" feature.
git-svn-id: https://projectm.svn.sourceforge.net/svnroot/projectm/trunk@1288 6778bc44-b910-0410-a7a0-be141de4315d
2009-09-16 05:42:18 +00:00
cf83c16e3e first buildable implementation of a render item object optimal matching algorithm.
git-svn-id: https://projectm.svn.sourceforge.net/svnroot/projectm/personal/carm/represet@1207 6778bc44-b910-0410-a7a0-be141de4315d
2009-02-18 09:31:41 +00:00
cb749dcafa preset loader now has url based preset accessor method.
one of many to come bug fixes in the projectm top level.



git-svn-id: https://projectm.svn.sourceforge.net/svnroot/projectm/personal/carm/represet@1165 6778bc44-b910-0410-a7a0-be141de4315d
2008-09-18 08:02:23 +00:00
74b51de9d7 proper init of preset loader at projectm top level
took out all milkdrop specific stuff from projectM.cpp (including headers)


git-svn-id: https://projectm.svn.sourceforge.net/svnroot/projectm/personal/carm/represet@1152 6778bc44-b910-0410-a7a0-be141de4315d
2008-09-13 04:20:49 +00:00
d97cff8190 added extensionHandled() check to PresetFactoryManager, now used by PresetLoader
git-svn-id: https://projectm.svn.sourceforge.net/svnroot/projectm/personal/carm/represet@1151 6778bc44-b910-0410-a7a0-be141de4315d
2008-09-13 04:11:22 +00:00
6a410275bf Embedded a preset factory manager into preset loader.
git-svn-id: https://projectm.svn.sourceforge.net/svnroot/projectm/personal/carm/represet@1149 6778bc44-b910-0410-a7a0-be141de4315d
2008-09-13 03:22:11 +00:00
ece669b505 partial preset factory integration
git-svn-id: https://projectm.svn.sourceforge.net/svnroot/projectm/personal/carm/represet@1137 6778bc44-b910-0410-a7a0-be141de4315d
2008-09-07 16:35:30 +00:00
3870526f3e preset loader refactoring
git-svn-id: https://projectm.svn.sourceforge.net/svnroot/projectm/personal/carm/represet@1134 6778bc44-b910-0410-a7a0-be141de4315d
2008-09-05 13:39:09 +00:00
191c790cf3 preset refactoring grunt work
git-svn-id: https://projectm.svn.sourceforge.net/svnroot/projectm/personal/carm/represet@1133 6778bc44-b910-0410-a7a0-be141de4315d
2008-09-05 04:33:01 +00:00
aa87726bb2 renamed projectM-engin libprojectM
git-svn-id: https://projectm.svn.sourceforge.net/svnroot/projectm/trunk@1116 6778bc44-b910-0410-a7a0-be141de4315d
2008-07-22 01:08:53 +00:00