Commit Graph

70 Commits

Author SHA1 Message Date
Alexis Maiquez
d03edb7c1e ~ cleaned up main function and moved initialization functions to a more proper place
~ check for SDL initialization before playing audio to prevent error messages when there is not really any error
~ changed a missed iterator to auto on CSound

Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-09-10 12:55:45 +02:00
Alexis Maiquez
ce67c0bf64 ~ moved file resolution to the Irrlicht Context class
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-09-10 11:32:15 +02:00
Alexis Maiquez
3587fdec1e ~ changed all iterators to auto
~ changed most pointers to const references to prevent modification, specially from the background parser

Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-09-10 11:02:45 +02:00
Alexis Maiquez
3371e10b01 ~ fixed segmentation fault when creating a scene
+ added check for texture rendering on startup
~ fixed possibly wrong texture size for passes
~ changed camera position

Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-09-09 16:06:28 +02:00
Alexis Maiquez
f7be32eed3 ~ moved OnRegisterSceneNode to CObject as this function should barely change
+ support for sounds added

Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-09-09 10:13:06 +02:00
Alexis Maiquez
e285b313e0 ~ use clearcolor from scene instead of using black
~ camera should use it's own getters, not access the m_camera object directly

Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-09-09 09:46:29 +02:00
Alexis Maiquez
d13ad3fdca ~ moved passes counter to the correct place
~ generated unique name for pass textures

Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-09-09 09:20:27 +02:00
Alexis Maiquez
7ab533aaab + Support for multi-passes materials added
Take in mind that this feature is still in development, so the result most likely will be very different from the actual wallpaper engine
  The final approach might be different from what's currently in use, but It's just a nice proof of concept approach

Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-09-09 02:30:29 +02:00
Alexis Maiquez
32a6a7af65 + Added parsing of shader constants for effects
~ Improved Shader Compiler parameter list to a better approach
+ Added support for one-pass effects with shaders (only first shader/pass will be applied)

Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-09-08 21:09:19 +02:00
Alexis Maiquez
fc8778ab64 ~ More changes to the new parser to properly load object passes from JSON (combos, elements missing, shader, etc)
+ Added camera for new renderization code
+ Added scene for new renderization code
+ Added object for new renderization code
+ Added image for new renderization code
  WARNING: THIS IS A REGRESSION AS IN SHADERS ARE NOT AS COMPLETE AS IN THE MASTER BRANCH
