View Issue Details

IDProjectCategoryView StatusLast Update
0000412FSSCPgraphicspublic2005-08-11 04:56
ReporterMongoose Assigned Totaylor  
PrioritynormalSeverityminorReproducibilityalways
Status resolvedResolutionfixed 
Summary0000412: Lines extending from Perseus
DescriptionThis is occurring using WMCoolmon's 4/23 build under OpenGL with a Radeon X300 and the latest Catalyst drivers. When I'm a few thousand meters away from a Perseus, I see a series of lines extending from the ship to my targeting reticle. I didn't notice the problem in previous builds, so I don't think it's the actual model that's causing the problem. Screenshot attached.
TagsNo tags attached.

Activities

2005-05-08 07:51

 

perseus.jpg (51,227 bytes)   
perseus.jpg (51,227 bytes)   

kasperl

2005-05-08 15:40

developer   ~0002335

Any other models causing this?
Did you test in D3D?

phreak

2005-05-08 20:18

developer   ~0002337

try deleting the ibx in data/cache/fighter2t-03.ibx

taylor

2005-05-09 02:54

administrator   ~0002338

Yeah, try deleting the IBX. I've seen this a few times in the past couple of months but haven't figured out the problem. Has some type of error during generation which makes it wrong but just deleting the IBX file and letting it regenerate fixes it every thime that I've tried.

phreak

2005-05-12 13:20

developer   ~0002368

any updates?

Mongoose

2005-05-12 16:37

reporter   ~0002371

Sorry for the delay. I just fired up a mission, and the lines were gone. Looks like it was the ibx file. Thanks for the help

taylor

2005-05-12 16:56

administrator   ~0002373

Cool. I really wish I new what causes this. The IBX code only writes out what the game generates so it shouldn't actually be the source of the problem, just makes it worse. The IBX code can't really sanity check the data other than to make sure there is enough since that would negate the speed increase that IBX is there for.

That buffer generation code just has a few bugs left in it so should this be assigned to Bobboau or just closed?

EtherShock

2005-05-13 17:17

reporter   ~0002383

This happens in D3D as well. Deleting the ibx file didn't help as far as I know.

phreak

2005-05-13 19:53

developer   ~0002388

my guess would be to check whether the points fall within the radius of the center of a subobject to initially validate the point. It looks like since these lines extend far away from the ship, then that type of check may work.

code:

rad_sq = bsp.rad * bsp.rad;

//alot faster than taking the square root
if (vm_vec_mag_squared(input_pt) > rad_sq)
{
     //fail
}

EtherShock

2005-05-14 06:46

reporter   ~0002394

Last edited: 2005-05-18 17:49

Nevermind, deleting the ibx file does work.

edited on: 05-14-05 02:46

I have confirmed this bug happens with the GVG Anuket as well sometimes.

edited on: 05-18-05 13:49

Mongoose

2005-05-21 02:01

reporter   ~0002439

Just an update: I've had this happen to me again once or twice. It seems to work after the initial deletion of the IBX file, but the problem returns the next time I play.

taylor

2005-05-21 04:09

administrator   ~0002443

Just so I'm sure what you're saying: It's messed up, you delete the IBX, it works fine (should have regenerated the IBX), you exit the game and next time it's messed up again? If that's the case then please attach the IBX to this bug so I can have a look at it.

It's supposed to just write what it generates so if it worked right after you deleted the IBX then the working data set should have been written the the new IBX. It never writes again so either there was a problem writing the data in the first place or there is a reading error that I have yet to notice.

Mongoose

2005-05-21 06:32

reporter   ~0002444

I just went back and re-checked, and it seems as though everything seems to be working fine now. I'm not really sure why the problem reappeared, but I'll post again if it happens in the future. As a side note, I also noticed that the problem wasn't appearing in every mission with a Perseus in it or every time for a specific mission; there was one particular mission where the problem appeared previously but didn't before, even before I re-deleted the IBX file.

taylor

2005-05-24 22:42

