+ added texture resolution to CTexture so it can be properly used in the CPass
+ framebuffer textures now have filtering specified (prevents black screen), still need to adjust information about the texture
+ added proper uniform variable registration to ease the usage
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
- removed irrlicht functions and types from the active codebase so it's no longer required at compile time (CContext still there as the code might be still be useful)
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
~ written close to equivalent versions in OpenGL code using GLM and GLFW
~ written replacements for texture and package loading to not use irrlicht anymore
~ updated shader compiler as we now don't need to replace attributes anymore
+ added support for texture flags in the texture header (as they're needed for opengl to get proper information)
TODO: REWRITE VIDEO PLAYER SUPPORT AS THIS UPDATE EFFECTIVELY BREAKS IT
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
+ properly set g_TextureXResolution for shaders
+ properly set g_TextureX for shaders
+ properly set g_TextureXRotation for shaders
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
~ removed reduntant code from CImage and made use of the new versions of the same code on CEffect, CMaterial and CPass to simplify the rendering code and make it easier to read
TODO: FIX MATRIX THAT VERTICALLY FLIPS THE IMAGES!
~ properly linked output from CMaterial, CEffect and CPass so a full render pass outputs something to the screen
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
Added positioning code based on material origin, size, and scale.
Fixed mirrored vertices and mirrored BGRA pixels.
Added DXT3 support.
Fixed DXT decompression segfault due to sizeof (long).
Fixed RGBA packing order.
Enabled PKGV0008 support.
Fixed detection of json "scene" string with uppercase characters.
Fixed positioning of miscellaneous foreground objects.
(commits 72831e1b2f, 9017a5732e, 853d128830, af846053c8 and c45b58bc96)
~ updated CRotationRandom to support numeric and vectorial rotations
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
+ added PKGV0007 to the list of supported packages (experimental)
+ added support for parsing properties of type bolean
+ added parsing of a missing particle initializer (turbulentvelocityrandom)
+ added back sound playinh which was left out when rewritting
Signed-off-by: Alexis Maiquez Murcia <almamu@almamu.com>
* Adds FFmpeg to CMake
* Refactors to allow support for other wallpaper types
* Updates README.md for compilation requirements
* Initial video support without audio
* Properly support different wallpapers
* Fixes videos not rendering
* Nitpicks
* Moves code related to rendering from Core::CVideo to Render::CVideo
+ added parsing of bind section for shader passes
~ various new classes to properly handle texture targets, shader passes and materials
Signed-off-by: Alexis Maiquez <almamu@almamu.com>
+ added fbos parsing from effect files
~ cleaned up effect parsing code
~ support for texture target parsing in materials for texture render targets
~ changed way of modifying textures from passes to a more abstracted way
~ moved shader constants to it's own namespace
Signed-off-by: Alexis Maiquez <almamu@almamu.com>