View Issue Details

IDProjectCategoryView StatusLast Update
0000472FSSCPgraphicspublic2005-07-19 15:50
Reporterpflumm Assigned To 
PrioritynormalSeveritytweakReproducibilityalways
Status closedResolutionopen 
Summary0000472: Wrong position of targeting gauges, depending on -fov
DescriptionIf I target a ship and it is near the edges of the screen, the targeting stuff is not in the correct position. Most noticeable for ships that are further away, because they are smaller... In the center of the screen, everything is fine, so it does not influence gameplay (at least not in a noticeable way). For small fov, the gauges are too near the center, for high values too far away from the center.
Additional InformationIt happens with the 3.6.5 build, but also with the new builds from Taylor, I tried
http://icculus.org/~taylor/fso/testing/20050622-win32.rar and
http://icculus.org/~taylor/fso/willrobinson/20050702-win32.rar

I have done some measurements for the 1024 and 1280 resolutions, here are my results. I used a ruler and then calculated the pixel offsets from resolution and screen width. I employed a training mission, flew approx. 1500 away from the instructor, targeted him and moved his ship to the left edge of the screen

First, for the 1024 resolution:
fov 0.35: offset 30 pixels, too near to center
fov 0.5: offset 15 pixels, too near to center
fov 0.75: offset 15 pixels, too far away from center
fov 0.65 looks correct.

For the 1280 resolution
fov 0.35: offset 70 pixels, too near to center
fov 0.65: offset 35 pixels, too near to center
fov 0.95: offset 18 pixels, too far away from center

I am using an Athlon XP2600+, Geforce4 Ti4200 AGP 8x, Force ware driver 77.72. D3D caps attached.

The game runs in D3D. Also happens without any of the mv_*.vp
TagsNo tags attached.

Activities

2005-07-13 08:02

 

D3D8 CAPS pflumm.txt (16,049 bytes)   
Operating System: Win XP Service Pack 2
Memory: 511 MB
Adapter: NVIDIA GeForce4 Ti 4200 with AGP8X

Modes:

19: (1280x1024)x32 bit, 60 rr
18: (1024x768)x32 bit, 60 rr
17: (800x600)x32 bit, 60 rr
16: (640x400)x32 bit, 60 rr
15: (512x384)x32 bit, 60 rr
14: (480x360)x32 bit, 60 rr
13: (400x300)x32 bit, 60 rr
12: (320x240)x32 bit, 60 rr
11: (320x200)x32 bit, 60 rr
10: (1280x1024)x16 bit, 60 rr
9: (1024x768)x16 bit, 60 rr
8: (800x600)x16 bit, 60 rr
7: (640x400)x16 bit, 60 rr
6: (512x384)x16 bit, 60 rr
5: (480x360)x16 bit, 60 rr
4: (400x300)x16 bit, 60 rr
3: (320x240)x16 bit, 60 rr
2: (320x200)x16 bit, 60 rr
1: (640x480)x32 bit, 60 rr
0: (640x480)x16 bit, 60 rr


D3D8 Caps:

caps.Caps.D3DCAPS_READ_SCANLINE:                                yes

caps.Caps2.D3DCAPS2_CANCALIBRATEGAMMA:                          no
caps.Caps2.D3DCAPS2_CANRENDERWINDOWED:                          yes
caps.Caps2.D3DCAPS2_CANMANAGERESOURCE:                          no
caps.Caps2.D3DCAPS2_DYNAMICTEXTURES:                            yes
caps.Caps2.D3DCAPS2_FULLSCREENGAMMA:                            yes
caps.Caps2.D3DCAPS2_NO2DDURING3DSCENE:                          no

caps.Caps3.D3DCAPS3_ALPHA_FULLSCREEN_FLIP_OR_DISCARD:           yes

caps.PresentationIntervals.D3DPRESENT_INTERVAL_IMMEDIATE:       yes
caps.PresentationIntervals.D3DPRESENT_INTERVAL_ONE:             yes
caps.PresentationIntervals.D3DPRESENT_INTERVAL_TWO:             yes
caps.PresentationIntervals.D3DPRESENT_INTERVAL_THREE:           yes
caps.PresentationIntervals.D3DPRESENT_INTERVAL_FOUR:            yes

