Hi, here’s my story:
about a year and a half ago, I was doing a job in UE4 which required output to be a spherical panorama image sequence/video. Not stereo, just simple Mono 360 equirectangular projection video. I though UE4 has got me covered. With all the things it’s already been used for at that point, it surely has to have some sort of 360 sphere camera concept. Oh boy was I wrong…
The first obvious choice was the SceneCaptureComponentCube. The CubeRenderTarget asset has a resolution limit hardcoded at 2k, which made it not an option. Furthermore, it had issues with certain post processing effects. Some were just flat out not rendered.
The second option was some sort of Panoramic Capture Tool shipped with UE as third party plugin. But it rendered very slowly, the workflow was terrible, full of obscure cvar tweaking and the integration with the Sequencer was sketchy at best. Like the first option, this one also had quite a few issues with specific post processing effects.
The third option was some external nVidia ansel based tool, but it showed the same issues as the Panoramic Capture Tool, with a few more workflow issues on top.
The job had to be done, so I’ve came up with my own solution. I’ve made a Blueprint which not only manages to capture the level and stitch it into 360 panorama without any manual work or need for external software, it does it also with overscan and smooth blending of the captured sections. This means you can actually use it with low radius screen space effects like bloom, SSAO, contact shadows, sometimes even SSR, and still get no visible seams! Of course ray tracing is also fully supported. To see how the tool works, check this video:
I tried to make it as simple and quick to use as possible. The last thing anyone wants to deal with when trying to meet the deadline is a huge space shuttle style control panel with dozens of buttons, knobs and manual steps. I wanted it to be as simple as: select the output folder, select the file name, select the image format, resolution and click render! And it really just works.
Well, that turned out to be a mistake. Knowing how valuable the tool was for me in the production, I wanted to make it available to others as well. I wanted to put it on the marketplace for a reasonable price of $9. I assumed that with my track record of quite simple to use and reliable tools I’ve already made (https://www.unrealengine.com/marketplace/en-US/profile/Army+of+One+Games?count=20&sortBy=effectiveDate&sortDir=DESC&start=0) I should have no issues.
Once I submitted the tool for approval, I promptly got a response back:
The first thing I thought to myself is that the reason must be an error, given that similar tools already exist on marketplace: Camera 360 in Blueprints - UE Marketplace So if this class of the tools would not quality as sufficient, content wise, then surely this one would not make it onto the marketplace either.
When I read the mail closely again, I’ve realized that the “Marketplace Seller Guide” link leads to some older, outdated, more specific marketplace guidelines:
https://marketplacehelp.epicgames.com/s/seller-guide?language=en_US
While the guidelines sellers are presented with on the new publisher portal lead to this link:
I scoured both old and new guidelines for differences, and while my product has met the criteria in the newer guidelines, it did not meet one criteria of the older, obscure one, that I got linked in the mail:
Ha! That was it I thought. I did not include any demo map on purpose, because I know how I myself dislike, when simple stuff from marketplace comes with unnecessary bloat I have to remove to keep my project size in check.
So I have created a demo map, added it to the content project and resubmitted.
And, once again, I got the same mail… The mail even contains the phrase "However, after careful consideration we have decided not to move forward with your product at this time due to the following reasons: "
Given the speed I have received those mails, I highly doubt actual careful consideration ever happened. Whoever is on the approval end of the things most likely measures the value of Marketplace content in megabytes, .uasset file count or number of buttons. I mean, people buying Marketplace stuff need to get enough megabytes and buttons to get their money’s worth, right?
I can’t interpret it in any other way than that I got simply punished for wanting to make the tool as simple and easy to use as possible to save user’s time, and to include as little bloat as possible, because I know how much people hate bloat.
I know the tool is a bit minimalistic, but provides value in how easily and quickly it does what it’s supposed to do. And I’ve also considered the minimalism in the price. I don’t think $9 is much to ask considering how much time this can possibly save.
Anyway, due to this debacle, I’ve decided to make the tool free instead. Anyone who wants it can grab it here:
(Ignore the .uproject file and just put the contents inside of the content folder into the root of your content folder)
Here are some examples of the output, showing how well all postprocessing effects work:
Here’s copypasta from the publisher portal description. I wanted to be honest about the capabilities of the tool:
This tool simplifies creation of spherical 360 panorama images and videos from within the engine. It provides performant and easy to use alternative to existing solutions integrated within the engine, which are either slow, difficult to use or do not support enough graphical features.
NOTE: This too does NOT support creation of stereoscopic 360 images and videos. It produces only MONOscopic images and video sequences. Please consider this before purchasing.
Known limitations:
- The tool uses 6 camera cube setup to render images and stitch it into a panorama. This means using it with large radius screen space effects such as certain types of atmospheric fog, lit particle translucency, large radius bloom, lens flares or screen space reflections will cause seams. The tool uses overscan rendering with blurry seam blending to cover the seams up, so it means it will work fine with smaller radius screen space effects, such as regular bloom, glares or screen space ambient occlusion.
- When rendering large resolutions, sufficient VRAM amount is necessary. Trying to render 8k sequences of complex levels with GPU that has less than 11GB of VRAM may not be the best idea and result into crashes.
Features:
- Simple and easy to use
- Full Ray Tracing support
- Very fast rendering performance compared to alternatives
- Low dynamic range JPG and PNG output
- High dynamic range EXR output
- Full postprocessing support, including DOF, Motion Blur, TAA, etc…
Suffice to say, after this experience I probably won’t be making any Marketplace content anymore, despite being somewhat successful with it. I can’t afford this kind of uncertainty when it comes to my time investment.