- Home /
Unrealistic size of sun, viewed from earth
A sphere-mesh represents the sun. Its diameter is 1.392684, representing 1.39 million kilometers (the diameter of the sun). The camera is located 149.6 units away from that sphere-mesh, 149.6 million kilometers, which is the average distance from the earth to the sun. I assumed, from this distance the sphere-mesh would be at about the size of the sun compared to when i take a look out of my room's window. Instead it is really tiny. Check the image bellow:
http://s11.postimg.org/u2r3zrnfn/distanced_sun.png
The big white star in the middle of the screen is the mentioned sphere-mesh.
I assume that our astronomers calculated the size and distance to the sun correctly. Also i assume it's not a bug in Unity. Rather something about the right camera-settings.
Any hints on this? Thank you!
Answer by CHPedersen · Sep 15, 2014 at 01:13 PM
You're right it's not a bug in Unity, and can be configured with the correct camera settings. :) More specifically, you need to fiddle with the field-of-view (FOV) of the camera to get it right. Please read through the following (short) thread on field of view in OpenGL, which applies equally to Unity:
In summary, the camera settings used in Unity are not a model of your human vision. It's a model of how the world might look if viewed through a rectangular portal (your screen), sitting at some standard distance from it. The near-plane is meant to represent the rectangular area of the screen. The 60 degrees used by default is a "best-fit" number, it doesn't necessarily represent the way human eyes see the sky very well.
If I create a sphere with the dimensions your mentioned and view it from 146.9 units of distance away, then I find that the FOV I need to use is about 20-25. Then the sun's size sort of matches what I expect.
Thanks, CHPedersen. The FOV changes the size of the sun, but with the downside, that when looked at the sun, my skybox gets zoomed too and looks blurry. Also, if this would be the player camera and there would be other, close geometry, e.g. a terrain, the FOV would be too narrow for good orientation. Ins$$anonymous$$d of changing the FOV, is it common to change scales (distance, size) ins$$anonymous$$d?
Answer by jokim · Sep 15, 2014 at 02:36 PM
Isn't there some weird refraction physics that actually happen here ?
Like when the sun is setting, it can sometime appear much bigger than when it's at its zenith.
Or even something like the fact the sun actually emits light, which might make it appear a little bigger than it really is ? Well, sure, that point definitely don't explain the major scale difference.
I don't claim to know all about space physics, but there's a lot of things we intuitively guess wrong.
I would suggest looking into how light actually goes through space, and then how it enters earth atmosphere, You might find an answer there.
As for your problem... is it a problem to not use real values ? Just make a bigger sphere that makes it look real. I don't think any gamer will come to you saying "Dude, your sun isn't in a perfect size/distance ratio, not playing this until you fix it" :P
(then again, it depends on the game you're making)
Well possible that the atmosphere causes the sun to appear larger. I was looking for a photography for the sun taken from space, but only found one taken from the ISS where the actual shape of the sun isn't recognizable due to lots of rays (ISS sun). Still i have doubts that our atmophere would influence the appearance of the sun's shape that much. Anyway, you are right with your assumption that i don't need real values. In the game it's mostly about the look (and traveling such huge distances will probably happen with a warp-drive or the like).
Your answer
Follow this Question
Related Questions
Scale mesh between two Vectors 1 Answer
Camera distance from mesh not center 1 Answer
Creating a Mesh Inset by a Specified Distance 3 Answers
Large scales, increased clipping planes, and performance 1 Answer
FBX import scale factor issue 1 Answer