caps.CursorCaps.D3DCURSORCAPS_COLOR:                            yes
caps.CursorCaps.D3DCURSORCAPS_LOWRES:                           no

caps.DevCaps.D3DDEVCAPS_CANBLTSYSTONONLOCAL:                    yes
caps.DevCaps.D3DDEVCAPS_CANRENDERAFTERFLIP:                     yes
caps.DevCaps.D3DDEVCAPS_DRAWPRIMTLVERTEX:                       yes
caps.DevCaps.D3DDEVCAPS_EXECUTESYSTEMMEMORY:                    yes
caps.DevCaps.D3DDEVCAPS_EXECUTEVIDEOMEMORY:                     yes
caps.DevCaps.D3DDEVCAPS_HWRASTERIZATION:                        yes
caps.DevCaps.D3DDEVCAPS_HWTRANSFORMANDLIGHT:                    yes
caps.DevCaps.D3DDEVCAPS_NPATCHES:                               no
caps.DevCaps.D3DDEVCAPS_PUREDEVICE:                             yes
caps.DevCaps.D3DDEVCAPS_QUINTICRTPATCHES:                       no
caps.DevCaps.D3DDEVCAPS_RTPATCHES:                              no
caps.DevCaps.D3DDEVCAPS_RTPATCHHANDLEZERO:                      no
caps.DevCaps.D3DDEVCAPS_SEPARATETEXTUREMEMORIES:                no
caps.DevCaps.D3DDEVCAPS_TEXTURENONLOCALVIDMEM:                  yes
caps.DevCaps.D3DDEVCAPS_TEXTURESYSTEMMEMORY:                    no
caps.DevCaps.D3DDEVCAPS_TEXTUREVIDEOMEMORY:                     yes
caps.DevCaps.D3DDEVCAPS_TLVERTEXSYSTEMMEMORY:                   yes
caps.DevCaps.D3DDEVCAPS_TLVERTEXVIDEOMEMORY:                    yes

caps.PrimitiveMiscCaps.D3DPMISCCAPS_BLENDOP:                    yes
caps.PrimitiveMiscCaps.D3DPMISCCAPS_CLIPPLANESCALEDPOINTS:      no
caps.PrimitiveMiscCaps.D3DPMISCCAPS_CLIPTLVERTS:                yes
caps.PrimitiveMiscCaps.D3DPMISCCAPS_COLORWRITEENABLE:           yes
caps.PrimitiveMiscCaps.D3DPMISCCAPS_CULLCCW:                    yes
caps.PrimitiveMiscCaps.D3DPMISCCAPS_CULLCW:                     yes
caps.PrimitiveMiscCaps.D3DPMISCCAPS_CULLNONE:                   yes
caps.PrimitiveMiscCaps.D3DPMISCCAPS_LINEPATTERNREP:             no
caps.PrimitiveMiscCaps.D3DPMISCCAPS_MASKZ:                      yes
caps.PrimitiveMiscCaps.D3DPMISCCAPS_TSSARGTEMP:                 yes

caps.RasterCaps.D3DPRASTERCAPS_ANISOTROPY:                      yes
caps.RasterCaps.D3DPRASTERCAPS_ANTIALIASEDGES:                  no
caps.RasterCaps.D3DPRASTERCAPS_COLORPERSPECTIVE:                yes
caps.RasterCaps.D3DPRASTERCAPS_DITHER:                          yes
caps.RasterCaps.D3DPRASTERCAPS_FOGRANGE:                        yes
caps.RasterCaps.D3DPRASTERCAPS_FOGTABLE:                        yes
caps.RasterCaps.D3DPRASTERCAPS_FOGVERTEX:                       yes
caps.RasterCaps.D3DPRASTERCAPS_MIPMAPLODBIAS:                   yes
caps.RasterCaps.D3DPRASTERCAPS_PAT:                             no
caps.RasterCaps.D3DPRASTERCAPS_STRETCHBLTMULTISAMPLE:           yes
caps.RasterCaps.D3DPRASTERCAPS_WBUFFER:                         yes
caps.RasterCaps.D3DPRASTERCAPS_WFOG:                            yes
caps.RasterCaps.D3DPRASTERCAPS_ZBIAS:                           yes
caps.RasterCaps.D3DPRASTERCAPS_ZBUFFERLESSHSR:                  no
caps.RasterCaps.D3DPRASTERCAPS_ZFOG:                            yes
caps.RasterCaps.D3DPRASTERCAPS_ZTEST:                           yes

