[PLUGIN] Pic2Mesh - Turn any 2D image into a 3D mesh, directly in Roblox Studio

What is Pic2Mesh?

Pic2Mesh is an AI-powered Roblox Studio plugin that converts a single 2D image into a 3D mesh directly inside Studio. Simply select an image — the plugin removes the background, analyzes the shape, and generates a 3D mesh with vertex colors.

No external tools. No Blender. Just select an image and generate.

Over 300 users are already using it!
Hearts and supportive comments give me great strength.


:white_check_mark: Features

  • AI-powered image-to-3D mesh generation
  • Background removal & shape analysis — fully automatic
  • Preview mesh in viewport before committing
  • Upload directly to Roblox as a reusable asset
  • Supported formats: PNG · JPG · BMP · TGA · WebP

:stopwatch: Average generation time: avg 40s - 45s


:fire: Examples :fire:

:camera_with_flash: Tips for best results:

  • Images with a clear subject and distinct background work best
  • Objects with visible depth and dimension produce better 3D results
  • Since this is AI-generated, output quality may vary between generations
  • The back side of the mesh may appear rough or imperfect — this is expected behavior

Best suited for stylized props, icons, toys, creatures, and simple objects — not production-grade realistic models.


:stopwatch: Daily Limit

Each user is limited to 20 generations per day.
Every generation requires GPU-powered AI inference on the server, so the limit keeps the service stable and available for everyone.
The limit resets daily and is visible directly in the plugin.

:warning: This limit is subject to change at any time based on server capacity and overall usage. It may increase or decrease as the service grows. Further adjustments are still being evaluated.


:gear: Setup Guide

How to set up Pic2Mesh

What you’ll need:

  • A Roblox API Key with asset:read and asset:write permissions
  • Your Creator ID (numeric)

Step 1 — Experience Settings

File → Game Settings → Security

Enable both options:

  • :white_check_mark: Allow HTTP Requests — Required for the plugin to communicate with the server
  • :white_check_mark: Allow Mesh / Image APIs — Required to generate 3D meshes in Studio


Step 2 — Create Roblox API Key

  1. Go to Creator Dashboard

  2. Click Create API Key

  1. Under Access Permissions, add:
    • asset:read
    • asset:write

  1. Save and copy your key somewhere safe

Step 3 — Find Your Creator ID

  1. Visit roblox.com → click your profile icon (top right)

  2. Click “Copy User ID”

  1. Paste it into the plugin settings

:warning: Your Creator ID must match the account that owns the API Key from Step 2.


You’re all set!

  1. Open the Pic2Mesh plugin in Roblox Studio

  2. Enter your API Key and Creator ID in the settings

  1. Click the select zone to select an image

  2. Hit “Generate Mesh” — and that’s it!


:clipboard: Terms of Service

Read Terms of Service

1. Service Description
Pic2Mesh is a Roblox Studio plugin that generates 3D mesh models from 2D images using AI-based inference technology.


2. Acceptable Use
By using this plugin, you agree NOT to:

  • Upload images containing sexually explicit, violent, hateful, or otherwise illegal content
  • Generate 3D models that violate Roblox Community Standards or applicable laws
  • Upload copyrighted images without proper authorization from the rights holder
  • Attempt to reverse-engineer, exploit, or abuse the service infrastructure
  • Share, redistribute, or expose API credentials to unauthorized parties
  • Use automated tools or scripts to bypass usage limits

3. Usage Limits

  • Each user is subject to a daily generation limit
  • Limits may be adjusted at any time without prior notice
  • Abuse of the service may result in temporary or permanent suspension

4. Intellectual Property

  • You retain ownership of the images you upload
  • Generated 3D mesh outputs are provided for your use within the Roblox platform
  • You are solely responsible for ensuring your input images do not infringe third-party intellectual property rights

5. Disclaimer of Liability

  • Generated outputs are provided “AS IS” without warranty of any kind
  • The developer is not responsible for the quality, accuracy, or appropriateness of generated 3D models
  • The developer bears no liability for any damages, losses, or disputes arising from use of generated outputs
  • The AI model may produce unexpected results — review all outputs before publishing

6. Data Collection & Handling
The following data is collected and stored:

  • User identifier (Creator ID)
  • Generation attempt count and daily usage
  • Task status (success, failure, cancellation)
  • Processing duration and timestamp
  • Image file size (not the image itself)
  • Output mesh statistics (vertex/face count)

Storage policy:

  • Uploaded images are NOT stored — processed in memory and deleted after generation
  • Generated output files are retained for up to 30 minutes, then permanently deleted
  • API credentials are stored locally in Roblox Studio and transmitted over HTTPS
  • Collected data may be used to monitor service health, enforce limits, and improve the service

7. Service Availability

  • Uninterrupted or error-free service is not guaranteed
  • The service may be modified, suspended, or discontinued without prior notice

8. Termination

  • The developer reserves the right to restrict or terminate access to any user who violates these terms

9. Changes to Terms

  • These terms may be updated at any time
  • Continued use of the plugin after changes constitutes acceptance of the revised terms

10. License

  • This plugin uses open-source AI models: TripoSR (MIT License) and U²-Net (Apache 2.0 License)

:speech_balloon: Feedback & Support

Found a bug or have a suggestion? Leave a reply in this thread!

24 Likes

I created my character… and this is my attempt. I’m satisfied with how it turned out!
I think it’d make a great background

8 Likes

how does this work? Did you create and train 3d model generating neural network?

3 Likes

I’m using TripoSR for the 3D generation and U²-Net for background removal. I just set up the backend server and built the Roblox plugin to bridge.

3 Likes

can i sell the assets i generate ??

1 Like

does the uploaded mesh get auto optimised/decimated or is it mostly raw generated geometry?

3 Likes

they r yours, do whatever you want with them

2 Likes

Yep it goes through a few post processing steps before export quadric decimation, remeshing, and some cleanup. so its not just raw generated geometry output.

3 Likes

I have been working on some optimizations and managed to reduce the average generation time by 15 ~ 20%, from around 1 minute down to 43–45 seconds.

Depends on the file size, but that’s the average!

1 Like

If you have any inconveniences or suggestions for improvement, please let me know.
I will do my best to address them as quickly as possible !

1 Like

Is the generated quality suitable for actual game development?

2 Likes

It depends on your intended use, the results aren’t perfect 3D, and there may be some rough edges to work around. For purposes like placing assets in a game background or converting a specific image into 3D, i think it’s a good fit.

1 Like

I made one using SCP characters. This is an example of how it can be used.




3 Likes

Mesh spawn location update

Generated meshes (both preview and uploaded) now spawn 25 studs in front of the current camera instead of at the world origin (0, 0, 0)

2 Likes

Looks so scary… lol
Btw, how can I rig the generated character? Is there any tip for making rigging-friendly character?

2 Likes

Extremely generous to offer this for just $4.99 one-time. Hopefully this is sustainable for you in the future.

2 Likes

Currently, rigging requires the GLB file, but the plugin uploads it directly to Roblox and once it’s in your inventory, there’s no way to export it back as GLB/FBX.

Adding a download option is technically possible, but it’s not on the roadmap yet.

1 Like

Thank you for the kind words!
I just need enough to cover the server costs, so it works out fine

2 Likes

If the input image name is too long, it causes an error and fails to upload to the inventory

1 Like

Fixed!
it won’t fail no matter how long it takes now.
Thanks for the report!! :fire:

1 Like