• Preparing content for publishing on the Unreal Marketplace

    This tutorial is a quick summary of the process for preparing a content pack for submission into the Unreal Marketplace.
    It is geared towards content-based asset packs.

    The tutorial will cover three main aspects:

    1. Preparing the content, including a list of things to check before submission.
    2. Submitting the product to the Marketplace.
    3. Updating a submission, including updates when a new version of the Unreal Engine is released.

    This tutorial was written based on my own experience with publishing a product on the Marketplace.
    Information is based on a combination of that experience, my communications with Epic, and the official Unreal Marketplace Guildlines page.

    Contents

    Before you begin

    Before submitting something for the Marketplace, consider if it is actually something worth selling.
    Marketplace submissions must meet a minimum standard of quality.
    Epic have some rules about submission applicability, which I will paraphrase here:

    • Content must not consist of easily reproducible assets.
    • Assets must not contain visual defects.
    • Assets must function without being a detriment to performance.
    • All assets must be complete and function as intended.
    • Products must contain overall good designs and concepts.
    • You must have the legal right to sell all of the content in the package.

    A brief point about engine versions

    Before creating content for the Marketplace, you will need to decide on the version(s) of the Unreal Engine that you want to support.
    Asset files created in older versions can (normally) be opened in more recent versions, but the reverse is not true – asset files cannot be opened in older versions of the Engine than the one in which they were created.

    As such, you will ideally want to create your content for the oldest version of the Engine which supports it, so that it will be usable by as many potential customers as possible.  You should aim to support at least the three most recent versions of the Engine, if possible.

    Of course, making your content compatible with older versions of the Engine means that you will need to have those older versions installed, and to create all of your content using them.  For imported assets, it’s not that large a deal to re-import them into an older version of the engine, but for blueprints or code, it may not be feasible.

    You will also need to test your product in all the supported versions, particularly the oldest and newest.

    Preparing the content for the Marketplace

    Before submitting content for the marketplace, you want to make it as easy and convenient for the buyer to use as possible.
    Remember that someone who isn’t familiar with your workflow needs to be able to figure out how to use this content quickly.  This is especially true for submissions including Blueprints and/or code.  You do not want to have to answer a lot of customers’ questions on how to use your product, and you certainly don’t want people to get frustrated and get a refund for the product because they can’t figure out how to use it.

    The content should be clean and properly organised in the editor.
    Before beginning, you should create a fresh project in the appropriate version of the Unreal Engine to prepare your submission.  Only import the content that you want to include in your submission.

    The content should be arranged as follows:

    • All of the content for your submission must be in a directory with the name of your product, under the Content directory.
    • Assets should be in appropriate subdirectories, based on their type.
    • Each asset should be named following a consistent and coherent naming convention.
    • The names should also be clear and representative of the asset.
    • Include an example map which shows off your content.
    • You must include a .uproject file and Config directory, even for content-only submissions.
    • You should include a readme file with information about how to use your content.
    • The following content must not be included:
      • The Intermediate directory.
      • The Saved directory.
      • Any directories under Content other than the one which contains your content.
      • Any unused assets or empty directories.

    The following image shows an abridged directory structure that I used for my NV Spline Tools Marketplace submission.  Click to see the full directory listing.

    The directory structure of the NV Spline Tools product, which has been published on the Marketplace. Click for the full file listing for this product.

    There are a few other considerations before submitting content:

    • For Blueprint content:
      • Graphs should be clean and organised.
      • There should be no unused or broken code.
      • There should be no unused variables.
      • Every editable property should have a tooltip explaining what it does.
      • Compiling must produce no errors on consequential warnings.
    • Structs and Enums should have clearly named variables with descriptions of what they do.
    • Maps:
      • Maps must have been built and had their lighting processed.
      • Maps must generate no errors or consequential warnings.
      • Maps must have no Z-fighting or overlapping polygons.
    • Textures:
      • Textures must be in powers of 2 where applicable.
      • Textures must not be larger than 8192 pixels.
      • Textures must use the correct Texture Groups based on purpose.
    • Materials:
      • Material Instances should be used where appropriate.
      • Materials aimed for Mobile platforms must render as expected in the Mobile Preview.
    • Static meshes:
      • Static meshes must have proper collision where applicable.
      • Static meshes must use a consistent scale and consistently face the same directional vector.
      • Static meshes must have no overlapping Lightmap UVs
      • Any included LODs must work as expected.
      • Modular assets should have their pivot points placed for smooth assembly, and should snap together cleanly on a 10cm grid.
      • The Lightmap Resolution should be optimised for the product’s intended use.
    • Skeletal meshes:
      • Skeletal meshes must be scaled to the Epic skeleton.
      • Humanoid skeletal meshes must be either rigged to the Epic skeleton, or include animations for a custom skeleton with a similar scale.
        • If rigged to the Epic skeleton, the skeleton must use the same bone names, IK joints must stay unweighted in the same place of the hierarchy, and the joint orientations must not be repositioned.
      • Physics Assets must properly cover skeletal meshes where applicable.
      • Physics Assets should yield appropriate results for the product’s intended use when simulated in the Physics Asset Editor.
    • Animations:
      • Animations must be clean, consistent, and function visually as intended for their purpose.
    • Audio:
      • Audio must be imported into the engine as .wav files, with a sample rate of 22050 or 44100 Hz.
      • Audio must have no audio defects.
      • Each .wav file must be referenced by at least one Sound Cue.
    • Particle systems:
      • Particle emitters must be given accurate and descriptive names.
      • Particle systems should have LODs set up when applicable.
    • All redirects must be cleaned up before submitting.  Right-click on the content directory and choose “Fix up redirects”.
    • If your product has any dependencies, they must be clearly listed.
    • For the readme file, avoid adding a copyright notice.

    Once you have the project package assembled, simply add it all to a zip file.
    Note that if you are packaging from your project directory and have deleted the useless/empty directories, they will generally be re-generated by Unreal Engine the next time you open the project.

    Submitting your product to the Marketplace

    Submissions to the Marketplace are made through the Marketplace Publisher Portal.
    You will need to sign up as a publisher and provide some of your details before you can access the portal.
    Once you are there, simply select Add Product to begin the process of submission.

    You will be working on this page for some time.  Remember to save regularly.
    You can freely preview the product page whenever you wish, to see how it will look once it is on the Marketplace, and to check that everything looks as you would like.

    Most of the fields here are self-explanatory.

    You will need to name and describe your product.  The text must be clear, written in English with proper spelling and grammar, and not contain offensive language or copyrighted content / trademarks which you do not own.
    All mention of engine systems, such as Blueprints, Sequencer, etc., should be capitalised.
    There are two large descriptive fields, one for the general description, and one for additional technical information.  Note that both are limited to 1,900 characters.

    You must also submit the following images:

    • A gallery of  1-25 images showing the content, which must have a size of exactly 1920 x 1080 pixels.
    • A small thumbnail for the product, with a size of 284 x 284 pixels.
    • A larger “featured image” thumbnail for the product, with a size of 894 x 488 pixels.

    Note that there is no capability to upload videos or additional/formatted documentation for your project.
    If you want to include those (and you should!), then you will need to place them on  external sites (such as YouTube and Google Docs), and place a link into the description of your product.

    You will also need to select a price for your product.  Choosing that price is beyond the scope of this tutorial.

    Finally, and most importantly, you must configure the product files that will make up the actual Marketplace product.

    You will need to create at least one version for your product.
    A version, in this context, is a version of your product archive which is marked as being compatible with specific version(s) of the Unreal Engine on specific platform(s).
    For content submissions, you will usually only need to create a single version.
    Each version has the following fields:

    • Version Title is the name of the version you are uploading.
      This is just for your reference, it’s not especially important.
    • Project File Link is the most important field.  It must point to a URL, publicly accessible over the Internet, from which Epic can download your project’s zip file.
      Place it on a webserver if you have one, or use a service like Google Drive, NextCloud, or Dropbox to host the file.
    • Supported Engine Versions indicates the versions of Unreal Engine that this version supports.
      Tick all the boxes that apply, based on the versions which you have tested your content in.
    • Supported Platforms indicates which platforms this version of the product will work with.
      Tick all that apply.
    • Version Notes is simply a field where you can add notes if you wish.
      You can leave it blank.

    You must also select a Distribution Method of either Asset Pack or Complete Project.  This will usually be Asset Pack in most circumstances.

    Once you are happy with everything, you can choose Submit for Approval.

    The product page will be sent on to Epic for review.  The review process will take several days to complete.  You should expect to wait for at least a week for a simple content project to be reviewed; more complicated submissions (such as plugins) are likely to take significantly longer.

    Epic will review your submission and check that it meets their requirements in terms of quality, and that everything is packaged up and working correctly.

    If there is anything wrong with the submission, you will be sent a detailed technical review checklist listing the areas in which the submission failed (and also those in which it passed).  The submission will be placed into a state of Changes Needed, and you will need to submit an updated package.  Note that the turnaround time for Epic to review a re-submitted package is usually much faster than the initial review time.

    If all goes well, then the product will be approved for the Marketplace and will appear on sale!

    A brief point about payment

    Epic will pay you for the products that you have sold each month.  The payment will be made 45 days after the end of the month.
    If the total amount paid is under a certain threshold, then Epic may keep the payment until the next payout period when the total money owed exceeds that threshold.
    (This threshold is listed as $100, but I have received payouts of less than that amount, so that number may not be accurate.)

    You generally do not have to pay sales tax on profits made through the Epic Marketplace.  For countries where taxes are applied on sales (such as here in Europe), Epic charges a slightly higher price, and then take the taxation out before they give you the money.  In other words, the buyer pays the sales tax, not the seller.

    Making an update to your published Marketplace product

    You can freely update your product once it has been published.  This can be done through the Marketplace Publisher Portal.
    Any updates to the description or images are applied immediately.

    You can also change the Project File Link to point to a new archive if you want to update the product itself.  This is also quite fast, as it doesn’t generally require a full review from Epic before the content is updated and available to your customers.

    When a new version of the Unreal Engine comes out, your product will not automatically be listed as compatible.  Instead, users of the new engine will not be able to add it to their projects without jumping through some additional hoops (e.g. confirming that they want to install it into a project that is not listed as compatible.)

    So, whenever a new version of the engine launches, you should install it, install your content into it, and make sure that everything still works as expected.  If it doesn’t, you will need to fix the issues and make a new version of your product for the new engine version.  However, if the content works fine as-is, then you simply need to edit your product, scroll down to the existing version, edit the Supported Engine Versions, and tick the box for the new version.


     Leave a reply

    Leave a Reply

    Your email address will not be published. Required fields are marked *

    − two = 1