caps.ZCmpCaps.D3DPCMPCAPS_ALWAYS:                               yes
caps.ZCmpCaps.D3DPCMPCAPS_EQUAL:                                yes
caps.ZCmpCaps.D3DPCMPCAPS_GREATER:                              yes
caps.ZCmpCaps.D3DPCMPCAPS_GREATEREQUAL:                         yes
caps.ZCmpCaps.D3DPCMPCAPS_LESS:                                 yes
caps.ZCmpCaps.D3DPCMPCAPS_LESSEQUAL:                            yes
caps.ZCmpCaps.D3DPCMPCAPS_NEVER:                                yes
caps.ZCmpCaps.D3DPCMPCAPS_NOTEQUAL:                             yes

caps.SrcBlendCaps.D3DPBLENDCAPS_BOTHINVSRCALPHA:                yes
caps.SrcBlendCaps.D3DPBLENDCAPS_BOTHSRCALPHA:                   yes
caps.SrcBlendCaps.D3DPBLENDCAPS_DESTALPHA:                      yes
caps.SrcBlendCaps.D3DPBLENDCAPS_DESTCOLOR:                      yes
caps.SrcBlendCaps.D3DPBLENDCAPS_INVDESTALPHA:                   yes
caps.SrcBlendCaps.D3DPBLENDCAPS_INVDESTCOLOR:                   yes
caps.SrcBlendCaps.D3DPBLENDCAPS_INVSRCALPHA:                    yes
caps.SrcBlendCaps.D3DPBLENDCAPS_INVSRCCOLOR:                    yes
caps.SrcBlendCaps.D3DPBLENDCAPS_ONE:                            yes
caps.SrcBlendCaps.D3DPBLENDCAPS_SRCALPHA:                       yes
caps.SrcBlendCaps.D3DPBLENDCAPS_SRCALPHASAT:                    yes
caps.SrcBlendCaps.D3DPBLENDCAPS_SRCCOLOR:                       yes
caps.SrcBlendCaps.D3DPBLENDCAPS_ZERO:                           yes

caps.DestBlendCaps.D3DPBLENDCAPS_BOTHINVSRCALPHA:               yes
caps.DestBlendCaps.D3DPBLENDCAPS_BOTHSRCALPHA:                  yes
caps.DestBlendCaps.D3DPBLENDCAPS_DESTALPHA:                     yes
caps.DestBlendCaps.D3DPBLENDCAPS_DESTCOLOR:                     yes
caps.DestBlendCaps.D3DPBLENDCAPS_INVDESTALPHA:                  yes
caps.DestBlendCaps.D3DPBLENDCAPS_INVDESTCOLOR:                  yes
caps.DestBlendCaps.D3DPBLENDCAPS_INVSRCALPHA:                   yes
caps.DestBlendCaps.D3DPBLENDCAPS_INVSRCCOLOR:                   yes
caps.DestBlendCaps.D3DPBLENDCAPS_ONE:                           yes
caps.DestBlendCaps.D3DPBLENDCAPS_SRCALPHA:                      yes
caps.DestBlendCaps.D3DPBLENDCAPS_SRCALPHASAT:                   yes
caps.DestBlendCaps.D3DPBLENDCAPS_SRCCOLOR:                      yes
caps.DestBlendCaps.D3DPBLENDCAPS_ZERO:                          yes

caps.AlphaCmpCaps.D3DPCMPCAPS_ALWAYS:                           yes
caps.AlphaCmpCaps.D3DPCMPCAPS_EQUAL:                            yes
caps.AlphaCmpCaps.D3DPCMPCAPS_GREATER:                          yes
caps.AlphaCmpCaps.D3DPCMPCAPS_GREATEREQUAL:                     yes
caps.AlphaCmpCaps.D3DPCMPCAPS_LESS:                             yes
caps.AlphaCmpCaps.D3DPCMPCAPS_LESSEQUAL:                        yes
caps.AlphaCmpCaps.D3DPCMPCAPS_NEVER:                            yes
caps.AlphaCmpCaps.D3DPCMPCAPS_NOTEQUAL:                         yes

