Commit Graph

1816 Commits

Author SHA1 Message Date
bbbf246198 WindowsUniversal Application continuous integration 2019-05-06 13:36:03 -04:00
315a6d2c79 Update AUTHORS.txt 2019-05-05 11:11:10 -04:00
9d0b31a6db Update README.md
Windows link
2019-05-04 21:09:29 +03:00
a83bb1b0c8 update / release new bundle to windows store 2019-05-03 16:03:03 -04:00
2c9beac75e update presets included with windows store app 2019-05-03 15:56:32 -04:00
86ebff7e46 Added VR/Multiple screen support (#201)
* Supports Multiple pass2 renderings.

My application (Silent Radiance) added projectM visualizers, but I needed support for VR.
So I added Renderer::RenderFrameOnlyPass1 and Renderer::RenderFrameOnlyPass2
This allows an offset in the screen output so the same image can be rendered twice very quickly.
I could have rendered to a buffer externally.

This is  fed into the Raylib VR in my application to add the fisheye effect.

* Added an example of the VR

* Added multiple screen renderings for VR

Added a new way of rendering that allows multiple pass2's to be done: one per screen.
This allows for a second screen output, and VR. In fact I am using this for VR where I need a left and right eye on the same screen.
In order to do this, I sometimes have to set the viewport not starting at the upper left of the screen.

Added renderFrameOnlyPass2 - and an optional pipeline can be passed - this would be a pipeline when there is a transition from one visual to another.  This can be called once per eye.

Finally, renderFrameEndOnSeparatePasses cleans up, does the fps control, statistics, etc.



This alternate rendering is as possible:
Pipeline pipeline;
Pipeline *comboPipeline;
comboPipeline = renderFrameOnlyPass1(&pipeline);

for each eye:
  renderFrameOnlyPass2(comboPipeline,xoffset,yoffset,eye);
  
Then
renderFrameEndOnSeparatePasses(comboPipeline); 
for the accounting and releasing the mutex

* Removed the duplication of code for VR.

* Removed the duplication of code for VR.
2019-04-29 01:11:18 +03:00
869f913e1d Update projectM.WindowsUniversal.SharedLibrary.vcxproj 2019-04-26 16:10:10 -04:00
6bcbf3dce1 Update EyeTune.WindowsUniversal.Application.vcxproj 2019-04-26 16:10:05 -04:00
21715e91bf Update EyeTune.Shared.vcxitems 2019-04-26 16:10:01 -04:00
cc97a26655 EyeTune for Xbox and Windows Store
src for UWP app
2019-04-26 15:52:12 -04:00
c425e42177 Create .gitignore 2019-04-26 15:45:35 -04:00
835474f1d2 modify for WINRT support 2019-04-26 14:57:58 -04:00
4737920bf1 Update BUILDING.md 2019-04-26 09:28:57 -04:00
c8ec10a0ae 4 commits (#197)
* Remove linkage to SDL

* Fix projectM-jack binary name

* delete generated files

* Also delete generated files in pulseaudio
2019-04-26 00:34:43 +03:00
95d9365338 Fix desktop files (#196)
- Fix exec paths
- Fix omitted .desktop file during install
- Fix description
- Fix icon name, location
2019-04-23 00:24:15 +03:00
0ed6a6258e Use real input on Win/SDL (#194)
* Remove FAKE_AUDIO define on Windows

* Update documentation for Windows

* Update readme info for Windows, extract building guide to BUILDING.md
2019-04-16 18:28:24 +03:00
58ece4fbbb projectM Android native build (#191)
* configure script to build libprojectM with NDK

Allows to cross compile libprojectM library using
Android's toolchain for an arm target.
Tested on Ubuntu.

* Android-NDK: Build .so as well as .a

* Adjust CPPFLAGS to make the .so actually usable

* WIP: crashes in trying to link egl

* Add libEGL to linking flags, so that libprojectM.so depends on libEGL.so

* configure-ndk: set install paths

By setting prefix, libdir and datarootdir it's possible to simply do
$ ./autogen.sh
$ ./configure-ndk
$ make -j`nproc` && make install-strip

to build the library, copy it and headers to the right place, and install
all presets as Android assets for inclusion in the apk.

* Let gradle include libc++_shared.so

No need to include this manually, better to let gradle pull in the
version from the NDK toolchain in use.

* Load jniwrapper

Get boring UnsatisfiedLinkError otherwise.

* Extract and use embedded preset assets

Now ProjectM will cycle through all available presets
based on default settings.

* Add precompiled preset assets

* Don't leak existing instance when creating new one

* A few minor Android build changes: use GLESv3 instead, do not try to build SDL under NDK

* Mark GLESv3 as required.

On some rockchip devices I tested on - only v2 is supported.
projectM fails on glGetSampler calls, since those are not implemented.

* Make Activity full screen

* Android:
 - hook up basic audio
 - start on a random preset
 - switch presets on touch

* Android package rename

* Android: do not story a copy of all presets inside android app

After building the android app's dependecies using NDK,
`make install-strip` copies over the prebuilt libraries
as well as all the presets. Since they are stored in this
git repo, no need to store a copy.

I leave a few test presests in the app, in case someone
wants to try building the app without rebuilding the dependencies.
2019-04-11 16:58:30 +02:00
9f59d72da1 XDG Base Directory Specification compliance (#190)
* Rename variables and replace strcpy calls with strcat

* Use XDG_CONFIG_HOME dir for config when environment variable is set
2019-04-11 09:49:53 +03:00
376d57ccab Trivial fix for projectM-jack.desktop (#189)
as already in src/projectM-pulseaudio/projectM-pulseaudio.desktop remove
extension
Fix an warning when run desktop-file-install
value "prjm16-transparent.svg" for key "Icon" in group "Desktop Entry" is an icon name with an extension, but there should be no extension as described in the Icon Theme Specification if the value is not an absolute path
2019-04-05 09:31:21 +03:00
7a38548ecc Temporarily moved bad presets to bad_presets folder in repo root to avoid disrupting users' visual experience while the community fixes them (#187) 2019-03-30 23:49:44 +02:00
adb7e3ea06 Merge pull request #182 from mancoast/appv
Create .appveyor windows binary release
2019-03-22 15:40:01 -04:00
d9df7c7858 Create .appveyor.yml 2019-03-22 15:19:47 -04:00
503a14ddc2 win32 qt5 is broken, disable build in msvc solution 2019-03-22 14:46:34 -04:00
1604e839ac fix msvc native preset builds 2019-03-22 14:46:20 -04:00
b92a283b43 Windows build with MSVC (#181)
credit: @mancoast 

* msvc

* include glew for windows

* fix usage of std namespace with win32

* Update pmSDL.hpp

fix warning with win32

* update dirent for win32

* libs required for win32 linkage

* Update pmSDL.hpp

SDL_MAIN_HANDLED

* Update ShaderEngine.cpp

init glew to create shaders

* fake SDL audio with win32

* Update Renderer.vcxproj

use wildcards for source filenames

* Create config.h

* Update Expr.cpp

fix win32 breaks

* cleanup broken max function

* Update Makefile.am

remove ref to win32-dirent
2019-03-22 08:55:35 +01:00
6cb87ee699 readme note about autogen 2019-03-14 20:56:19 +02:00
a5fb06ddf7 Sort input file list (#176)
so that projectM builds in a reproducible way
in spite of indeterministic filesystem readdir order.

See https://reproducible-builds.org/ for why this is good.

Without this patch, multiple .milk files varied between builds
in interesting ways:
--- "old//usr/share/projectM/presets/Geiss - All-Spark Polar.milk"
+++ "new//usr/share/projectM/presets/Geiss - All-Spark Polar.milk"
@@ -3,7 +3,7 @@
 PSVERSION_WARP=2^M
 PSVERSION_COMP=2^M
 [preset00]^M
-fRating=4.000000^M
+fRating=2.0^M
2019-03-11 16:02:41 +02:00
0e19f0ebe1 https://github.com/projectM-visualizer/projectm/issues/161 (#175)
fix for https://github.com/projectM-visualizer/projectm/issues/161
2019-03-10 20:05:41 -07:00
0318e390f4 LLVM - add native code generation for expression evaluation (#162) 2019-03-05 14:24:59 -08:00
660ee77eca allow explicit disabling of Qt 2019-03-04 23:28:40 +02:00
9cd0b947e6 version v3.1.1-rc3 2019-03-04 21:37:00 +02:00
d07e97d2a9 mac-dist 2019-03-04 21:36:23 +02:00
9550d745cf Add GLES into automake build / fix android compile string (#171) 2019-03-03 22:59:19 +02:00
e33cf1a6ab Allocate PerlinNoise dynamically / Fix thread detach after join (#170) 2019-03-03 22:58:57 +02:00
299fd58053 fix up macos build script 2019-03-03 12:51:25 +02:00
116010d8ad automating dist for macOS v3.1.1-rc2 2019-03-03 12:40:09 +02:00
3b80031dc9 gitignore for jack 2019-03-03 11:59:53 +02:00
7ef7a379a0 rendercontext is gone 2019-03-03 11:58:24 +02:00
0378ee77ee AX_HAVE_QT for configuring Qt compilation (#167)
* Testing using AX_HAVE_QT for configuring Qt compilation instead of pkg-config

* cleanup

* get RCC too

* try MOC without CXXFLAGS?

* need qt5-default package

* readme, unfuck pulseaudio compile

* already have ax_have_qt.m4

* fixes to add RCC to ax_have_qt
2019-03-02 21:39:38 +02:00
8cafafab65 see if qt5-uic builds without -qt=5 flag 2019-03-01 11:02:00 +02:00
5598b8377c Makefile: qt / jack / pulseaudio (#163)
Major updates to Makefiles, please report any build time issues!
Adding/updating makefiles for Qt, Jack, and Pulseadio implementations



* detect if we have libpulseaudio, libsdl2, and qt5 and if so just enable them automatically without the user having to.

* jack support, travis build with pa/jack/qt

* pass config opts

* test

* test

* test

* don't always enable sdl

* better libsdl2 detection

* hopefully fixed qt/pulse/jack makefiles

* oops

* travis

* fix jack subdir

* jack fixup

* jack makefile

* libsdl 1 for jack

* jack builds yay (qt version)

* testqt

* readme

* let's always build test

* let's always build test

* sdl2 for travis build test

* qt is required for jack/pulse
v3.1.1-rc1
2019-02-28 15:17:35 +02:00
df86fd1240 Merge pull request #125 from luigino/libprojectM
Increase soversion to 3.1.1
2019-02-22 09:39:20 +01:00
3258ff5a1a Increase libprojectM SOVERSION to 3.1.1 2019-02-21 19:41:55 +01:00
614aff4470 Merge branch 'qt_fullscreen' 2019-02-10 11:27:20 +02:00
24f2268811 qt fullscreen 2019-02-10 11:26:55 +02:00
e7319c6cad kill -sdlvis; can't even find anything about it on google. ancient code. 2019-02-10 10:52:41 +02:00
e2c92d0312 Merge pull request #164 from sage-michaels/nix
Add a nix file
2019-02-10 10:45:13 +02:00
ab255c1155 Add a nix file
This makes it easy to install all the relevant depdencies
on OSX. You can then build the project with:

    nix-shell nix/shell.nix --run \
      './autogen.sh && ./configure.sh --enable-sdl && make'
2019-02-09 17:14:05 -08:00
8278444652 Merge pull request #158 from kossebau/fixlocalebaseddoubleparsing
Fix Milkdrop Preset parser to read floats always in C locale
2019-02-09 19:20:53 +02:00
321dd5c287 Merge pull request #155 from kossebau/removeunusedRenderContextfiles
Remove unused libprojectM/Renderer/RenderContext.* files
2019-02-09 19:20:37 +02:00