I’ll see if we can support larger than 1024x1024 EditableImages in just studio plugins. There would be some potential drawbacks with this but I don’t think there are any super big blockers and I really like this photobooth plugin so
Oh, well, that’s much better than I was thinking it was.
I have one more question, though. I thought I read users needed an ID to buy plugins with USD (which I ranted about after the announcement), but I couldn’t find anything in the help article about the store and DevForum topics that confirms that.
Am I misremembering?
If I am, I’m pretty sure I will buy this plugin when I can; I even added it to my bookmarks. “Character renders” with translucent pixels would look so cool!
I am not familiar w/ any limitation on buying stuff requiring the user to be id verified. I think there are a number of non-id verified people here who’ve already bought the plugin tmk.
I managed to get this working by using the emulator to set a specific viewport size. The friction here is obviously worse than if the limit was removed, but fingers crossed nonetheless.
A few things of note:
First,
In its current form the processing is quite slow. I captured this 4K image and it took ~28 seconds.
The breakdown was about 4.4 seconds on the skybox removal, and 23.6 for alpha bleeding . The obvious removal contender here is alpha bleeding, but I think it’s super important especially for large resolution images that are going to be scaled down.
The good news is that I have already written some parallel luau code which should speed this up substantially. I can’t easily confirm it though b/c I can’t use parallel luau in plugins quite yet, but very soon.
Edit: I tested my parallel code w/ the plugin debug service and I got the time down to ~ 0.6 seconds for the skybox removal and ~ 1.3 seconds for the alpha bleeding. Mind you this is on a 4K image so smaller ones are even faster.
For comparison the serialized code takes about the same time to do a 1024 x 1024 image currently. Super excited to push this when I can!
Secondly (and more importantly)
I attempted uploading the 4K image using the create asset API and when I tried loading the resulting asset id in, the image was scaled to 1024 x 576
. This is understandable as Roblox probably doesn’t want to host a bunch of 4K images, but it does reduce the value of this workaround significantly.
The takeaway is that you can capture above the 1024 x 1024 limit, but you can’t upload to roblox at those resolutions. This would only be a useful feature for users who want to save the resulting image as a png.
I believe we did start storing the full resolution of published images, it may just be the resolution that was loaded back in is at a lower resolution, though.
Been looking forward to this for ages!
Incredible work! I am curious, how did you manage to create this. Are you using a custom render engine or is there some sort of technique to screenshot VPFs?
Today, I got my monthly check, so I tried to buy this really cool plugin…
…and I could! (I’m so glad plugins don’t require verification like I feared…)
I’ve tested and used the plugin a few times today, and it’s just as awesome as I knew it would be! It takes perfect pictures of 3D models with very accurate lighting (so this can’t be using ViewportFrames), and it properly includes translucent surfaces, particles(!), and neon (complete with its translucent glowing edges). Here’s a “group photo” of my character (Mary) and my friend @rafa902O15 to show its good quality and render accuracy:
I love this plugin, which will be another commonly used tool in my
My only complaint is that it can only capture up to a 1024x1024 region in the middle of the viewport, but I don’t know if plugins are allowed to make EditableImages larger than that yet. If that changes, though, this will be perfect.
More demonstration renders I made earlier...
I seem to have a strangely big interest in drink containers, mainly those with straws, so I've modeled quite a few of them, most made starting in 2022 (with the exception of the Celesti-Nebula cup near the right side here). This image shows translucent and glossy surfaces (straws), the former being impossible to capture using my previous method, using the Magic Wand tool to remove a solid background color from a screenshot. Speaking of *wands*, here's my cute star-shaped one! Although I didn't time this capture well, the sparkles eminating from its tip were included; This answered one of my questions, whether Photobooth could take pictures of particles.Thanks for the purchase / review. Glad you enjoy!
Some good news about the 1024 x 1024 limit:
I have a working version that allows you to exceed that limit by capturing the full viewport instead of a cropped area. You can use this mode in conjunction with the emulator to create any size capture (even 4K if you desire).
I have a few qualms about releasing this though.
- The larger the image the slower the processing. I have written some parallel luau code to speed up this process significantly (and it works amazing!) however, using parallel luau in published plugins is currently broken (roblox said it will be fixed in the next update or two though)
- The UX here is a bit janky. Without going into a lot of details, using photobooth and the emulator only works when you capture at actual resolution. Communicating that to the user is very difficult as afaik there’s no way to detect when/if the player is using an actual resolution emulated device.
- The method itself for exceeding 1024 x 1024 is not something I can guarntee will continue to work as roblox may choose to patch it. Having official support for this so this feature doesn’t get rug pulled would be way better.
Wow! This plugin is absolutely incredible.
I purchased it today and while I am still figuring out what will be the best workflow for me utilizing it, I already know that I am going to save hundreds of hours going forward. Gone are the days of putting a greenscreen as the skybox, and needing to use a third party editor to make the image perfect. This plugin does it all.
Thank you for all the time you spent developing this! A real game changer!
At first, this plugin might seem “useless” since, sure, you can take screenshots like you’re suggesting, but there’s one thing regular screenshots will never capture properly: translucent (semi-transparent) pixels and objects. Take this cute cup model I made a few years ago, for example:
I used my old method for this image; I used the Device Emulator to take a 4K screenshot of the model, then used Photoshop to remove its background color. While this kind of worked, the cup itself now looks inaccurate, as it’s usually translucent.
If anything, this is the main reason why I think anyone saving renders of Roblox models needs to buy Photobooth; When I used it to take a picture of the same cup with the exact same lighting, it captured this much more accurate image:
So yeah, screenshots and, Device Emulator, and green screens won’t create as nice images as this plugin. If a later version supports larger captures, I’ll never go back to that inferior, older style for object/character renders.
Speaking of that…
Even with the things EgoMoose pointed out below the section I quoted here, I still think that update would be great! I’m used to switching to “actual resolution” in Device Emulator so I would do that before capturing images larger than 1024×1024, anyways.
I don’t mind questions / constructive feedback about the plugin, but this just comes off as passive aggressive which I don’t appreciate.
Photobooth differentiates itself from the standard screenshot button in a number of ways:
-
It captures as an editable image which can be used directly in game whereas the screenshot button saves directly as a png to your filesystem.
-
As Mary pointed out it removes the background of images for you. This saves a lot of time and effort such that user’s don’t have to greenscreen their captures and manually edit out the background.
-
The plugin offers bindings which allow you to capture via code. This allows you to write scripts that will capture multiple images without the user having to line up every camera angle and move every model etc.
-
It can be used in conjunction with other lighting effects for useful effects. For example, using a color correction with brightness set to 1 and the blur effect will capture a blurred mask image. This can be used for things like drop shadows:
-
It can capture UI elements directly. This allows users to do stuff like take a text-label and convert it into a decal which allows for surface wrapping (something a surface gui doesn’t do)
This list is not exhaustive, but my point is that this plugin offers a lot over the standard screenshot button.
I rarely comment on anything but this is easily the coolest plugin I’ve seen on Roblox, thanks for making this!
Really loving the way it can capture beams and particles with a transparent backdrop.
I have a question:
Can I do screenshots of a specific size? Like 522×522 etc.
If so you have my money.
Yes you can! There is a textbox on the bottom where you can type in the specific size you want. I would recommend 512x512 instead of 522x522 though. Its definitely worth your money.
If only the plugin can be bought with robux
anyway, you never fail to make the most mind blowing things on roblox
keep up!
Unfortunately this is out of my control.
Roblox’s position on this has been that by enforcing USD they can maximize the revenue share of the creator. However, in my opinion it’s a bit more nuanced than that.
Let’s say for example that Roblox offered the ability to price in both Robux and USD and let the buyer choose which payment option they wanted. Anyone willing to do the math will quickly come to the conclusion that for the creator to get the same earnings from a sale the Robux cost will be substantially more than directly purchasing for USD.
For example, selling a something to earn 9.99 in robux:
-- current devex rate is 30,000 for $105.00 USD
((robux_cost * 0.7) / 30000) * 105 = 9.99
robux_cost = (30000 * 9.99) / 73.5 ~ 4000 robux
If we look how much it would cost to buy 4000 robux it’d be $49.99 USD which is comically overpriced compared to just buying it outright at $9.99.
Now of course I don’t want to rip off buyers, but if Roblox gave me the option to price in both robux and usd it would sure feel like I am.
I obviously don’t know the full details of why Roblox chose a usd only policy, but it wouldn’t suprise me to hear that this pricing imbalance is a reason for it. Robux buyers would likely notice this trend and feel like second-class citizens. This would lead to them directing their ire at either the creator or Roblox so they may have landed on the current policy to avoid that debacle entirely.