Hard Light Productions Forums
Modding, Mission Design, and Coding => FS2 Open Coding - The Source Code Project (SCP) => Topic started by: Sandwich on December 19, 2003, 06:41:01 pm
-
I'd like to bring up - yes, again - the issue of apparent size in FS2. The zoom-adjustment workaround, IMHO, simply doesn't cut it.
The issue is the depth of field that the FS2 engine renders at. It's too shallow. When I'm sitting in a fighter at the tip of an Orion's nose, looking backwards along its length, it needs to appear about (complete guess) 2x as long (deep, relative to the screen) as it currently does. The actual field of vision is actually good I think - you have the correct angle of view on the sides. But the adjustment of the depth of field would not affect the angle, it would affect the rate of apparent size increase as the object gets closer.
Not sure how this would work programmatically, but mess with the "perspective" adjustment tool in MAX when viewing a scene through a camera.
This is what it looks like - the Myrmidon is 20 meters long by 21 meters wide by 11 meters high, and the Merkava MBT is 9x3.75x2.6m (LWH). FS2 currently seems to use either a lens size of 50mm or so, which gives us a horizontal FOV angle of 40 degrees, as shown here...
(http://www.3dap.com/hlp/staff/sandwich/images/scale_comp_50mm-40degFOV.jpg)
...or a lens size closer to 85mm, which gives us a FOV of 24 degrees, as you can see here:
(http://www.3dap.com/hlp/staff/sandwich/images/scale_comp_85mm-24degFOV.jpg)
Nice toy tank. :sigh:
But for the reported size of ships, a lens size of 28mm, which gives a FOV of ~65 degrees, seems to be perfect:
(http://www.3dap.com/hlp/staff/sandwich/images/scale_comp_28mm-65degFOV.jpg)
Any chance this could be adjusted properly?
.....please?? :(
(Here's (http://www.3dap.com/hlp/staff/sandwich/images/fs2_scale_comparison.zip) the MAX scene in case you want to check it out)
-
That's insightful, Mike - that would increase sense of scale even more. The only thing I'm afraid of is that things will look too huge - given that though this may be more realistic, how large would an Orion look in that picture? A Colossus? Yes, much bigger, but we seem to fly past them really quickly. It's a nitpick really, I can't find anything genuinely wrong with your idea. :)
Except... just to clear up some terms. ;) Depth of field (http://www.dpreview.com/learn/Glossary/Optical/Depth_of_field_01.htm) is the range of space behind and in front of the focal point of a lens that is in focus - ie. things outside the depth of field are out of focus. FS doesn't render a depth of field - everything is in focus (the only game I know that does render with DOF is Halo 2). I think what you mean is just perspective (http://www.dpreview.com/learn/Glossary/Optical/Perspective_01.htm). :nod:
-
The latest Tomb Raider game also does Depth of Field effects
-
Originally posted by Setekh
That's insightful, Mike - that would increase sense of scale even more. The only thing I'm afraid of is that things will look too huge - given that though this may be more realistic, how large would an Orion look in that picture? A Colossus? Yes, much bigger, but we seem to fly past them really quickly. It's a nitpick really, I can't find anything genuinely wrong with your idea. :)
We should fly past them quickly - especially at +/- 100 meters per second! :p But the thing is, at 100m/s, we should seem to be moving a _lot_ quicker than we do - go ahead, try surface-skimming at 100m/s one day. It's like driving a car. A.... slow car. ;)
Originally posted by Setekh
Except... just to clear up some terms. ;) Depth of field (http://www.dpreview.com/learn/Glossary/Optical/Depth_of_field_01.htm) is the range of space behind and in front of the focal point of a lens that is in focus - ie. things outside the depth of field are out of focus. FS doesn't render a depth of field - everything is in focus (the only game I know that does render with DOF is Halo 2). I think what you mean is just perspective (http://www.dpreview.com/learn/Glossary/Optical/Perspective_01.htm). :nod:
Yeah. That. Could've sworn there was some sort of "Depth of..." term for that, though...
EDIT: Depth of Perspective!!!!!!!111222 ;)
Anyway... :p
-
I'm with Sandwich on this one - FS2 ships never felt vast. Sure they look big compared with other FS2 ships. But when you get up close you don't feel dwarfed at all. It needs sorting :nod:
-
It would be great to have this, but I think the problem lays also with the captital ship models. I really want to get that 'strafing the Star Destroyer' feeling, where it really does feel like you are practically flying through a 'city in space' with guns. :)
-
MMm, if you ask me the scale of every damn model in the game is off - but sorting it would mean re-modelling and texturing everything. I imagine one of the reasons that ships are "smaller" is that the original engine couldn't handle a larger poly count, and larger models would look undetailed.
-
Possibly just halving the size of every fighter in game would be a step in the right direction, but it would still be a lot of hard work :(
-
consider that SW ship sizes are in average 1/2 of fs2 ships....
-
Exactly, and if you read the Rogue Squadrom books - when they were in their X-Wings and a Corvette showed up, they were in serious trouble and those things were "big"! Star Destroyers were huge bases in space that were damn hard to take out for your generic squadron of fighters.
FS2 corvettes on the other hand carry none of the imposing size that they should... destroyers like the Bastion and the Aquitaine certainly don't have any of the Star Destroyers "presence" in space.
-
I don't really think that has much to do with the size of the cap ship models though. Its just the screwy perspective the game uses. Admittedly, fighter models are entirely too huge. Have you ever looked at the cockpit of a Herc? Its practically the size of a modern fighter by itself. When you see the intro to FS1 and we see the pilot in his Apollo, the cockpit doesn't look super gigantic. However, the listed sizes for the Apollo disagree. Her cockpit is the size of an SUV.
-
I agree with mikhael
I suppose that :v: did it that way to increase the field of view, and then have a wider view of the battleground.
In other games this is achieved, if you have a good system, by changing rendering resolution, but in fs2 the max res is 1024x768...
Then they discovered that things were rendered too small, fighters at their right scale were barely visible (w/o changing FOV it is very hard to even notice a TF at its right scale), and probably they decided to increase the size of the models instead of changing FOV.
these are only suppositions, obviously...
When I think about the feeling a Star destroyer gives in the films, when they are just 1.2 km, and the feeling the same ship give in fs2, well I can only thing there is something wrong, maybe on both sides.
-
My Hammerheads are 12 meters long, with a wingspan of 12m, as dictated by S:AAB blueprints. They're a bloody nightmare to see apart from any glowy bits. I've been considering just making everything bigger by 50% or so.
-
I think the cockpits of aircraft are designed to provide the widest FOV possible anyway by acting as a lens? Still, if the fighters were smaller and able to interact with capships more (Fly under bridges, around towers, through pipes etc, you would 'feel' the size of the ships more.
-
Well, as it stands, the current angle of view is around 80 degrees. In order to make effective use of smaller models, you would need a fov of about 30 or so in order to see them. Unfortunately this makes everything seem a little slower, because the higher the fov, the (apparently) quicker objects will recede away from the camera.
Also, past about 90 degrees fov you start to get fisheye distortion. So there are tradeoffs. Personally I'd like the fov to be smaller, but then people will complain that the game feels slow.
-
I one managed to hide my Ulysses in the gap between a Rakshasa's forward hulls. The silly bugger couldn't hit me for ****e :D
Oh, and this is in response to Flips post, if it seems OT initially... :nervous:
-
Originally posted by Sticks
Well, as it stands, the current angle of view is around 80 degrees. In order to make effective use of smaller models, you would need a fov of about 30 or so in order to see them. Unfortunately this makes everything seem a little slower, because the higher the fov, the (apparently) quicker objects will recede away from the camera.
Also, past about 90 degrees fov you start to get fisheye distortion. So there are tradeoffs. Personally I'd like the fov to be smaller, but then people will complain that the game feels slow.
No no no! It's not just the FOV - it's the perspective (*nods at Setekh*). Watch The Fellowship of the Ring; right after the 4 hobbits escape from Farmer Whatsisname and tumble down the hillside, Frodo yells at them to get off the road. Immediately before he does so, you see him staring down the road, and the perspective changes drastically. But notice that you can still see the same trees and such on the very sides of the screen at either end of the perspective change. The FOV doesn't change, but the perspective does.
THAT'S the kind of adjustment we need. Has anyone come across the code that governs that stuff?
-
The way that camera move is accomplished is by rapidly moving the camera closer to the subject and at the same time zooming out in sync with the forward camera motion.
In that sequence, the fov DOES change. That's really the only setting a lens has aside from an aperature setting, which doesn't apply in this case, as that only affects the exposure of the film and the depth of field.
The perspective transformation equation takes 4 parameters:
[list=1]
- FOV Angle in Radians
- Screen Aspect Ratio
- Near Clipping Plane
- Far Clipping Plane
[/list=1]
As you can see, there is not a way to do what you describe aside from altering the FOV (not that a real lens could do anything else either). If we do alter the transformation matrix as you say, things will be stretched oddly along the player's Z axis.
-
Changing the actual size or relevant size of ships won't solve anything.
The actual fact that capships look small from a considerable distance is realistic - watch some Gunbuster! - what is not is it reamains true even when you're close.
What we need is more detail - and as far as I know that's what the new SCP additions are about.
Still, the perpective should be corrected, and I don't mean the fov thing - it's like looking through a spyglass, and the effect is exactly the thing what a spyglass does!
It's the way things shrink, the current display is far to axonometric.
Check the difference between the last two pics of Sandwich - that spherical distortion is the actual thing IMHO that would give the right impression.
-
Again, I will reiterate, because it doesn't seem to be taking.
The effect of looking through a spyglass is caused by the reduction in your viewing angle to something very small, like 5 or 10 degrees.
You contradict yourself by saying that spherical distortion would help and then claim that the current has too much diagonal and spherical distortion (axonometric).
FOV is the only adjustable parameter in a perspective equation, as well as the only one that alters the compression or expansion of the percieved Z axis.
-
I think the whole "meters" calculations given by the game are all wrong. Let's blow the models up considerably and make the meters units bigger (i.e. everything is x% larger and x% faster).
-
Originally posted by Sandwich
We should fly past them quickly - especially at +/- 100 meters per second! :p But the thing is, at 100m/s, we should seem to be moving a _lot_ quicker than we do - go ahead, try surface-skimming at 100m/s one day. It's like driving a car. A.... slow car. ;)
...only because the ship you are skimming is so big.
try this.
1. get a fighter that goes 50 m/s
2. go up against a fenris, which is supposively 286 meters
3. fly past it. make sure you're at 50 m/s during the whole skim. this means starting a few 100 meters behind it.
4. time how long it takes to go from bow to stern. if it takes 5.72 seconds, then the scale is correct.
-
Originally posted by Sticks
Again, I will reiterate, because it doesn't seem to be taking.
The effect of looking through a spyglass is caused by the reduction in your viewing angle to something very small, like 5 or 10 degrees.
You contradict yourself by saying that spherical distortion would help and then claim that the current has too much diagonal and spherical distortion (axonometric).
FOV is the only adjustable parameter in a perspective equation, as well as the only one that alters the compression or expansion of the percieved Z axis.
Sticks, there is a difference between camera zoom and perspective, as you seem to understand, but I'm not sure the rest do. The spyglass analogy uses zoom, which is something you SCP coders have given us to adjust. But the perspective issue - the lens diameter - is what I'd like to be able to mess with. I'm willing to put up with distortion from this, just like I'm willing to put up with an inverted POV with a negative zoom amount currently. Can we lay aside arguments over whether it will help or not and just implement it? Is it even possible to implement?
Originally posted by Carl
...only because the ship you are skimming is so big.
try this.
1. get a fighter that goes 50 m/s
2. go up against a fenris, which is supposively 286 meters
3. fly past it. make sure you're at 50 m/s during the whole skim. this means starting a few 100 meters behind it.
4. time how long it takes to go from bow to stern. if it takes 5.72 seconds, then the scale is correct.
I don't doubt that the scale of the ships relative to velocity in-game is correct. As a matter of fact, I never brought the scale up! I think that while having more details on a ship certainly does help, it's not the main problem, and is addressing a side-issue and not the core problem. Bsides, look at the Star Destroyers is TIE Fighter. You cannot call them "detailed" by any stretch of imagination today, but they still look enormous.
-
What is the current transformation matrix used for rendering? And has anyone tried fiddling with it to increase the shrinkage in x,y with increasing z-depth?
(can't remember the actual name of the matrix i'm thinking of offhand....)
-
This sounds really interesting...I agree with Sandwich...we should fly past them quickly. This change would probably give many aspects a greater sense of speed even when the actual game speed has not changed at all (a largely balance thing).
Just a thought but Forgotten Battles uses hotkeys to shift the field of view from a very narrow (and thus sort of zoomed in) to the sort of fishbowl effect so you can see everything.
-
Sandwich, I'm not arguing, I'm trying to explain why it won't work, giving examples and techinical reasons so that people know why. I'm trying to be as curteous as possible here.
Computer games don't operate on lenses. Altering the diameter of a lens only alters the fov and focal length, which is the only reason a small or bigger lens has different perspective. Perspective is a function of fov only. Zoom is a decrease in fov.
Therefore, it can't be done. It is a physical and mathematical impossibility.
-
Sticks, I probably used the terminology without good enough understanding of it - what I said is that things don't look distorted enough, if you go parallel to an Orion it should shrink a lot more than it does, the sides are too straight.
-
Originally posted by Sticks
Sandwich, I'm not arguing, I'm trying to explain why it won't work, giving examples and techinical reasons so that people know why. I'm trying to be as curteous as possible here.
Computer games don't operate on lenses. Altering the diameter of a lens only alters the fov and focal length, which is the only reason a small or bigger lens has different perspective. Perspective is a function of fov only. Zoom is a decrease in fov.
Therefore, it can't be done. It is a physical and mathematical impossibility.
Sorry, I didn't mean to be that confrontational, but this is like the 4th time I've brought up this subject, and each time we get embroiled in discussions of all sorts of other ways to make things look bigger, and frankly, I've gotten sick of it.
But I must correct a glaring error in your post - computers - and therefore computer games - do operate on lenses - or lens simulation, to be accurate. If computers did not simulate different perspectives, then how did I get such different-looking renders?
ANYway.... can anyone actually look into this for once?
-
I love this place.
anyway, I've ben reading through this and it's all a foreign language to me. But it would be extremely "great" accomplishment to fix this. It's only a matter of time to understand. But thats the problem, if anyone can fix it, chances are there extremely buisy.:nod: :)
-
You got different looking renders because each render had a different viewing angle. That is all.
You can alter the degrees of fov by using the command line param -fov.
I will reiterate this for the last time. Fov is the ONLY variable in perspective, other than aspect ratio. Changing lens diameters only alters fov. Nothing else, nothing more.
-fov .5 will be about 40 degrees fov. -fov 1.5 will be about 120, I think. The current is 80 degrees.
Trust me, I looked into this just to make sure I wasn't spouting smoke, and there are no other alterations that can be made to a perspective equation other than the fov and aspect ratio. Period. Look in the various 3D SDKs if you don't believe me.
What you want to do is set up a test mission, and play with the -fov parameter until the distortion is how you want it. For your last render, I would recommend a -fov 1.25 or thereabouts. That would pretty much put you exactly on target with that last render's lens sim.
-
Just to be thorough:
The proper fov and focal length equation is:
FOV = 2 arctan (x / (2 f))
Where f is the focal length (25mm, 200mm, etc.) and x is the diagonal of the surface (a screen, film, ccd, etc.).
They are proportional. Hence, any computer lens simulation will convert to fov when a focal length has been supplied, as the perspective projection matrix is:
w 0 0 0
0 h 0 0
0 0 zf/(zf-zn) 1
0 0 -zn*zf/(zf-zn) 0
where:
h is the view space height. It is calculated from
h = cot(fovY/2);
w is the view space width. It is calculated from
w = h / Aspect.
So there. :p
-
Originally posted by Sticks
You got different looking renders because each render had a different viewing angle. That is all.
You can alter the degrees of fov by using the command line param -fov.
I will reiterate this for the last time. Fov is the ONLY variable in perspective, other than aspect ratio. Changing lens diameters only alters fov. Nothing else, nothing more.
-fov .5 will be about 40 degrees fov. -fov 1.5 will be about 120, I think. The current is 80 degrees.
Trust me, I looked into this just to make sure I wasn't spouting smoke, and there are no other alterations that can be made to a perspective equation other than the fov and aspect ratio. Period. Look in the various 3D SDKs if you don't believe me.
What you want to do is set up a test mission, and play with the -fov parameter until the distortion is how you want it. For your last render, I would recommend a -fov 1.25 or thereabouts. That would pretty much put you exactly on target with that last render's lens sim.
I admit freely that I understand zero of the underlying equation, but my spatial comprehension is quite high. So pardon me for trying to explain this in visual terms and not equations. :p
EDIT Gah, too tired to explain properly. Read Aldo's post about the depth vs the width & height; methinks he was right on. The "perspective" adjustment in MAX, along with a change in FOV, made what used to look like it was X meters away appear to be twice as far.
-
Just for the heck of it. The camera is in the same position in the first 3 pics.
85mm:
(http://www.3dap.com/hlp/staff/sandwich/images/fs2_scale_comparison_v2-85mm.jpg)
50mm:
(http://www.3dap.com/hlp/staff/sandwich/images/fs2_scale_comparison_v2-50mm.jpg)
28mm:
(http://www.3dap.com/hlp/staff/sandwich/images/fs2_scale_comparison_v2-28mm.jpg)
And finally, from the "I-Can't-Believe-It's-That-Big" department:
(http://www.3dap.com/hlp/staff/sandwich/images/fs2_scale_comparison_v2.jpg)
Yes, everything is to scale. And yes, that Ent-D model sucks. Sue me.
-
[color=cc9900]I don't know what you're trying to prove, Sandwich, but my analysis of those pictures is as follows:
All that is changing in those pictures is the field of view, in relation to the simulated focal length of the lens. Things appear to be further away because they now correspond to a lesser percentage of what the camera can see. The actual distance isn't changing a jot.[/color]
-
Exactly - the distance isn't moving one bit. It seems to me that if we could set the engine to render at a simulated 28mm, and then somehow only displayed the center 50% or so of the image, at a full 1024x768 (or 640x480) resolution, we'd have the right field of view, as well as have the in-game models look quite large.
-
Thank you god. Somebody else who understands. I'm not sure why this is even being discussed still. The proper adjustment can be made with the command line param -fov.
End of story. Period. Fullstop. The bottom line. The final word. Fin.
;)
-
The -fov command line, for reasons unknown to me, does not bring about the effect FS2 needs. Ships look larger when the "camera" is "zoomed in", which is an obvious result. But they look larger not because of the perspective (which flattens out), but because of the fact that they simply take up more screen space.
But I do see what you mean when you say that the fov is the only variable we have to adjust. While playing with the "perspective" control in MAX, I saw that, while it would lower the lens diameter, it would also move the camera closer, so that the actual field of view, what you could actually see, wouldn't change.
ANYway, here's an example of my idea from the above post:
(http://www.3dap.com/hlp/staff/sandwich/images/large28mm.jpg)
The above is a 1600x1200 image, with a lens diameter of 28mm. The red is the part I cropped it to:
(http://www.3dap.com/hlp/staff/sandwich/images/cropped28mm.jpg)
Compare this to the same visible area, but at 85mm:
(http://www.3dap.com/hlp/staff/sandwich/images/85mm.jpg)
As you can see, this would avoid distortion at the sides of the screen at wide lens angles, while allowing FS2 ships to appear much closer to their real size.
-
okay, good. someone do it.
-
Originally posted by Carl
okay, good. someone do it.
-
[color=cc9900]What you've effectively done, looking at the linear length of that red box in relation to the original image, is halved it. This is the photographic equivalent of doubling the focal length of the lens to ~56mm, and is something regularly done on enlargers when making a print.
This means that your 85mm ought to appear much closer than it is, if you were doing judgement from the same distance (which is what would be happening in FS2). Try comparing your resulting cropped image to one taken with a 56mm from the same point, and they ought to look exactly the same. Did you change the distance for that 85mm picture, or is it something MAX did automatically?
I still don't get what you're trying to achieve. If you want things to look big, you go right up close to them with a 28mm. If you want things to look big from a distance, you use an 85mm. Perspective is related to distance, not focal length, hence with the 28mm upclose you will see a lot of distortion compared to the 85mm from a distance.
Therefore, since distance is something that is changed by flying around in FS2, the only thing we should change is focal length. If you want your 'cropped effect' photo, make your FOV something equivalent to a 56mm.
EDIT:[/color]
Originally posted by Sandwich
While playing with the "perspective" control in MAX, I saw that, while it would lower the lens diameter, it would also move the camera closer, so that the actual field of view, what you could actually see, wouldn't change.
[color=cc9900]Ah right, so it is something MAX does. Just to clarify though, it's not changing the lens diameter, it's changing the focal length. If you change the lens diameter in a camera, i.e. the aperture, then you'll be using smaller film, have less lens resolution, and have a longer depth of field. Everything else would be equivalent.[/color]
-
Well, I still think interaction is the key, the problem I find is that you get 'pretty' close to a capship and then the huge size of your ship means you bounce off 'apparantly' early, so you never really feel like you are interacting with the ship. A mixture of a lower FOV and a ship with more 'interactive' parts (holes in the fuselage to fly through, pipes to fly under etc) then you would feel far more as though capships were terrain instead of decoration. Even Freelancer Capships don't feel as 'big' as they should do, it is because in Space there is no Horizon or point of reference.
-
[color=cc9900]Cue shameless pimpage of my WIP Fenris (still plenty more detail to add):
http://nodewar.penguinbomb.com/aotd/Odyssey/models/fenris.gif
And for realism's sake, I think a focal length of ~50mm (assuming the computation is based on 35mm film) might be nice to emulate the human eye. I'll go play.[/color]
-
You should realy check out KARMA's Hi-Poly Fenris in this (http://www.hard-light.net/forums/index.php/topic,17680.0.html) thread... just jump to the last page to see it.
Later!
-
This would be a nice thing to see when I come back. :D
-
Originally posted by Trivial Psychic
You should realy check out KARMA's Hi-Poly Fenris in this (http://www.hard-light.net/forums/index.php/topic,17680.0.html) thread... just jump to the last page to see it.
[color=cc9900]Bummer, he's got further than me... Ah well, I'll stop then. Only half an hour lost ^_^ I really ought to check long threads more often, but it's so much nicer when cool stuff goes in individual threads.[/color]
-
On the topic: all the fs2 ships are scaled beyond common sense, imo.
They should be scaled around the cockpit, bridge, whatever.
-
[color=cc9900]What are you suggesting in terms of changes, then? A general reduction in size, a general increase, or just the addition of scale reference points?[/color]
-
Originally posted by Odyssey
[color=cc9900]What you've effectively done, looking at the linear length of that red box in relation to the original image, is halved it. This is the photographic equivalent of doubling the focal length of the lens to ~56mm, and is something regularly done on enlargers when making a print.
This means that your 85mm ought to appear much closer than it is, if you were doing judgement from the same distance (which is what would be happening in FS2). Try comparing your resulting cropped image to one taken with a 56mm from the same point, and they ought to look exactly the same. Did you change the distance for that 85mm picture, or is it something MAX did automatically?[/color]
What I did was this:
- Positioned a camera for the large 28mm shot.
- Took the shot at 1600x1200
- Changed the camera's focal length (thx for correction) to 85mm, without using the perspective control. Therefore, the camera position did not change,
- Took the shot at 800x600
- Cropped the 28mm 1600x1200 shot to approx 60%, to resemble the same visible objects as in the 85mm one.
Notice the difference in the Fenris between the cropped 28mm and the 85mm. The Fenris appears much larger in the cropped 28mm, and yet the pilot can still only see the approximate same field of view as he could in an uncropped 85mm shot. Get FS2 to run like that permanentely, and we have a winner IMO.
Originally posted by Odyssey
[color=cc9900]I still don't get what you're trying to achieve. If you want things to look big, you go right up close to them with a 28mm. If you want things to look big from a distance, you use an 85mm. Perspective is related to distance, not focal length, hence with the 28mm upclose you will see a lot of distortion compared to the 85mm from a distance.[/color]
I don't want the size of things on screen to look big - not where you take a ruler ans measure the image and say "Hey, that Orion's 5mm larger than the other one". The apparent size increase I'm wanting to improve is in the actual perspective, the exact same kind of change you can see between Fenrises in the cropped 28mm and the 85mm images. Look at the "angles" the hull receeds from the camera at - that's the effect FS2 needs.
-
Originally posted by Sandwich
What I did was this:
- Positioned a camera for the large 28mm shot.
- Took the shot at 1600x1200
- Changed the camera's focal length (thx for correction) to 85mm, without using the perspective control. Therefore, the camera position did not change,
- Took the shot at 800x600
- Cropped the 28mm 1600x1200 shot to approx 60%, to resemble the same visible objects as in the 85mm one.
Notice the difference in the Fenris between the cropped 28mm and the 85mm. The Fenris appears much larger in the cropped 28mm, and yet the pilot can still only see the approximate same field of view as he could in an uncropped 85mm shot. Get FS2 to run like that permanentely, and we have a winner IMO.
[color=cc9900]Unfortunately, what you've got there is actually a problem with MAX. I don't quite know why, but it's shifted the camera further away for the 85mm. There is no way that the two final images you came up with are from the same position, provided that one is ~56mm and one is 85mm. The 85mm would physically have to be further away for it to show the same rough size of the objects, around 1/3 as far away again.
It's not surprising you've come up with something that is practically a 50mm lens for what you consider to be the 'best' option. A 50mm lens is used in photography as a 'normal' lens because the image produced is a very close approximation of what the human eye sees. Which is what the great majority of renderers ought to aim for. I don't know what the FS2 FOV number for that is.[/color]
-
Originally posted by Odyssey
[color=cc9900]What are you suggesting in terms of changes, then? A general reduction in size, a general increase, or just the addition of scale reference points?[/color]
I should have said "they should have been scaled".
How do you want to change anything? If you scale the fighters logically, you won't see them well enough unless that POV thing is fixed. And then, if all this is done, the gameplay will be changed, fighters will be tougher to hit, etc.
I don't have any pb with that, but will everybody think the same?
-
Originally posted by Odyssey
[color=cc9900]Unfortunately, what you've got there is actually a problem with MAX. I don't quite know why, but it's shifted the camera further away for the 85mm. There is no way that the two final images you came up with are from the same position, provided that one is ~56mm and one is 85mm. The 85mm would physically have to be further away for it to show the same rough size of the objects, around 1/3 as far away again.
It's not surprising you've come up with something that is practically a 50mm lens for what you consider to be the 'best' option. A 50mm lens is used in photography as a 'normal' lens because the image produced is a very close approximation of what the human eye sees. Which is what the great majority of renderers ought to aim for. I don't know what the FS2 FOV number for that is.[/color]
:wtf: Did you read what I said? I rendered the first picture, at 28mm, at 1600x1200 resolution. I then cropped it down. The 85mm picture I rendered from the exact same camera position, with only a lens change to 85mm. The catch is that I rendered it at 800x600.
-
[color=cc9900]Nico: I'm swaying towards liking things as they are. Complete and utter accuracy isn't really needed in what is primarily an arcade-style game.
Sandwich: Yes, I read what you said. In the cropping process, you effectively made your 28mm picture a 56mm, by halving the linear length. Hence it shouldn't show the objects at roughly the same size as an 85mm. Unless in some strange manner MAX is actually changing the film format when you change the resolution (LW doesn't do this, it'd screw up framing), what you've shown in those pictures ought not to be possible in the real world.[/color]
-
If all this is already able to be done in fs2_open, why can't I for the life of me make the ships look like Sandwich is suggesting?
What's the formula for converting the XXmm into fs2's number system anyway?
-
Originally posted by Solatar
What's the formula for converting the XXmm into fs2's number system anyway?
[color=cc9900]I don't think there is one, not one that's known anyway. The effect of focal length of a lens depends on the size of film/CCD imager, so I'm assuming the FOV parameter in FS2 is an arbitrary unit. I still haven't got around to testing it, come to think of it...[/color]
-
I like Sandwiche's idea. What he suggests actually makes sense to me and looks a lot better than the FOV command line.
-
Originally posted by Odyssey
[color=cc9900]Sandwich: Yes, I read what you said. In the cropping process, you effectively made your 28mm picture a 56mm, by halving the linear length. Hence it shouldn't show the objects at roughly the same size as an 85mm. Unless in some strange manner MAX is actually changing the film format when you change the resolution (LW doesn't do this, it'd screw up framing), what you've shown in those pictures ought not to be possible in the real world.[/color]
Ahh, ok - my next quetion would have been where you got that 56mm number from. ;)
You misunderstand the process, though - I loaded the 16x12 image into Photoshop and cropped it there, not in MAX.
But here's the core issue - it's not how many pixels wide a cetain ship is at a given distance, it's the manner in which the engine renders the ship's geometry recceding from the viewpoint. You can't deny that the ships in the pics at 28mm look more dramatic and large, whereas the ships in the 85mm pics are getting close to the orthographic view of MODELVIEW32.
FS2 currently is too close to an orthographic view to make the ships look the correct size.
-
Originally posted by Odyssey
[color=cc9900]Nico: I'm swaying towards liking things as they are. Complete and utter accuracy isn't really needed in what is primarily an arcade-style game.
[/color]
Well, I just don't like things to look tiny when they're in fact ridiculsouly huge. Which means it's completly assed, but hey.
-
Originally posted by Sandwich
Ahh, ok - my next quetion would have been where you got that 56mm number from. ;)
You misunderstand the process, though - I loaded the 16x12 image into Photoshop and cropped it there, not in MAX.
But here's the core issue - it's not how many pixels wide a cetain ship is at a given distance, it's the manner in which the engine renders the ship's geometry recceding from the viewpoint. You can't deny that the ships in the pics at 28mm look more dramatic and large, whereas the ships in the 85mm pics are getting close to the orthographic view of MODELVIEW32.
FS2 currently is too close to an orthographic view to make the ships look the correct size.
[color=cc9900]It doesn't really make a difference where it was cropped. It has the same effect of changing the virtual focal length of the lens.
Also, I wholly understand the effect you want to achieve, but I'm just saying that in the real world it isn't actually possible. When you're at the same distance from something, and you take a picture with first a 56mm and then a 85mm lens, and compare them, they will show the objects at different sizes. In the real world it is impossible for this to not happen.
The same is true for rendering. However, another variable you can change in rendering is the distance from the object, which is how MAX got your 56mm and 85mm picture showing the objects at the same size. I guess it depends on how the renderer works as to whether it actually realises it is changing the distance, or whether it simply employs a kind of 'dented mesh' that it pastes the picture onto.
Since distance in FS2 is judged by you flying around, I'm presuming what FS2 does when you change the FOV is render more of the scene and fit it to this 'dented mesh'. What you're suggesting is fitting the existing scene onto the 'dented mesh', without rendering more scene. I'm not sure how possible this is, but to me it just sounds 'wrong' and would bug me, because it is something that absolutely cannot happen in real life - where perspective depends on distance, not FOV or anything else. That's my opinion, anyway.[/color]
-
Originally posted by Odyssey
[color=cc9900]It doesn't really make a difference where it was cropped. It has the same effect of changing the virtual focal length of the lens.
Also, I wholly understand the effect you want to achieve, but I'm just saying that in the real world it isn't actually possible. When you're at the same distance from something, and you take a picture with first a 56mm and then a 85mm lens, and compare them, they will show the objects at different sizes. In the real world it is impossible for this to not happen.
The same is true for rendering. However, another variable you can change in rendering is the distance from the object, which is how MAX got your 56mm and 85mm picture showing the objects at the same size. I guess it depends on how the renderer works as to whether it actually realises it is changing the distance, or whether it simply employs a kind of 'dented mesh' that it pastes the picture onto.
Since distance in FS2 is judged by you flying around, I'm presuming what FS2 does when you change the FOV is render more of the scene and fit it to this 'dented mesh'. What you're suggesting is fitting the existing scene onto the 'dented mesh', without rendering more scene. I'm not sure how possible this is, but to me it just sounds 'wrong' and would bug me, because it is something that absolutely cannot happen in real life - where perspective depends on distance, not FOV or anything else. That's my opinion, anyway.[/color]
:nervous: Ok, now you're scaring me. I mean, I'm getting really really worried here. Do you not see the difference between the two Fenrises? How one looks "flat" and the other looks "stretched"?
I don't mind if changing this elusive variable from a 85mm equivalent to a 28mm equivalent makes things look farther away - that's virtually the whole point. Currently a 2km ship looks to be about 400 meters long. If everything is stretched, distorted, etc, then that same ship, viewed from the same position, will seem to be longer, due to the end of the ship seeming to be farther away.
And cropping is not the same as changing the focal length, not by any means. If the engine virtually rendered with a 28mm-equivalent lens a picture at 2048x1536, but only displayed the central 1024x768 on screen, it would be perfect. It would also be completely different from simply rendering an 1024x768 resolution image with an 85mm-equivalent lens.
-
If fighters look a tad bigger it would be esier to hit them at longer distances.
-
Uhh.... yeah.
Just was speaking to Kazan about this issue - he suggested that perhaps the problem is not that the perspective in-game is wrong, but that the ships really are smaller than reported. We all know that 20 TS units are translated into 1 FS unit during conversion of a model, so perhaps the ships in FS2 are actually 20 times smaller than they should be. :eek2:
-
well, in that case, do what i suggested earlier.
-
Ok, I think I figured out the problem, with Kazan's help.
I took my test scene, which had models accurate to the meter, and scaled them down 20x. Then I took a 45 degree (~43mm) camera, and walla - the Deimos and Fenris looked exactly the same as they do in-game - same perspective, same apparent size, everything. (I'll post a screenie in a few minutes.)
So basically, FS2 renders "meters" as 20 times smaller than they should be. While this does not affect ship interaction or anything, it does affect the simulated FOV/lens diameter.
So I scaled the test models back up 20 times, and suddenly it was almost realistic. The problem was that the camera made things seem too close for the distance, like it was zoomed in. So I changed the camera to a 35mm (FOV 54), and finally, the 747 looked like I was standing there, in person, looking at it.
So now the question remains: is there any way in the code to deal with this 20x scaling issue? Because if we can do that all in the code, without having to reconvert any models, then that's 90% of the problem solved right there. The other 10% would be setting the default FS2 FOV to be 54 instead of 45.
-
Hmm...there should be a way to do it in the code...
It seems logical (just use every coordinate parameterx20)
-
[color=cc9900]Sandwich, I saw the difference, I was just trying to explain how in the real world what you had been showing was not physically possible, and that something had gone wrong somewhere.
But, anyway, now you've found the problem, it's a moot point eh?[/color]
-
So, out of curiosity, how can we fix the problem? Fix the 20x scaling Sandwich mentioned, or what?
I ask, because, well, I've just started replaying Tachyon: The Fringe again, now that I have a decent stick. They got the whole scale thing exactly right: flying along the surface of a giant station feels like you're a very small person in a very large world. Interestingly, fighters that are far away are very small and very hard to hit. Shocking.
-
YESSSS!!
See what people can accomplish when they put there minds to it!!
Hope it can be fixed.:)
We are not worthy :thepimp:
-
Any clue when we could expect this? It would be nice to see the ships actual size :)
also that comparasin with the galaxy class starship, it realy makes me want to go against them. Ulisses vs defint, that would be a fun battle.
-
Originally posted by Odyssey
[color=cc9900]Bummer, he's got further than me... Ah well, I'll stop then. Only half an hour lost ^_^ I really ought to check long threads more often, but it's so much nicer when cool stuff goes in individual threads.[/color]
don't give up odyssey:
I'm not 100% sure about how my model will work in game, due to the way I built it, so if it will have problems, there still will be yours.
Plus, this could be the chance to have 2 diffetent models for fenris and leviathan
-
BTW some graphics guru/animeka could make a comparision chart showing an average human (180 cm) and some fighters next to each other.
That could come handy for designers whenever they want to scale things properly - not to mention if someone tried to do internal design for a ship.
-
Well, that's nopt exactly it, but you can try that already:
http://www.merzo.net/index.html
Anyway, what I do is just build the ship around the cockpit, then it's no biggie to scale the ship according to a human.
-
Well...if eversthing else fails one can allways re-scale all the ships....
-
Originally posted by Flaser
BTW some graphics guru/animeka could make a comparision chart showing an average human (180 cm) and some fighters next to each other.
That could come handy for designers whenever they want to scale things properly - not to mention if someone tried to do internal design for a ship.
(http://www.3dap.com/hlp/staff/sandwich/images/scale_comp_28mm-65degFOV.jpg)
(http://www.3dap.com/hlp/staff/sandwich/fenris-internal-v0.1.gif)
(http://www.3dap.com/hlp/staff/sandwich/fenris-internal-v0.1.1.gif)
Those decks are 2.5 meters high.
-
:nervous:
Did we ever get further than this?
-
I guess not, since those pics are ollllllllld :p
-
If someone wants to run through the code and multiply by twenty EVERY time a distance or coordinate is used, be my guest. You should only have to change about 2000 or so lines, provided you can find them all.
-
I think that although implementing this now may be hellish and should be put aside, it should be put on the wishlist for Fe2.
-
I'd do it if I knew what I was looking for and how :D
-
how about those screenies of you seeming to stand at the 747 renders sandwhich? I would like to see how you figured out the problem.
-
It's simply a 28mm lens with the objects all scaled to the proper sizes.
The line of tanks goes back to directly under the 747.
-
Originally posted by Sandwich
I took my test scene, which had models accurate to the meter, and scaled them down 20x. Then I took a 45 degree (~43mm) camera, and walla - the Deimos and Fenris looked exactly the same as they do in-game - same perspective, same apparent size, everything. (I'll post a screenie in a few minutes.)
Where's the screenie?
(Incidentally, it's spelled "voila"... I'm surprised Venom/Nico hasn't called you on that :p)
Originally posted by Sticks
If someone wants to run through the code and multiply by twenty EVERY time a distance or coordinate is used, be my guest. You should only have to change about 2000 or so lines, provided you can find them all.
Are we sure about that? The FOV turned out to be only one line of code. Perhaps this will turn out to be only one small subroutine that everything else is funneled through.
-
all you would need is to scale everything by 20 in the T&L code.
glScalef(20,20,20);
i don't know if the collision/hud/(insert problem area here) part of the code will be screwed up
-
Originally posted by Goober5000
Where's the screenie?
(Incidentally, it's spelled "voila"... I'm surprised Venom/Nico hasn't called you on that :p)
Oh yeah - I'll get one up if I have a moment... we're crazy busy at work this week, moving offices and all.
And the "walla" expression is Hebrew. Means basically the same as "viola", but I never felt comfortable with the latter - it's like saying "violin!" ;)
-
"Walla" is Hebrew for the same thing? Interesting. I'm curious as to its etymology. (Where's Sesquipedalian when you need him?)
And it's voila, not viola. It's French for "look there", or "there it is"; and it's pronounced "vwah-la". :p
-
Yeah, one of the main Israeli portals (http://www.walla.co.il/) is "Walla".
-
Originally posted by Goober5000
"And it's voila, not viola. It's French for "look there", or "there it is"; and it's pronounced "vwah-la". :p
listen to the guy, he knows his stuff. Oh, and of course, that's the french "a", not the english one ( like the "a" in alpha ).
I just wonder about your "h-", vwala is way enough, you don't mark a pause or anything.
That doesn't really in this forum, does it, btw? :D
-
The H isn't for the pause, it's for the pronunciation... "ah" has a very definite pronunciation to an English reader, whereas "a" could be any number of things, depending on your accent and preference.