Skip to content

Commit

Permalink
PopcornFX Gem 2.15.16
Browse files Browse the repository at this point in the history
  • Loading branch information
PopcornFX Bot committed Nov 30, 2023
1 parent 187e5f5 commit 1ee0dbb
Show file tree
Hide file tree
Showing 10 changed files with 72 additions and 19 deletions.
1 change: 1 addition & 0 deletions Assets/PopcornFX_Dependencies.xml
Original file line number Diff line number Diff line change
Expand Up @@ -37,4 +37,5 @@
<Dependency path="shaders/depth/billboard/depthpasstransparentminbillboard.azshadervarianttree" optional="true" />
<Dependency path="shaders/mesh/legacy/mesh_legacy.azshadervarianttree" optional="true" />
<Dependency path="shaders/mesh/legacy/meshlit_legacy.azshadervarianttree" optional="true" />
<Dependency path="library/popcornfxcore/materials/defaulttextures/*.streamingimage" optional="true" />
</EngineDependencies>
22 changes: 19 additions & 3 deletions Code/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
# https://www.popcornfx.com/terms-and-conditions/
#----------------------------------------------------------------------------

set(POPCORNFX_VERSION 2.18.1)
set(POPCORNFX_VERSION 2.18.2)
set(POPCORNFX_LICENSE O3DE)

if (PK_O3DE_MAJOR_VERSION GREATER_EQUAL 2205)
Expand Down Expand Up @@ -33,6 +33,22 @@ ly_add_target(
Include
)

set(PK_OPTIONAL_REGISTER_NODEABLE_FILES
*.ScriptCanvasNodeable.xml,ScriptCanvasNodeableRegistry_Header.jinja,AutoGenNodeableRegistry.generated.h
*.ScriptCanvasNodeable.xml,ScriptCanvasNodeableRegistry_Source.jinja,AutoGenNodeableRegistry.generated.cpp
)
set(PK_OPTIONAL_REGISTER_NODEABLE_DEFINES PK_REGISTER_NODEABLE)

if(DEFINED O3DE_VERSION_MAJOR)
# O3DE 3.x.x and higher no longer need the autogen nodeable registry source files
# Also include special case to handle bug where SDK 23.05.0 engine version was set to the display version
if(O3DE_VERSION_MAJOR GREATER_EQUAL 3 AND
NOT (O3DE_VERSION_MAJOR EQUAL 23 AND O3DE_VERSION_MINOR EQUAL 05 AND O3DE_VERSION_PATCH EQUAL 0))
unset(PK_OPTIONAL_REGISTER_NODEABLE_FILES)
unset(PK_OPTIONAL_REGISTER_NODEABLE_DEFINES)
endif()
endif()