administrator   ~0002477

Ok. I'm not really sure what to do about this but close it and hope that the math errors get worked out soon. It is rather annoying, I had the same thing happen in TBP last night but with what looked like several models at the same time. Deleting the IBX files fixed it but it was pretty strange.

I won't close this until tomorrow at least in case anyone wants to leave it open but this could probably be considered a duplicate of a bug already assigned to Bobboau with the Fenris. I'm relatively sure that it's either closely related to that or a product of the same problem.

Bobboau

2005-05-31 23:21

developer   ~0002552

it seems to be more related to the IBX cacheing than the generation code.

are the lines going to the center of the screen all the time (in D3D mode especaly)?
if so then this may be a 2d error (some HUD thingy, maybe).
does it happen when in external view?

taylor

2005-06-01 02:33

administrator   ~0002555

The IBX stuff only writes out what find_first_index() and find_first_index_vb() sends back as it gets sent back. It hits those Assert()'s (!= -1, same_vert() check) in generate_vertex_buffers() way too much as well. Supposedly there are problems with NaN values in there. If there is a problem with IBX then ok but I can't say that I see the issue with this though:

model->buffer[model->n_buffers].index_buffer.index_buffer[j] = find_first_index_vb(&list[i], j, &model_list);

if ( ibuffer_info.write != NULL ) {
    cfwrite_short( model->buffer[model->n_buffers].index_buffer.index_buffer[j], ibuffer_info.write );
}

taylor

2005-06-19 08:09

administrator   ~0002649

This should be fixed in CVS now. The problem that was causing this in the generation code should be properly accounted for and fixed the next time the IBX in question gets generated. I'll wait for that to be confirmed before marking as fixed though.

taylor

2005-06-22 20:01

administrator   ~0002675

The code from fizz seems to have fixed this properly. Reopen if it happens again but be sure to delete the IBX file fist so that it can be regenerated with the proper data.

Fixered.

phreak

2005-07-05 05:26

developer   ~0002736

Last edited: 2005-07-05 05:29

the current ibx generation code in the codebase is causing some problems with the comm-node. model and ibx attached.

edit: may want to rename those to comm2s-01.* since inferno uses their own naming convention.

edited on: 07-05-05 01:29

2005-07-05 05:27

 

INFComm3.ibx (153,358 bytes)

2005-07-05 05:27

 

INFComm3.POF (459,691 bytes)

taylor

2005-07-05 10:45

administrator   ~0002737

Works fine for me. Here's my IBX that got generated exactly the same 12 out of 12 times. They have the same number of verts in them (as does yours) so the basic IBX code is working fine but I don't know why the few bits that are different are that way. Some of the numbers are off by one or two.

If it's showing wrong every time, and you tried deleting the IBX already, did it work the time right after you deleted the IBX?

2005-07-05 10:46

 

infcomm3.ibx (153,358 bytes)

phreak

2005-07-05 14:16

developer   ~0002738

Last edited: 2005-07-05 14:19

i've deleted the ibx 3 times and still got the same error. i'll upload a picture.

specs:
P4 1.8
1gb of ram
gf4 ti4200
opengl mode

edit: doesn't happen in d3d. also your ibx gives the same problem.

edited on: 07-05-05 10:19

2005-07-05 14:17

 

comm_pic.jpg (23,087 bytes)   
comm_pic.jpg (23,087 bytes)   

taylor

2005-07-05 15:41

administrator   ~0002739

Renders perfectly fine in OGL for me. And when you deleted the IBX, the very next time you ran it game it still rendered wrong when you first show it in the techroom? If so then it's not an IBX problem since the IBX won't get used until the next time the model get's loaded and you'd have to exit the techroom and go back in for that to happen.

And check the log file for any IBX errors just in case.

phreak

2005-07-05 16:15

developer   ~0002740

yea i closed out of FS and deleted the ibx and that still happened. i'll check the log file, but i wasn't running a debug and i don't know if it will spit something out then.

taylor

2005-07-07 15:54

