Something like this:
Code: Select all
/c game.take_screenshot{resolution = {x = 1920*4, y = 1080*4*0.65}, zoom = 0.138}
Code: Select all
/c game.take_screenshot{resolution = {x = 1920*4, y = 1080*4*0.65}, zoom = 0.138}
Save here: viewtopic.php?f=8&t=31230#p197503 (That post also contains a screenhot of the blueprint view of the balancer with some strange coloring. I think it's an aliasing issue but take a look in case it isn't.)Rseding91 wrote:Please upload your save and steps to reproduce the issue.
Code: Select all
/c game.take_screenshot{resolution = {x = 1920*4, y = 1080*4*0.65}, zoom = 0.138}
Rseding91 wrote:Do note: it's not possible for Factorio to make a screenshot that can't fit in VRAM - requesting an image of something like 50,000 x 50,000 since the current implementation can't make that image without enough VRAM to store it and no system I know of today supports texture sizes that large (or loading an image that large into VRAM).
Well then I can't fit a single belt balancer in one screenshot in high qualityposila wrote:Goal of take_screenshot is not to be able to take arbitrarly large screenshots, but it shouldn't crash.
Engine limit for screenshot is size 32767, but you GPU has to be able to create render target of that size, so real-life maximum is 16384 or 8196 depending on your GPU.
So we should definitely limit size of screenshot to 16384.
You can solve that in an image editor.Qon wrote:Well then I can't fit a single belt balancer in one screenshot in high quality
Here it is:posila wrote:I could not reporduce slowdown nor crash when you call take_screenshot multiple times (I tried 30 times), please post the Factorio log.
I guess I'll have to do it that way. If I mod screenshot_tool to recursivly split the region when take_screenshot returns false (I assume that is what is going to happen in 0.13.18 instead of the crash) and learn to use image magick for splicing the images then I could get a relativly pain free screenshot process.posila wrote:You can solve that in an image editor.Qon wrote:Well then I can't fit a single belt balancer in one screenshot in high quality
take_screenshot either throws an error if parameters are invalid or out of bounds, or it will return nothing. If some internal error (like failure to allocate render target) prevents screenshot to be taken, you won't be able to detect it in Lua. There are two reasons for this:Qon wrote:I guess I'll have to do it that way. If I mod screenshot_tool to recursivly split the region when take_screenshot returns false (I assume that is what is going to happen in 0.13.18 instead of the crash) and learn to use image magick for splicing the images then I could get a relativly pain free screenshot process.
So I should run take_screenshot with pcall() and base splitting logic on return value of pcall() instead?posila wrote: take_screenshot either throws an error if parameters are invalid or out of bounds, or it will return nothing.
But that should never happen if your bounds checking is correct? take_screenshot will just throw an error if the area is too big, right?posila wrote:If some internal error (like failure to allocate render target) prevents screenshot to be taken, you won't be able to detect it in Lua. There are two reasons for this:
1) It is to prevent possible desync when take_screenshot would succeed for some players and failed for others.
2) take_screenshot() actually only queues command to take screenshot which is processed after game update is finished and just before game view is rendered.
Thanks but I already have it. That command is successful the first few times, as I wrote above. Thanks for trying though. My picture has other colors though.orzelek wrote:If you want screenshot from above command is here:
http://www96.zippyshare.com/v/iLSWU8FL/file.html
Heh my edit was to late - want the big one? I changed multipliers to 8. With multipliers 16x it gave up.Qon wrote:Thanks but I already have it. That command is successful the first few times, as I wrote above. Thanks for trying though. My picture has other colors though.orzelek wrote:If you want screenshot from above command is here:
http://www96.zippyshare.com/v/iLSWU8FL/file.html
I'm just trying to improve the screenshot process for future builds at the moment.
Is there anything I can do to solve this except taking small screenshots and hope for the best and then maybe get a screenshot?posila wrote:take_screenshot either throws an error if parameters are invalid or out of bounds, or it will return nothing. If some internal error (like failure to allocate render target) prevents screenshot to be taken, you won't be able to detect it in Lua. There are two reasons for this:Qon wrote:I guess I'll have to do it that way. If I mod screenshot_tool to recursivly split the region when take_screenshot returns false (I assume that is what is going to happen in 0.13.18 instead of the crash) and learn to use image magick for splicing the images then I could get a relativly pain free screenshot process.
1) It is to prevent possible desync when take_screenshot would succeed for some players and failed for others.
2) take_screenshot() actually only queues command to take screenshot which is processed after game update is finished and just before game view is rendered.