caps.ShadeCaps.D3DPSHADECAPS_ALPHAGOURAUDBLEND:                 yes
caps.ShadeCaps.D3DPSHADECAPS_COLORGOURAUDRGB:                   yes
caps.ShadeCaps.D3DPSHADECAPS_FOGGOURAUD:                        yes
caps.ShadeCaps.D3DPSHADECAPS_SPECULARGOURAUDRGB:                yes

caps.TextureCaps.D3DPTEXTURECAPS_ALPHA:                         yes
caps.TextureCaps.D3DPTEXTURECAPS_ALPHAPALETTE:                  yes
caps.TextureCaps.D3DPTEXTURECAPS_CUBEMAP:                       yes
caps.TextureCaps.D3DPTEXTURECAPS_CUBEMAP_POW2:                  yes
caps.TextureCaps.D3DPTEXTURECAPS_MIPCUBEMAP:                    yes
caps.TextureCaps.D3DPTEXTURECAPS_MIPMAP:                        yes
caps.TextureCaps.D3DPTEXTURECAPS_MIPVOLUMEMAP:                  yes
caps.TextureCaps.D3DPTEXTURECAPS_NONPOW2CONDITIONAL:            yes
caps.TextureCaps.D3DPTEXTURECAPS_PERSPECTIVE:                   yes
caps.TextureCaps.D3DPTEXTURECAPS_POW2:                          yes
caps.TextureCaps.D3DPTEXTURECAPS_PROJECTED:                     yes
caps.TextureCaps.D3DPTEXTURECAPS_SQUAREONLY:                    no
caps.TextureCaps.D3DPTEXTURECAPS_TEXREPEATNOTSCALEDBYSIZE:      no
caps.TextureCaps.D3DPTEXTURECAPS_VOLUMEMAP:                     yes
caps.TextureCaps.D3DPTEXTURECAPS_VOLUMEMAP_POW2:                yes

caps.TextureFilterCaps.D3DPTFILTERCAPS_MAGFAFLATCUBIC:          no
caps.TextureFilterCaps.D3DPTFILTERCAPS_MAGFANISOTROPIC:         no
caps.TextureFilterCaps.D3DPTFILTERCAPS_MAGFGAUSSIANCUBIC:       no
caps.TextureFilterCaps.D3DPTFILTERCAPS_MAGFLINEAR:              yes
caps.TextureFilterCaps.D3DPTFILTERCAPS_MAGFPOINT:               yes
caps.TextureFilterCaps.D3DPTFILTERCAPS_MINFANISOTROPIC:         yes
caps.TextureFilterCaps.D3DPTFILTERCAPS_MINFLINEAR:              yes
caps.TextureFilterCaps.D3DPTFILTERCAPS_MINFPOINT:               yes
caps.TextureFilterCaps.D3DPTFILTERCAPS_MIPFLINEAR:              yes
caps.TextureFilterCaps.D3DPTFILTERCAPS_MIPFPOINT:               yes

caps.CubeTextureFilterCaps.D3DPTFILTERCAPS_MAGFAFLATCUBIC:      no
caps.CubeTextureFilterCaps.D3DPTFILTERCAPS_MAGFANISOTROPIC:     no
caps.CubeTextureFilterCaps.D3DPTFILTERCAPS_MAGFGAUSSIANCUBIC:   no
caps.CubeTextureFilterCaps.D3DPTFILTERCAPS_MAGFLINEAR:          yes
caps.CubeTextureFilterCaps.D3DPTFILTERCAPS_MAGFPOINT:           yes
caps.CubeTextureFilterCaps.D3DPTFILTERCAPS_MINFANISOTROPIC:     no
caps.CubeTextureFilterCaps.D3DPTFILTERCAPS_MINFLINEAR:          yes
caps.CubeTextureFilterCaps.D3DPTFILTERCAPS_MINFPOINT:           yes
caps.CubeTextureFilterCaps.D3DPTFILTERCAPS_MIPFLINEAR:          yes
caps.CubeTextureFilterCaps.D3DPTFILTERCAPS_MIPFPOINT:           yes

