1. 18 Jun, 2020 1 commit
    • PowerVR Graphics SDK v5.5 Release. · 0de229ab
      Omar Zohdi authored
      SDK 20.1(v5.5) release.
      Native SDK:
      * Added PVRVk helper files to the PVRVk project.
      * Added the Multithreading example for OpenGL ES showing how to load assets asynchronously in a worker thread while something else is rendered on the main thread.
      * Added the Binary Shader for OpenGL ES example showing how to load and save shaders to and from binary files.
      * Added the Pipeline Cache for Vulkan example showing how to load and save the pipeline cache to and from a binary file.
      * Added code to ensure examples exiting due to an error will have the error code correctly propagated to the command line.
      * Added a .gitignore file to ignore the /build folder.
      * Ported the basic rendering (BumpMapping) example to OpenGL ES.
      
      * Updated Gradle wrappers to version 6, Android plugin to 3.5.3 and glslang version to 8.13.3559, Vulkan headers and PVRVk to version 1.2.
      * Updated and upgraded the PVRCamera framework module. The Android runtime permission system is now implemented, and the asynchronous permissions functionality now works properly.
      * Updated the pvr::utils::createOnScreenXXX interfaces. Previously these would not work correctly with Multisampling and other more complicated interfaces.
      * Updated the interfaces involving the SDK taking pointers to VMA Allocators, which were smart pointers already, to taking just the smart pointers.
      
      * Modified CMake files that download external dependencies and generated files to generate them in the cmake binary directory to keep the source tree clean.
      * Enabled the use of VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT.
      * Changed the Gradle wrappers to use full src+bin Gradle distributions so that Android Studio now displays Gradle autocomplete.
      * Enhanced the IntroducingPVRCamera example to correctly handle different aspect ratios between the framebuffer and the camera output.
      * Improved the EGL Context API. Shared contexts are no longer separately wrapped objects (SharedEGLContext), but simply EGLContexts. The API has been similarly streamlined.
      
      * Fixed the implementation of multisampling on-screen framebuffers for Vulkan. Multisampling will be correctly enabled when setting the number of samples to greater than 1 in DisplayAttributes.
      * Fixed the implementation of appendPNext so that the new pNext structure is actually appended to the current base structure.
      * Fixed a flag in OpenGL ES 3 that could make the SwiftShader implementation act as if some textures were mipmap-incomplete.
      * Fixed an issue, by adding the getWriteAssetStream function, where the Asset Stream would be write files by default in the wrong location on Android.
      * Removed the non-functional Java onCreate functions from all examples except IntroducingPVRCamera. The rest of the examples were only calling super.onCreate.
      
      PVRVFrame:
      * Fixed a bug on Windows where a config would claim to have stencil support but the underlying config wouldn't.
      * Fixed a bug where framebuffer functions would return GL_INVALID_OPERATION if the read framebuffer was being modified.
      
      Refer to our release notes for more details about the changes:
      https://www.imgtec.com/developers/powervr-sdk-tools/whats-new/#2020r1
  2. 10 Mar, 2020 1 commit
  3. 09 Mar, 2020 1 commit
  4. 04 Mar, 2020 2 commits
    • Merge pull request #49 from c0d1f1ed/master · f42d5525
      Omar Zohdi authored
      Disable sampleShadingEnable for VulkanHelloAPI
    • Disable sampleShadingEnable for VulkanHelloAPI · eed084f7
      Nicolas Capens authored
      The Vulkan specification states that "If [the sampleRateShading feature]
      is not enabled, the sampleShadingEnable member of the
      VkPipelineMultisampleStateCreateInfo structure must be set to VK_FALSE".
      
      Since this app doesn't use sample rate shading, this can be disabled so
      that it can run on Vulkan drivers that don't support this feature.
  5. 10 Feb, 2020 1 commit
  6. 09 Dec, 2019 1 commit
    • Updated gradle API usage. · c1605c99
      Omar Zohdi authored
      Updated gradle API usage to match gradle 6.0 to be compatible with later gradle versions.
  7. 06 Dec, 2019 1 commit
    • PowerVR Graphics SDK v5.4 Patches · 692336b3
      Omar Zohdi authored
      Fixed bug in Glass where some input actions would cause the application to cycle through the state machine.
      Normalized speed between OpenGLES and Vulkan Navigation 3D.
      Changed GameOfLife to FiFo mode from MailBox.
      Fixed a bug with VulkanPArticleSystem where the spheres would not reflect the particles as their UBO was not correctly populated.
      Fixed X11 Input where keys were mapped incorrectly.
      Fixed links formatting in ReadMe.
      Added missing Clean up code to OpenGLESIntroducingPVRCamera.
  8. 18 Nov, 2019 1 commit
    • OpenGL ES 2.0 Support fixes · 4cc5ca8c
      Omar Zohdi authored
      Changed SDK logo to be POT for better compatibility with an OpenGL ES 2 context.
      Disabled Gamma correction in OpenGL ES 2.0 contexts.
      Added a flag to allow building only OpenGL ES 2.0 examples
      Fixed cases where a result of VK_SUBOPTIMAL_KHR would throw and exception.
  9. 07 Nov, 2019 1 commit
    • PowerVR Graphics SDK v5.4 Release. · fa7396af
      Omar Zohdi authored
      SDK 19.2(v5.4) release.
      Native SDK:
      * MoltenVK Support added for MacOS.
      * Updated Android build tools to 29, Gradle wrapper to 5.1, Gradle plugin to 3.5, CMake to 3.10.2, MoodyCamel::Concurrent Queue, and optimised android builds.
      * Improved the use of CMake throughout the SDK, making example CMakeLists.txt shorter.
      * Framework Bugfixes: pvr::assertion bug fix, OpenGL ES UIRenderer winding order and depth mask fix, StructuredBufferView's copy constructor, pvr::Log performance issue.
      * Framework features: PVRShell life-cycle optimisation, PVRCore added ability to build versions without some external projects, added conversions between AxisAlignedBox and AxisAlignedBoxMinMax, improved AxisAlignedBoxMinMax initialisation values.
      * OpenGLES IBL example now uses VBO for the spheres.
      * Added the ability to pass a smart pointer to a Model when constructing a ModelGLES, allowing the ModelGLES to manage the lifetime of the Model.
      * Added a pure (non-graphic) OpenCL example, OpenCLMatrixMultiplication
      * Improved pvr::utils::createImage and pvr::utils::createBuffer respectively to use the correct CreateInfo structures. reordered pvrvk::ImageCreateInfo default parameters.
      * Dropped AssetReader and AssetWriter interfaces and replaced them with functions, generally optimised the usage of Streams.
      * Added MinGW support
      * Revamp of the synchronisation used in VulkanParticleSystem based on latest synchronisation findings, optimising usage of the particle system
      * Made a number of changes to the .clang-format file.
      * Added touch screen support for non-window system (NullWS) Linux platforms.
      
      PVRFrame:
      * Added support for EGL_KHR_wait_sync.
      * Fixed a bug in eglTerminate() where contexts and surfaces were being incorrectly destroyed while they were still bound to a thread.
      
      Refer to our release notes for more details about the changes:
      https://www.imgtec.com/developers/powervr-sdk-tools/whats-new/#2019r2
  10. 05 Sep, 2019 1 commit
  11. 13 Aug, 2019 1 commit
    • Improve DescriptorPool creation. · 916063bf
      jamesRumbleh authored
      Remove the use of Physical Device limits for setting the maximum number of resource descriptor types available for the DescriptorPool used in the demo. This was incorrect usage of Vulkan.
  12. 05 Aug, 2019 1 commit
  13. 02 Aug, 2019 1 commit
    • PowerVR Graphics SDK v5.3.1 Release. · b8ac5b76
      Omar Zohdi authored
      Native SDK:
      Removed the host compilation of glslangValidator when cross compiling as this had the potential to fail quite easily. This also required a dependency of host toolsets for cross compiled builds which wasn’t desirable. For cross-compiled builds we now download the matching glslang binary release package (https://github.com/KhronosGroup/glslang/releases/) for the host platform and extract it into the correct place (SDK/bin). Only do this if a glslangValidator binary isn’t already in the host bin directory meaning the step will only happen if a cross compiled build is the first build of the SDK on a particular host platform.
      Removed duplicated code for downloading external projects using a common function defined in cmake/Functions.cmake.
      Removed disabling of ENABLE_HLSL, ENABLE_OPT, ENABLE_AMD_EXTENSIONS and ENABLE_NV_EXTENSIONS.
      Fixed an issue in equi_to_cube.py where the displayed width and height of the generated map were half of their real dimensions.
      Tweaked CMake options to better facilitate MinGW Win32 builds.
      Building for iOS now supports code signing through build command line.
      
      PVRFrame:
      Added support for EGL_EXT_swap_buffers_with_damage/EGL_KHR_swap_buffers_with_damage.
      Added support for EGL_KHR_partial_update.
      Fixed a possible crash on OSX in eglQuerySurface.
  14. 19 Jul, 2019 1 commit
  15. 28 Jun, 2019 2 commits
  16. 27 Jun, 2019 1 commit
    • Changed cross-compiled build behavior. · 3664fbd6
      Omar Zohdi authored
      Removed the host compilation of glslangValidator when cross compiling as this had the potential to fail quite easily. This also required a dependency of host toolsets for cross compiled builds which wasn't desirable.
      For cross-compiled builds we now download the matching glslang binary release package (https://github.com/KhronosGroup/glslang/releases/download/) for the host platform and extract it into the correct place (SDK/bin). Only do this if a glslangValidator binary isn't already in the host bin directory meaning the step will only happen if a cross compiled build is the first build of the SDK on a particular host platform.
      
      Removed duplicated code for downloading external projects using a common function defined in cmake/Functions.cmake.
  17. 26 Jun, 2019 1 commit
  18. 13 Jun, 2019 2 commits
  19. 12 Jun, 2019 2 commits
  20. 11 Jun, 2019 1 commit
  21. 05 Jun, 2019 1 commit
    • Travis CI intergration · 132e367f
      omarzohdi authored
      Adding a travis.yml file. The file configures builds for Windows, macOS and Linux (Xenial). Builds are limited to the master branch.
      Updating the README.rst file to show the travis build badge.
  22. 30 May, 2019 4 commits
  23. 29 May, 2019 11 commits