~ New renderization code in place

Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-09-06 15:54:41 +02:00
Alexis Maiquez
a40a83006e Merge branch 'master' of https://github.com/Almamu/linux-wallpaperengine into data-separation
# Conflicts:
#	main.cpp

Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-09-06 14:41:41 +02:00
Alexis Maiquez
75fd581eac Merge branch 'data-separation' of https://github.com/Almamu/linux-wallpaperengine into data-separation
# Conflicts:
#	main.cpp
#	src/WallpaperEngine/video/renderer.cpp

Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-09-05 17:26:58 +02:00
Alexis Maiquez
b8b3c2899d ~ Removed static variables in namespace WallpaperEngine::Irrlicht and moved to a context approach
This includes changes to old code to be compatible, the externs won't be used once the renderer is rewritten and the old code removed

Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-09-05 17:24:16 +02:00
Alexis Maiquez
0ecc8b6e61 ~ Fixed getopt string not being correct
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-09-05 03:05:51 +02:00
Alexis Maiquez
ec29beca90 + Added FPS capping option for laptops
~ Changed default FPS cap to 30 FPS
~ Fixed bug where the windowed mode wasn't rendering anything

Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-09-05 03:05:15 +02:00
Alexis Maiquez
eb60ea9029 Merge branch 'master' of github.com:Almamu/linux-wallpaperengine into data-separation
# Conflicts:
#	CMakeLists.txt
#	main.cpp
#	src/WallpaperEngine/video/renderer.cpp

Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-09-04 23:04:01 +02:00
Alexis Maiquez
ce23ca53b1 ~ Reorganized viewport detection for screens and added proper checks for XRandr extension
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-09-04 22:23:47 +02:00
Alexis Maiquez
be68fe209f Merge branch 'master' of github.com:Almamu/linux-wallpaperengine 2019-09-04 22:08:49 +02:00
Alexis Maiquez
82c187fa76 ~ Support for displaying on background of specific screens instead of displaying on top, please carefuly read the README.md before using
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-09-04 22:08:32 +02:00
Alexis Maiquez
1c50095ead ~ Changed FileSystem/utils.h to FileSystem/FileSystem.h following the same criteria used in Core namespace
~ Updated #include directives to include full paths to files
~ Re-organized folder structure for the project

Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-09-04 09:18:33 +02:00
Alexis Maiquez
b0a3993d9f ~ Renamed utils file to a more proper name
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-09-03 15:15:11 +02:00
Alexis Maiquez
06ecbcdd65 + Added property parsing (color parsing for now only)
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-09-03 15:05:45 +02:00
Alexis Maiquez
5c56e0860b ~ Moved Shader compiler to the proper, new namespace
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-09-02 12:19:42 +02:00
Alexis Maiquez
db89bf2e17 Merge branch 'master' of https://github.com/Almamu/linux-wallpaperengine into data-separation
# Conflicts:
#	main.cpp

Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-09-02 11:50:07 +02:00
Alexis Maiquez
43b7b75076
Merge pull request #7 from knightpp/master
fix path argument
2019-09-02 11:47:30 +02:00
Daniel
47fc550357
+ fix path argument 2019-09-01 19:31:46 +03:00
Alexis Maiquez
dfbedb6419 ~ Fixed FileSystem path in includes
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-08-16 15:02:20 +02:00
Alexis Maiquez
69724adfdc ~ More class name changes and namespace modifictions (fs and irr)
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-08-16 14:56:16 +02:00
Alexis Maiquez
654918904a ~ Changed namespace names for wp::core and wp to a more suited name
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-08-15 01:53:40 +02:00
Alexis Maiquez
b201cc2a79 ~ Added CMAkeLists.txt missing in last commit
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-08-15 00:55:19 +02:00
Alexis Maiquez
217daa1dd4 ~ Changed class names to something more sensible for the long run
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-08-15 00:54:57 +02:00
Alexis Maiquez
b85b12d4a1 ~ Material's passes do not have textures everytime
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-08-14 17:07:07 +02:00
Alexis Maiquez
400a2c0c84 + Added support for alpharandom initializer
~ Fixed wrong return type for getters on rotationrandom

Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-08-14 17:03:36 +02:00
Alexis Maiquez
c2bc23414e + Added string to integer color conversion
+ Added partial parsing of particles
+ Support for particle emitter parsing
+ Support for particle initializers parsing
+ Support for particle controlpoints parsing

Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-08-14 16:55:15 +02:00
Alexis Maiquez
e80ce94331 + Support for null textures in material passes
+ Basic parsing for object's effects (missing passes specified in the scene.json)

Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-08-14 10:42:10 +02:00
Alexis Maiquez
5e5dd47154 + Added parsing of sounds
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-08-14 01:23:44 +02:00
Alexis Maiquez
2ba3498517 + Added parsing of images info and their materials
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-08-14 00:23:27 +02:00
Alexis Maiquez
7d2c4a76ed + Added parsing of general section of the JSON for the scene and the needed getters for the scene
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-08-13 18:03:24 +02:00
Alexis Maiquez
cc74debaad Started rewrite of the wallpaper interpreter to aim for a more separated approach, this way the whole JSON data can be parsed and kept separeted from the actual rendering logic
# Implemented basic project file loading
  # Implemented basic camera settings loading

Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-08-13 17:17:08 +02:00
Alexis Maiquez
bdf37b1952 + Added license
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-08-08 00:49:28 +02:00
Alexis Maiquez
85ada97786 ~ Fixed shaders not compiling properly when define values were used from the JSON, this should solve some backgrounds displaying a black background and nothing else
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-08-07 22:31:17 +02:00
Alexis Maiquez
c5797571f4 + Added help message and switch
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-08-07 22:29:59 +02:00
Alexis Maiquez
7410f238ac + Added SDL and SDL_Mixer to implement audio support
+ Added support for sound objects
  Supported formats: MP3, FLAC, OGG

Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-08-07 18:27:20 +02:00
Alexis Maiquez
4a221d0e9a + Added some default shader variables
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-05-17 01:03:29 +02:00
Alexis Maiquez
43263b6a72 + Support for loading combos settings directly from the JSON
~ Fixed loading of uncompressed textures

Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-05-17 00:03:18 +02:00
Alexis Maiquez
d05e751839 + Added support for parsing [COMBO] options to add proper define macros to the shader code
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-05-16 19:23:15 +02:00
Alexis Maiquez
8ebc8c8841 ~ Fixed oversight on texture loading when determining container format
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-05-16 01:16:15 +02:00
Alexis Maiquez
24cb34145d ~ Fixed pkg loading not working properly
+ Added support for PKGV0001 pkgs (look to be identical to PKGV0002 format, but needs validation)
~ Fixed segfault on vertex variable loading

Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-05-16 01:07:37 +02:00
Alexis Maiquez Murcia
6abd73e843 + Added support for constant shader values
~ Fixed shader parameter setting that wasn't properly loading the values for the shader to use

Signed-off-by: Alexis Maiquez Murcia <almamu@almamu.com>
2019-05-15 11:35:48 +02:00
Alexis Maiquez
374f53be6a + Support for shader parameters with default values (TODO: read values from the constantvalues list in the json files)
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-05-14 22:16:37 +02:00