caps.VolumeTextureFilterCaps.D3DPTFILTERCAPS_MAGFAFLATCUBIC:    no
caps.VolumeTextureFilterCaps.D3DPTFILTERCAPS_MAGFANISOTROPIC:   no
caps.VolumeTextureFilterCaps.D3DPTFILTERCAPS_MAGFGAUSSIANCUBIC: no
caps.VolumeTextureFilterCaps.D3DPTFILTERCAPS_MAGFLINEAR:        yes
caps.VolumeTextureFilterCaps.D3DPTFILTERCAPS_MAGFPOINT:         yes
caps.VolumeTextureFilterCaps.D3DPTFILTERCAPS_MINFANISOTROPIC:   no
caps.VolumeTextureFilterCaps.D3DPTFILTERCAPS_MINFLINEAR:        yes
caps.VolumeTextureFilterCaps.D3DPTFILTERCAPS_MINFPOINT:         yes
caps.VolumeTextureFilterCaps.D3DPTFILTERCAPS_MIPFLINEAR:        yes
caps.VolumeTextureFilterCaps.D3DPTFILTERCAPS_MIPFPOINT:         yes

caps.TextureAddressCaps.D3DPTADDRESSCAPS_BORDER:                yes
caps.TextureAddressCaps.D3DPTADDRESSCAPS_CLAMP:                 yes
caps.TextureAddressCaps.D3DPTADDRESSCAPS_INDEPENDENTUV:         yes
caps.TextureAddressCaps.D3DPTADDRESSCAPS_MIRROR:                yes
caps.TextureAddressCaps.D3DPTADDRESSCAPS_MIRRORONCE:            no
caps.TextureAddressCaps.D3DPTADDRESSCAPS_WRAP:                  yes

caps.VolumeTextureAddressCaps.D3DPTADDRESSCAPS_BORDER:          yes
caps.VolumeTextureAddressCaps.D3DPTADDRESSCAPS_CLAMP:           yes
caps.VolumeTextureAddressCaps.D3DPTADDRESSCAPS_INDEPENDENTUV:   yes
caps.VolumeTextureAddressCaps.D3DPTADDRESSCAPS_MIRROR:          yes
caps.VolumeTextureAddressCaps.D3DPTADDRESSCAPS_MIRRORONCE:      no
caps.VolumeTextureAddressCaps.D3DPTADDRESSCAPS_WRAP:            yes

caps.LineCaps.D3DLINECAPS_ALPHACMP:                             yes
caps.LineCaps.D3DLINECAPS_BLEND:                                yes
caps.LineCaps.D3DLINECAPS_FOG:                                  yes
caps.LineCaps.D3DLINECAPS_TEXTURE:                              yes
caps.LineCaps.D3DLINECAPS_ZTEST:                                yes

Max texture width:  4096
Max texture height: 4096
Max volume extent:  512

Max texture repeat: 8192
Max texture aspect: 4096
Max anisotropy:     8
Max vertex W:       10000000000.000000

Guard band (l,t,r,b): -100000000.000000 -100000000.000000 100000000.000000 100000000.000000

Extents adjust: 0

caps.StencilCaps.D3DSTENCILCAPS_DECR:                           yes
caps.StencilCaps.D3DSTENCILCAPS_DECRSAT:                        yes
caps.StencilCaps.D3DSTENCILCAPS_INCR:                           yes
caps.StencilCaps.D3DSTENCILCAPS_INCRSAT:                        yes
caps.StencilCaps.D3DSTENCILCAPS_INVERT:                         yes
caps.StencilCaps.D3DSTENCILCAPS_KEEP:                           yes
caps.StencilCaps.D3DSTENCILCAPS_REPLACE:                        yes
caps.StencilCaps.D3DSTENCILCAPS_ZERO:                           yes

caps.FVFCaps.D3DFVFCAPS_DONOTSTRIPELEMENTS:                     yes
caps.FVFCaps.D3DFVFCAPS_PSIZE:                                  no
caps.FVFCaps.D3DFVFCAPS_TEXCOORDCOUNTMASK:                      yes

