- Home /
Rendering screenshots on EC2 linux results in 1x1 pixel images
I want to render unity4.2 screenshots of my unity3d scene using EC2 linux. When I run my unity3d application on my macbook, I get rendered scenes as expected. When I render on EC2 linux, I get a 1x1 black pixel.
I tried rendering via:
Application.CaptureScreenshot("/tmp/Screenshot.png");
and also:
var width = Screen.width;
var height = Screen.height;
var tex = new Texture2D( width, height, TextureFormat.RGB24, false );
// Read screen contents into the texture
tex.ReadPixels( Rect(0, 0, width, height), 0, 0 );
tex.Apply();
// Encode texture into PNG
var bytes = tex.EncodeToPNG();
var fs : FileStream = FileStream(str_path, FileMode.CreateNew);
var w : BinaryWriter = BinaryWriter(fs);
w.Write(bytes);
I ran the command via:
./et_linux_headless_64bit.x86_64 -batchmode
xvfb-run --auto-servernum --server-args='-screen 0 640x480x24:32' ./et_linux_headless_64bit.x86_64 -batchmode
They both just produced the 1x1 black pixel.
I tried EC2 linux "small" instance and the "GPU g2.2xlarge" instance, with the same results.
What can I do to render my screenshots on my EC2 instance? I want to use EC2 so that I can scale up the instances rapidly, and use set up auto-scale to instantly start new server instances to do rendering. Thanks!
Hi. Did you ever solve this problem? I have a project with the same requirements --to take a screenshot so I am curious to see if you solved it.
Did you ever get unity running on aws in non headless mode. I'm trying to do this and nobody at unity knows how to do it, and nobody on the forum seems to know anything about it. Any tips would be greatly appreciated.
Your answer
Follow this Question
Related Questions
Render to 'RenderTexture' in 'Headless Mode' 0 Answers
Rendering an image from unity? 1 Answer
Running game server on linux server 0 Answers
Linux game server 1 Answer
How to start Unity cache server as a service in linux. 0 Answers