MegaGrab allows you to grab up-scaled and anti aliased screenshots. If you need to do real prints of your game for posters or banners, or need to grab an even more anti aliased image then MegaGrab will do that. You say how many times you want the grab to be bigger than the actual rendered size and how many extra levels of anti aliasing you require and MegaGrab will render, upscale and anti alias the camera to a file and you can optionally add DOF to the grab. This grab is not limited by the 3d card in anyway it uses a different system to allow grabs of massive size limited only by the memory of the computer so if you have a 16GB machine you could easily grab a 25ft wide banner shot printed at 300 Dpi. Note this will not work with Orthographic cameras, and will not grab GUI, and some post image effects can add artefacts.
A new feature that will allow jpg grabs to be uploaded to the internet has been added, a simple php script is in the readme file which you can upload to your server, you then use the url for that in the inspector of MegaGrab and check the Upload Grab box and files will be uploaded for you. You will need to change the php script a little so files will be located where you want them etc but it is very simple.
MegaGrab now also has support for grabbing sequences of images to sequential files, so you can use the high quality anti aliasing of the grab system to generate high quality videos. You can define the framerate at which the sequences are grabbed and the length of capture and when you press the grab key MegaGrab will do the rest, then you just need to use your favourite software to turn the sequence into a HD video even 4K videos are possible with no quality loss.
To use the system just add the MegaGrab component to your game camera, or you can add it to any other object in the scene and then us the Src Camera param to select the camera to use. Then when you play your scene you just need to press the capture key you define to save a grab.
MegaGrab Param Description
Src Camera
If this is left empty then it will use the camera the MegaGrab component is attached to, else the camera selected here will be used for the grab.
Grab Key
You can assign any key you want to be the MegaGrab key.
Res Upscale
How many times to multiply the resolution by for grabbing, this is used only if Calc Size is not set otherwise this will show the calculated value.
Calc From Size
Set to calc the grab size from size and Dpi values.
Dpi
Desired Dpi value for grab.
Width
Width of the grab in inches.
Output Format
TGA or JPG. If you get memory errors with JPG swap to TGA.
Quality
For jpg format the quality value for the final saved image as a percentage 100 is best quality 0 is very low.
Upload Grabs
If jpg format then you can upload the file instead of saving it locally
Url
The url to the php code below on your server
Sequence Grab
Check this box to grab a sequence of frames as opposed to a single grab.
Cancel Key
If during the sequence grab you want to stop the process press the key selected it.
Frame Rate
The framerate the game will be run at during the sequence grabbing.
Grab Time
How long in seconds the end sequence should be.
Number of Grabs
Read Only. Will show how many grabs will be taken to create the final image.
Estimated Time
Read Only. Rough guess as to how long grab will take in seconds.
Grab Size
Width and height of the final image
Use Coroutine
Use this option if the grab is not working correctly on Unity 4.0 will force the grab to happen last in the pipeline.
Blur
Pixel oversampling. Use to slightly blur the AA samples if you still notice artefacts.
AASamples
Number of anti aliasing samples to take, this can be any number but this will increase the length of time the grab will take, values around 8 to 16 will usually work well enough.
Filter Mode
Usually best to leave on ForceEnable this will force bitmap filtering on all the textures so you get more detail in the final grab.
Use Jitter
Use random jitter for AA sampling. Mega Grab will use a grid array for sampling but this can lead to artifacts on noisy images to try setting this for a random array
Save Name
Name appended to all grab files.
Format
Format for date and time string to added after name above.
Environment Var
You can set Environment labels such as USERPROFILE to set the path of the save.
Path
Path to write the files, will be added to any Enviro paths set above.
Use DOF
Option for depth of field to your grab.
Focal Distance
How far in front of the camera to focus. There is included a DOFCamera.cs script, attach to your camera and a line will show the focus point.
Total Segments
How many samples around the sample radius to take, the more the better the end result.
Sample Radius
Radius of the DOF sample ring, the larger the more DOF there will be.
Version History
Version 1.31
- Added error checking at file write time so if no file is written a reason why is given in console Window. This has been added as some Mac systems have write protect on some folders and grabs were not being saved, you will now be able to see why a grab has not been saved.
Version 1.30
- MegaGrab fully compatible with Unity 2017
- Added ‘Grab From Start’ option to tell MegaGrab to either do a screen or sequence grab from the very first frame when playing.
Version 1.29
- MegaGrab made fully Unity 5.5 compatible.
Version 1.28
- Grab paths now work correctly if using relative paths.
- Path correctly handles leading and trailing ‘\’
Version 1.27
- Added option to not include the Date and Time etc info in the sequence grab file names.
Version 1.26
- Added DoScreenGrab() method to MegaGrab which can be called from GUI methods etc to do a grab instead of using a Key Press.
- Added CancelSeqGrab() method to MegaGrab which can be called to cancel a seq grab instead of using a key press.
Version 1.25
- Fully Unity 5 compatible
Version 1.24
- Added support for doing alpha grabs when using TGA format.
Version 1.23
- Sequence Grab now uses the format string
- Sequence grab frame number now has leading zeros for easier sorting
Version 1.22
- Grab size label in inspector will now show correct size based on game view size.
Version 1.21
- Two warnings removed from code.
Version 1.19
- Forced garbage collection at end of Grab to help memory use on multiple grabs
- Inspector now updates the grab size and estimated time on param changes.
- System default is not to use Co Routine so in line with Unity 4.x use
Version 1.18
- Added an option to allow you to grab sequences which can then be made into a video with offline software.
- Added custom inspector for MegaGrab to make it a bit tidier.
Version 1.17
- Changed near and far camera values to nearClipPlane and farClipPlane
Version 1.15
- Fixed multiple Application. error.
- Fixed #ifdef used instead of #if error.
Version 1.14
- Added support to upload jpg grabs to the internet
Version 1.13
- Added a use coroutine option for the grab so it will work with Unity 4
Version 1.12
- Code tidy
Version 1.11
- Removed warnings that crept into the last release.
- Added a before and after picture example.
Version 1.10
- Added Jpg output format. Quality value is in range of 0 to 100.
Version 1.09
- Added option for Environment variables for path, ie USERPROFILE
- Gives a warning if no camera set and no main camera in the scene.
- Changed class BlendTable to MGBlendTable to resolve a conflict in some peoples projects.
- Fixed a bug where it was grabbing black if non DOF mode used.
- Grab size now not dependent on video memory so can grab bigger images.
- Output changed to TGA
- Added DOF (early test)
- Added autocalc of grab values
- Added values to show size of grab
- Added estimate of grab time
- Added Dpi and width values so can set spec of grab