ly_add_target(
NAME PopcornFX.Static STATIC
NAMESPACE Gem
Expand All @@ -46,6 +62,7 @@ ly_add_target(
PK_USE_PHYSX
PK_USE_EMOTIONFX
PK_USE_STARTINGPOINTINPUT
${PK_OPTIONAL_REGISTER_NODEABLE_DEFINES}
INCLUDE_DIRECTORIES
PRIVATE
Source
Expand All @@ -72,8 +89,7 @@ ly_add_target(
AUTOGEN_RULES
*.ScriptCanvasNodeable.xml,ScriptCanvasNodeable_Header.jinja,$path/$fileprefix.generated.h
*.ScriptCanvasNodeable.xml,ScriptCanvasNodeable_Source.jinja,$path/$fileprefix.generated.cpp
*.ScriptCanvasNodeable.xml,ScriptCanvasNodeableRegistry_Header.jinja,AutoGenNodeableRegistry.generated.h
*.ScriptCanvasNodeable.xml,ScriptCanvasNodeableRegistry_Source.jinja,AutoGenNodeableRegistry.generated.cpp
${PK_OPTIONAL_REGISTER_NODEABLE_FILES}
)

ly_add_target(
Expand Down
8 changes: 4 additions & 4 deletions Code/Platform/Linux/PAL_linux.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,12 @@
set(LY_PACKAGE_SERVER_URLS ${LY_PACKAGE_SERVER_URLS} "https://downloads.popcornfx.com/o3de-packages")
if(${CMAKE_SYSTEM_PROCESSOR} STREQUAL "x86_64")
set(package_name PopcornFX-${POPCORNFX_VERSION}-${POPCORNFX_LICENSE}-linux)
set(pk_package_hash 08e30c12813e29e53eae075f4f9f02a1a308c7e8713bcf73abd9b207659abcd9)
set(pk_package_id Ng3RaXuqyAUWAgHy)
set(pk_package_hash 07625b5aff95aecedad9b0440af169849af25c712c9bc3cb10bc82c4666b405a)
set(pk_package_id tZdIQSnZYZd2lDyU)
elseif(${CMAKE_SYSTEM_PROCESSOR} STREQUAL "aarch64")
set(package_name PopcornFX-${POPCORNFX_VERSION}-${POPCORNFX_LICENSE}-linux-aarch64)
set(pk_package_hash 0a81eb7ca2d717416efe2aa9ea4c5c3014e1b56c2acdb190556b8c490214beb4)
set(pk_package_id ZDEps23sNQA5p7q5)
set(pk_package_hash 07625b5aff95aecedad9b0440af169849af25c712c9bc3cb10bc82c4666b405a_ARM64)
set(pk_package_id tZdIQSnZYZd2lDyU_ARM64)
else()
message(FATAL_ERROR "Unsupported linux architecture ${CMAKE_SYSTEM_PROCESSOR}")
endif()
Expand Down
4 changes: 2 additions & 2 deletions Code/Platform/Mac/PAL_mac.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@

set(LY_PACKAGE_SERVER_URLS ${LY_PACKAGE_SERVER_URLS} "https://downloads.popcornfx.com/o3de-packages")
set(package_name PopcornFX-${POPCORNFX_VERSION}-${POPCORNFX_LICENSE}-mac)
set(pk_package_hash 8e371903268af71a1a362194c7b58f43094b1ff9accc27f0fd4a117df470e760)
set(pk_package_id Kph45AXPVnUw9u6K)
set(pk_package_hash 21c9e0334c6554b9bb0bf508044a28f629b17f397f3ead4f74dc014024109fc1)
set(pk_package_id PGOsANDruxNVvhkd)

ly_associate_package(PACKAGE_NAME ${package_name} TARGETS PopcornFX PACKAGE_HASH ${pk_package_hash})
pk_download_package_ifn(${package_name} ${pk_package_id})
Expand Down
4 changes: 2 additions & 2 deletions Code/Platform/Windows/PAL_windows.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@

set(LY_PACKAGE_SERVER_URLS ${LY_PACKAGE_SERVER_URLS} "https://downloads.popcornfx.com/o3de-packages")
set(package_name PopcornFX-${POPCORNFX_VERSION}-${POPCORNFX_LICENSE}-windows)
set(pk_package_hash 4813982cd76ea251972abd8868f09a71d7f03fe3bd486dc1fc0ecbe243327354)
set(pk_package_id UntkQKUXJ57BnbcB)
set(pk_package_hash 82a462bd7907d7e7e54f2a6a8de6222a330c8ab64905160f15d6364dda404af3)
set(pk_package_id soODNSq9K3HDKs9F)

ly_associate_package(PACKAGE_NAME ${package_name} TARGETS PopcornFX PACKAGE_HASH ${pk_package_hash})
pk_download_package_ifn(${package_name} ${pk_package_id})
Expand Down
19 changes: 19 additions & 0 deletions Code/Source/Integration/Startup/PopcornFxStartup.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,23 @@ namespace PopcornFX {
};
}
};
#else
class CLogListenerO3DERelease : public ILogListener
{
public:
virtual void Notify(CLog::ELogLevel level, CGuid logClass, const char* message) override
{
const CString s = CString::Format("[%s] ERROR: %s", CLog::LogClassToString(logClass), message);

switch (level)
{
case PopcornFX::CLog::Level_Error:
case PopcornFX::CLog::Level_ErrorCritical:
AZ_Printf("PopcornFX", s.Data());
break;
};
}
};
#endif

//----------------------------------------------------------------------------
Expand All @@ -95,6 +112,8 @@ namespace PopcornFX {

#ifndef PK_RETAIL
CLog::AddGlobalListener(PK_NEW(CLogListenerO3DE));
#else
CLog::AddGlobalListener(PK_NEW(CLogListenerO3DERelease));
#endif
}

Expand Down
4 changes: 4 additions & 0 deletions Code/Source/PopcornFXSystemComponent.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,14 @@
#include "Asset/PopcornFXAsset.h"
#include "Asset/PopcornFXAssetHandler.h"

// Logic for setting PK_REGISTER_NODEABLE is in Code/CMakeLists.txt
#if PK_REGISTER_NODEABLE
// In O3DE versions less than 3.x.x we need to register autogenerated nodeables
#include <AutoGenNodeableRegistry.generated.h>
#include <AutoGenGrammarRegistry.generated.h>

REGISTER_SCRIPTCANVAS_AUTOGEN_NODEABLE(PopcornFXStatic);
#endif

namespace PopcornFX {

Expand Down
17 changes: 15 additions & 2 deletions Code/popcornfx_autogen_files.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,23 @@

get_property(scriptcanvas_gem_root GLOBAL PROPERTY "@GEMROOT:ScriptCanvas@")

set(PK_OPTIONAL_REGISTER_NODEABLE_FILES
${scriptcanvas_gem_root}/Code/Include/ScriptCanvas/AutoGen/ScriptCanvasNodeableRegistry_Header.jinja
${scriptcanvas_gem_root}/Code/Include/ScriptCanvas/AutoGen/ScriptCanvasNodeableRegistry_Source.jinja
)

if(DEFINED O3DE_VERSION_MAJOR)
# O3DE 3.x.x and higher no longer need the registry source files
# Also include special case to handle bug where SDK 23.05.0 engine version was set to the display version
if(O3DE_VERSION_MAJOR GREATER_EQUAL 3 AND
NOT (O3DE_VERSION_MAJOR EQUAL 23 AND O3DE_VERSION_MINOR EQUAL 05 AND O3DE_VERSION_PATCH EQUAL 0))
unset(PK_OPTIONAL_REGISTER_NODEABLE_FILES)
endif()
endif()

set(FILES
${scriptcanvas_gem_root}/Code/Include/ScriptCanvas/AutoGen/ScriptCanvasNodeable_Header.jinja
${scriptcanvas_gem_root}/Code/Include/ScriptCanvas/AutoGen/ScriptCanvasNodeable_Source.jinja
${scriptcanvas_gem_root}/Code/Include/ScriptCanvas/AutoGen/ScriptCanvasNodeableRegistry_Header.jinja
${scriptcanvas_gem_root}/Code/Include/ScriptCanvas/AutoGen/ScriptCanvasNodeableRegistry_Source.jinja
${PK_OPTIONAL_REGISTER_NODEABLE_FILES}
)

4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# O3DE PopcornFX Plugin

Integrates the **PopcornFX Runtime SDK** into **O3DE** as a Gem.
* **Version:** `v2.18.1`
* **O3DE:** `23.05`
* **Version:** `v2.18.2`
* **O3DE:** `23.05`, `23.10`
* **Supported platforms:** `Windows`, `MacOS`, `Linux`, `iOS`, `Android`

**Note:** Mobile platforms are in an experimental stage. [Contact-us](http://www.popcornfx.com/contact-us/) to request access.
Expand Down
8 changes: 4 additions & 4 deletions gem.json
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
{
"gem_name": "PopcornFX",
"display_name": "PopcornFX 2.18.1",
"display_name": "PopcornFX 2.18.2",
"license": "Community",
"license_url": "https://www.popcornfx.com/popcornfx-community-license",
"origin": "Persistant Studios - popcornfx.com",
"repo_uri": "https://downloads.popcornfx.com/o3de-repo",
"origin_uri": "https://downloads.popcornfx.com/o3de-repo/PopcornFX-2.18/O3DE_PopcornFXGem_v2.18.1_Win64_Linux64_LinuxARM64_Mac64.zip",
"version": "2.18.1",
"last_updated": "2023-10-26",
"origin_uri": "https://downloads.popcornfx.com/o3de-repo/PopcornFX-2.18/O3DE_PopcornFXGem_v2.18.2_Win64_Linux64_LinuxARM64_Mac64.zip",
"version": "2.18.2",
"last_updated": "2023-11-30",
"type": "Code",
"summary": "The PopcornFX Gem provides real-time FX solution for particle effects.",
"canonical_tags": [
Expand Down

0 comments on commit 1ee0dbb

Please sign in to comment.