View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0001946 | FSSCP | models | public | 2009-06-29 02:59 | 2009-12-09 08:09 |
Reporter | chief1983 | Assigned To | Wanderer | ||
Priority | normal | Severity | crash | Reproducibility | always |
Status | resolved | Resolution | fixed | ||
Product Version | 3.6.11 | ||||
Summary | 0001946: Submodels with rotate movement and no axis crash on collision | ||||
Description | Ok, I'm not upset about the crash - it should have had an axis set probably. But it could be handled better. Currently it does an int3(), so I'm guessing the crash only happens in debug. It could tell the user why it just crashed, or better yet, on model load, models with rotation and no axis set could throw some sort of warning. I'm not sure how omnidirectional turrets would have to be checked but standard rotation submodels with a $rotate= property should definitely have an axis of rotation set, or throw a warning of some sort. Call stack to the specific crash is below. | ||||
Additional Information | Call stack: fs2_open_3_6_11d-Wanderer_r5376.exe!debug_int3(char * file=0x00e7f954, int line=3936) Line 760 fs2_open_3_6_11d-Wanderer_r5376.exe!model_init_submodel_axis_pt(submodel_instance_info * sii=0x0c4c10a8, int model_num=4364, int submodel_num=2) Line 3936 + 0x13 bytes fs2_open_3_6_11d-Wanderer_r5376.exe!calculate_ship_ship_collision_physics(collision_info_struct * ship_ship_hit_info=0x0017f0c4) Line 682 + 0x35 bytes fs2_open_3_6_11d-Wanderer_r5376.exe!ship_ship_check_collision(collision_info_struct * ship_ship_hit_info=0x0017f0c4, vec3d * hitpos=0x0017f0b0) Line 472 + 0x9 bytes fs2_open_3_6_11d-Wanderer_r5376.exe!collide_ship_ship(obj_pair * pair=0x0494890c) Line 1134 + 0x13 bytes fs2_open_3_6_11d-Wanderer_r5376.exe!obj_check_all_collisions() Line 524 + 0xe bytes fs2_open_3_6_11d-Wanderer_r5376.exe!obj_move_all(float frametime=0.016998291) Line 1462 fs2_open_3_6_11d-Wanderer_r5376.exe!game_simulation_frame() Line 4295 + 0xf bytes fs2_open_3_6_11d-Wanderer_r5376.exe!game_frame(int paused=0) Line 4722 fs2_open_3_6_11d-Wanderer_r5376.exe!game_do_frame() Line 5161 + 0x7 bytes fs2_open_3_6_11d-Wanderer_r5376.exe!game_do_state(int state=2) Line 6936 fs2_open_3_6_11d-Wanderer_r5376.exe!gameseq_process_events() Line 405 + 0x14 bytes fs2_open_3_6_11d-Wanderer_r5376.exe!game_main(char * cmdline=0x02243ae5) Line 7499 + 0x5 bytes fs2_open_3_6_11d-Wanderer_r5376.exe!WinMain(HINSTANCE__ * hInst=0x00400000, HINSTANCE__ * hPrev=0x00000000, char * szCmdLine=0x02243ae5, int nCmdShow=10) Line 7573 + 0x9 bytes fs2_open_3_6_11d-Wanderer_r5376.exe!__tmainCRTStartup() Line 263 + 0x2c bytes fs2_open_3_6_11d-Wanderer_r5376.exe!WinMainCRTStartup() Line 182 kernel32.dll!7676eccb() [Frames below may be incorrect and/or missing, no symbols loaded for kernel32.dll] ntdll.dll!77c9d24d() ntdll.dll!77c9d45f() | ||||
Tags | No tags attached. | ||||
|
Just to clarify the model had a rotate=60 under properties and was set to rotate but also set to no axis. I think the combination of having the rotate= and no axis is where the crash occurred. TBP has several turret-arms for turrets on models that have rotate and no axis that do not result it a crash. BTW PCS2 is good at adding bad rotation info for sub objects and especially sub object sub objects on model import |
|
Well if so, it can still be fixed in PCS2 before final save and therefore should be fixed by the person doing conversion. But having a warning would help them know when they missed something like that. |
|
I'm just saying that if rotate no axis isn't a problem unless there is a rotate= property (which I think can also be specified in the ship table) then adding a bunch of warnings for it might not be the best idea. That and I really don't want to have to do another batch of TBP fixes this soon. :D The note about PCS2 doing it was just there for anyone reading this who didn't touch those properties and encounters the problem. |
|
Well then I guess it should only warn if $rotate= is in the properties, whatever it is that lead to that int3 being hit. |
|
Was this the cause of the crash with Ragnar then? |
|
Did it only crash when you ran into it? |
|
As far as I could tell the only problem was crashing into the rings. |
|
Then I'd bet my ridiculous goverment salary (just kidding, quoting Transformers) that it's the same bug. |
|
It does look like the rings currently have a rotate axis set though, and have since they were added to SVN. Was this crashing before Diaspora got SVN? |
|
Now s warning is supposed to pop up if you have rotating submodel without rotation axis. Please test (r5706). |
Date Modified | Username | Field | Change |
---|---|---|---|
2009-06-29 02:59 | chief1983 | New Issue | |
2009-06-29 03:32 | FUBAR-BDHR | Note Added: 0011013 | |
2009-06-29 04:22 | chief1983 | Note Added: 0011016 | |
2009-06-29 04:46 | FUBAR-BDHR | Note Added: 0011017 | |
2009-06-29 04:47 | FUBAR-BDHR | Note Edited: 0011017 | |
2009-06-29 05:31 | chief1983 | Note Added: 0011018 | |
2009-06-29 19:23 | karajorma | Note Added: 0011022 | |
2009-06-29 21:28 | chief1983 | Note Added: 0011023 | |
2009-06-29 21:29 | chief1983 | Description Updated | |
2009-06-30 06:32 | karajorma | Note Added: 0011026 | |
2009-06-30 06:50 | chief1983 | Note Added: 0011027 | |
2009-07-03 16:21 | chief1983 | Note Added: 0011035 | |
2009-12-06 09:52 | Wanderer | Status | new => assigned |
2009-12-06 09:52 | Wanderer | Assigned To | => Wanderer |
2009-12-06 10:59 | Wanderer | Note Added: 0011383 | |
2009-12-06 10:59 | Wanderer | Status | assigned => feedback |
2009-12-09 08:09 | Wanderer | Status | feedback => resolved |
2009-12-09 08:09 | Wanderer | Resolution | open => fixed |