caps.TextureOpCaps.D3DTEXOPCAPS_ADD:                            yes
caps.TextureOpCaps.D3DTEXOPCAPS_ADDSIGNED:                      yes
caps.TextureOpCaps.D3DTEXOPCAPS_ADDSIGNED2X:                    yes
caps.TextureOpCaps.D3DTEXOPCAPS_ADDSMOOTH:                      yes
caps.TextureOpCaps.D3DTEXOPCAPS_BLENDCURRENTALPHA:              yes
caps.TextureOpCaps.D3DTEXOPCAPS_BLENDDIFFUSEALPHA:              yes
caps.TextureOpCaps.D3DTEXOPCAPS_BLENDFACTORALPHA:               yes
caps.TextureOpCaps.D3DTEXOPCAPS_BLENDTEXTUREALPHA:              yes
caps.TextureOpCaps.D3DTEXOPCAPS_BLENDTEXTUREALPHAPM:            yes
caps.TextureOpCaps.D3DTEXOPCAPS_BUMPENVMAP:                     yes
caps.TextureOpCaps.D3DTEXOPCAPS_BUMPENVMAPLUMINANCE:            yes
caps.TextureOpCaps.D3DTEXOPCAPS_DISABLE:                        yes
caps.TextureOpCaps.D3DTEXOPCAPS_DOTPRODUCT3:                    yes
caps.TextureOpCaps.D3DTEXOPCAPS_LERP:                           yes
caps.TextureOpCaps.D3DTEXOPCAPS_MODULATE:                       yes
caps.TextureOpCaps.D3DTEXOPCAPS_MODULATE2X:                     yes
caps.TextureOpCaps.D3DTEXOPCAPS_MODULATE4X:                     yes
caps.TextureOpCaps.D3DTEXOPCAPS_MODULATEALPHA_ADDCOLOR:         yes
caps.TextureOpCaps.D3DTEXOPCAPS_MODULATECOLOR_ADDALPHA:         yes
caps.TextureOpCaps.D3DTEXOPCAPS_MODULATEINVALPHA_ADDCOLOR:      yes
caps.TextureOpCaps.D3DTEXOPCAPS_MODULATEINVCOLOR_ADDALPHA:      yes
caps.TextureOpCaps.D3DTEXOPCAPS_MULTIPLYADD:                    yes
caps.TextureOpCaps.D3DTEXOPCAPS_PREMODULATE:                    no
caps.TextureOpCaps.D3DTEXOPCAPS_SELECTARG1:                     yes
caps.TextureOpCaps.D3DTEXOPCAPS_SELECTARG2:                     yes
caps.TextureOpCaps.D3DTEXOPCAPS_SUBTRACT:                       yes

Max texture blend stages:  8
Max simultaneous textures: 4

caps.VertexProcessingCaps.D3DVTXPCAPS_DIRECTIONALLIGHTS:        yes
caps.VertexProcessingCaps.D3DVTXPCAPS_LOCALVIEWER:              yes
caps.VertexProcessingCaps.D3DVTXPCAPS_MATERIALSOURCE7:          yes
caps.VertexProcessingCaps.D3DVTXPCAPS_POSITIONALLIGHTS:         yes
caps.VertexProcessingCaps.D3DVTXPCAPS_TEXGEN:                   yes
caps.VertexProcessingCaps.D3DVTXPCAPS_TWEENING:                 no
caps.VertexProcessingCaps.D3DVTXPCAPS_NO_VSDT_UBYTE4:           yes

Max active lights:             8
Max user clip planes:          0
Max vertex blend matrices:     4
Max vertex blend matrix index: 0

Max point size: 8192.000000
Max Prim count:    1048575
Max Vertrx index:  1048575
Max Streams:       16
Max Stream stride: 255

Vertex shader version:   1.1
Max vertex shader const: 96

Pixel shader version:    1.3
Max pixel shader value:  0

D3D8 CAPS pflumm.txt (16,049 bytes)   

taylor

2005-07-19 15:50

administrator   ~0002809

Duplicate of 0000083

The problem here is that the brackets are rendered in 2d and never take into account the offsets incurred with the 3d FOV. Not sure how best to fix this but it will likely stay the way that it is for a while yet.

Issue History

Date Modified Username Field Change
2005-07-13 08:02 pflumm New Issue
2005-07-13 08:02 pflumm File Added: D3D8 CAPS pflumm.txt
2005-07-19 15:50 taylor Status new => closed
2005-07-19 15:50 taylor Note Added: 0002809