administrator   ~0002742

I just added a -noibx cmdline option so that it will be easier to test/debug this stuff. Still haven't had a rendering problem though, even using your IBX file, so I don't know what to say about that.

taylor

2005-08-08 00:38

administrator   ~0002950

I think this should be fixed now. If it's the same bug then it was a performance optimization to the VBO which would avoid creating VBOs for small objects to avoid the performance penalty. Going back to having it always create a VBO appears to fix that problem and will likely fix this one too.

There was more than one problem here but the VBO issue should be OGL only and wouldn't be fixed by any amount of IBX changing. The other problem was a index buffer generation problem which was making corrupted IBX files but has already been fixed. I think that takes care of this but anyone who makes their own builds give current CVS a try and see if it's still a problem. Everyone else just wait for a newer build and give that a try.

taylor

2005-08-11 04:56

administrator   ~0002979

Haven't heard anything about this still being a problem with current CVS and everyone else has said that it works. Resolving this again but reopen if it does still happen with the next public build.

Fixered.

Issue History

Date Modified Username Field Change
2005-05-08 07:51 Mongoose New Issue
2005-05-08 07:51 Mongoose File Added: perseus.jpg
2005-05-08 15:40 kasperl Note Added: 0002335
2005-05-08 20:18 phreak Note Added: 0002337
2005-05-09 02:54 taylor Note Added: 0002338
2005-05-12 13:20 phreak Note Added: 0002368
2005-05-12 16:37 Mongoose Note Added: 0002371
2005-05-12 16:56 taylor Note Added: 0002373
2005-05-13 17:17 EtherShock Note Added: 0002383
2005-05-13 19:53 phreak Note Added: 0002388
2005-05-14 06:46 EtherShock Note Added: 0002394
2005-05-14 06:46 EtherShock Note Edited: 0002394
2005-05-18 17:49 EtherShock Note Edited: 0002394
2005-05-21 02:01 Mongoose Note Added: 0002439
2005-05-21 04:09 taylor Note Added: 0002443
2005-05-21 06:32 Mongoose Note Added: 0002444
2005-05-24 22:42 taylor Note Added: 0002477
2005-05-30 17:55 administrator Status new => assigned
2005-05-30 17:55 administrator Assigned To => Bobboau
2005-05-31 23:21 Bobboau Note Added: 0002552
2005-06-01 02:33 taylor Note Added: 0002555
2005-06-19 08:09 taylor Note Added: 0002649
2005-06-19 08:09 taylor Assigned To Bobboau => taylor
2005-06-22 20:01 taylor Status assigned => resolved
2005-06-22 20:01 taylor Resolution open => fixed
2005-06-22 20:01 taylor Note Added: 0002675
2005-07-05 05:26 phreak Status resolved => feedback
2005-07-05 05:26 phreak Resolution fixed => reopened
2005-07-05 05:26 phreak Note Added: 0002736
2005-07-05 05:27 phreak File Added: INFComm3.ibx
2005-07-05 05:27 phreak File Added: INFComm3.POF
2005-07-05 05:29 phreak Note Edited: 0002736
2005-07-05 10:45 taylor Note Added: 0002737
2005-07-05 10:46 taylor File Added: infcomm3.ibx
2005-07-05 14:16 phreak Note Added: 0002738
2005-07-05 14:16 phreak Note Edited: 0002738
2005-07-05 14:17 phreak File Added: comm_pic.jpg
2005-07-05 14:19 phreak Note Edited: 0002738
2005-07-05 15:41 taylor Note Added: 0002739
2005-07-05 16:15 phreak Note Added: 0002740
2005-07-07 15:54 taylor Note Added: 0002742
2005-08-08 00:38 taylor Note Added: 0002950
2005-08-08 00:38 taylor Status feedback => assigned
2005-08-11 04:56 taylor Status assigned => resolved
2005-08-11 04:56 taylor Resolution reopened => fixed
2005-08-11 04:56 taylor Note Added: 0002979