Author Topic: Ship crashes FSO  (Read 1891 times)

0 Members and 1 Guest are viewing this topic.

Offline Enioch

  • 210
  • Alternative History Word Writer
Hello, people.

I would like you to bestow the Wisdom Of The Modders (TM) to this unworthy model converter.

I have converted the attached model from Blender to POF, in order to check whether the normal map works in certain parts of it, or whether I'll have to change some of the UV layout. Anyway, that is pretty much unimportant: it just means that UVmapping is still very much incomplete.

The problem is that FSO crashes the moment I try to see the model in the F3 ship lab. I get the following error log, with the 3.6.12d INF exe:

Code: [Select]
==========================================================================
DEBUG SPEW: No debug_filter.cfg found, so only general, error, and warning
categories can be shown and no debug_filter.cfg info will be saved.
==========================================================================
FreeSpace version: 3.6.12
Passed cmdline options:
  -spec_exp 16.7
  -spec_static 0.9
  -spec_point 0.6
  -spec_tube 1
  -ambient_factor 35
  -env
  -mipmap
  -missile_lighting
  -glow
  -nomotiondebris
  -noscalevid
  -spec
  -no_emissive_light
  -normal
  -3dshockwave
  -post_process
  -bloom_intensity 200
  -cache_bitmaps
  -img2dds
  -no_vsync
  -ballistic_gauge
  -orbradar
  -rearm_timer
  -3dwarp
  -ship_choice_3d
  -warp_flash
  -snd_preload
  -mod RL,mediavps_3612,Emp
  -output_scripting
Building file index...
Found root pack 'C:\freespace\mediavps_3612\MV_Advanced.vp' with a checksum of 0x4b8b0f5a
Found root pack 'C:\freespace\mediavps_3612\MV_AnimGlows.vp' with a checksum of 0x6a554026
Found root pack 'C:\freespace\mediavps_3612\MV_Assets.vp' with a checksum of 0x529cc70f
Found root pack 'C:\freespace\mediavps_3612\MV_Effects.vp' with a checksum of 0xb9a9a485
Found root pack 'C:\freespace\mediavps_3612\MV_Music.vp' with a checksum of 0xb3e21469
Found root pack 'C:\freespace\mediavps_3612\MV_Root.vp' with a checksum of 0x6ffd5c78
Found root pack 'C:\freespace\FS2OGGcutscenepack.vp' with a checksum of 0x84396e99
Found root pack 'C:\freespace\multi-mission-pack.vp' with a checksum of 0x377695e0
Found root pack 'C:\freespace\multi-voice-pack.vp' with a checksum of 0xd50e7442
Found root pack 'C:\freespace\root_fs2.vp' with a checksum of 0xce10d76c
Found root pack 'C:\freespace\smarty_fs2.vp' with a checksum of 0xddeb3b1e
Found root pack 'C:\freespace\sparky_fs2.vp' with a checksum of 0x164fe65a
Found root pack 'C:\freespace\sparky_hi_fs2.vp' with a checksum of 0xa11d56f1
Found root pack 'C:\freespace\stu_fs2.vp' with a checksum of 0xd77da83a
Found root pack 'C:\freespace\tango1_fs2.vp' with a checksum of 0x4c25221e
Found root pack 'C:\freespace\tango2_fs2.vp' with a checksum of 0x86920b82
Found root pack 'C:\freespace\tango3_fs2.vp' with a checksum of 0x705e8d71
Found root pack 'C:\freespace\warble_fs2.vp' with a checksum of 0xd85c305d
Searching root 'C:\freespace\RL\' ... 33 files
Searching root 'C:\freespace\mediavps_3612\' ... 1 files
Searching root pack 'C:\freespace\mediavps_3612\MV_Advanced.vp' ... 1283 files
Searching root pack 'C:\freespace\mediavps_3612\MV_AnimGlows.vp' ... 1641 files
Searching root pack 'C:\freespace\mediavps_3612\MV_Assets.vp' ... 1905 files
Searching root pack 'C:\freespace\mediavps_3612\MV_Effects.vp' ... 1892 files
Searching root pack 'C:\freespace\mediavps_3612\MV_Music.vp' ... 32 files
Searching root pack 'C:\freespace\mediavps_3612\MV_Root.vp' ... 358 files
Searching root 'C:\freespace\Emp\' ... 93 files
Searching root 'C:\freespace\' ... 23 files
Searching root pack 'C:\freespace\FS2OGGcutscenepack.vp' ... 10 files
Searching root pack 'C:\freespace\multi-mission-pack.vp' ... 110 files
Searching root pack 'C:\freespace\multi-voice-pack.vp' ... 307 files
Searching root pack 'C:\freespace\root_fs2.vp' ... 157 files
Searching root pack 'C:\freespace\smarty_fs2.vp' ... 10 files
Searching root pack 'C:\freespace\sparky_fs2.vp' ... 3027 files
Searching root pack 'C:\freespace\sparky_hi_fs2.vp' ... 1337 files
Searching root pack 'C:\freespace\stu_fs2.vp' ... 2355 files
Searching root pack 'C:\freespace\tango1_fs2.vp' ... 32 files
Searching root pack 'C:\freespace\tango2_fs2.vp' ... 15 files
Searching root pack 'C:\freespace\tango3_fs2.vp' ... 10 files
Searching root pack 'C:\freespace\warble_fs2.vp' ... 52 files
Found 22 roots and 14683 files.
AutoLang: Language auto-detection successful...
Setting language to English
TBM  =>  Starting parse of 'mv_core-lcl.tbm' ...
Initializing OpenAL...
  Using 'Generic Software' as OpenAL sound device...
  OpenAL Vendor     : Creative Labs Inc.
  OpenAL Renderer   : Software
  OpenAL Version    : 1.1

... OpenAL successfully initialized!
Initializing OpenGL graphics device at 1680x1050 with 32-bit color...
  Initializing WGL...
  Requested WGL Video values = R: 8, G: 8, B: 8, depth: 32, double-buffer: 1
  Actual WGL Video values    = R: 8, G: 8, B: 8, depth: 32, double-buffer: 1
  OpenGL Vendor     : NVIDIA Corporation
  OpenGL Renderer   : GeForce GTX 260M/PCI/SSE2
  OpenGL Version    : 3.0.0

  Using extension "GL_EXT_fog_coord".
  Using extension "GL_ARB_multitexture".
  Using extension "GL_ARB_texture_env_add".
  Using extension "GL_ARB_texture_compression".
  Using extension "GL_EXT_texture_compression_s3tc".
  Using extension "GL_EXT_texture_filter_anisotropic".
  Using extension "GL_ARB_texture_env_combine".
  Using extension "GL_EXT_compiled_vertex_array".
  Using extension "GL_EXT_draw_range_elements".
  Using extension "GL_ARB_texture_mirrored_repeat".
  Using extension "GL_ARB_texture_non_power_of_two".
  Using extension "GL_ARB_vertex_buffer_object".
  Using extension "GL_ARB_pixel_buffer_object".
  Using extension "GL_SGIS_generate_mipmap".
  Using extension "GL_EXT_framebuffer_object".
  Using extension "GL_ARB_texture_rectangle".
  Using extension "GL_EXT_bgra".
  Using extension "GL_ARB_texture_cube_map".
  Using extension "GL_EXT_texture_lod_bias".
  Using extension "GL_ARB_point_sprite".
  Using extension "GL_ARB_shading_language_100".
  Using extension "GL_ARB_shader_objects".
  Using extension "GL_ARB_vertex_shader".
  Using extension "GL_ARB_fragment_shader".
  Using extension "GL_NV_vertex_program3".
  Found special extension function "wglSwapIntervalEXT".

  Initializing Shaders Manager...
  Loading and compiling main shaders...
    Compiling main shader ->  main-v.sdr (null-v.sdr) / main-f.sdr (null-f.sdr) ...
    Compiling main shader ->  main-v.sdr (b-v.sdr) / main-f.sdr (b-f.sdr) ...
    Compiling main shader ->  main-v.sdr (b-v.sdr) / main-f.sdr (bg-f.sdr) ...
    Compiling main shader ->  main-v.sdr (l-v.sdr) / main-f.sdr (lb-f.sdr) ...
    Compiling main shader ->  main-v.sdr (l-v.sdr) / main-f.sdr (lbg-f.sdr) ...
    Compiling main shader ->  main-v.sdr (l-v.sdr) / main-f.sdr (lbgs-f.sdr) ...
    Compiling main shader ->  main-v.sdr (l-v.sdr) / main-f.sdr (lbs-f.sdr) ...
    Compiling main shader ->  main-v.sdr (le-v.sdr) / main-f.sdr (lbgse-f.sdr) ...
    Compiling main shader ->  main-v.sdr (le-v.sdr) / main-f.sdr (lbse-f.sdr) ...
    Compiling main shader ->  main-v.sdr (ln-v.sdr) / main-f.sdr (lbgn-f.sdr) ...
    Compiling main shader ->  main-v.sdr (ln-v.sdr) / main-f.sdr (lbgsn-f.sdr) ...
    Compiling main shader ->  main-v.sdr (ln-v.sdr) / main-f.sdr (lbn-f.sdr) ...
    Compiling main shader ->  main-v.sdr (ln-v.sdr) / main-f.sdr (lbsn-f.sdr) ...
    Compiling main shader ->  main-v.sdr (lne-v.sdr) / main-f.sdr (lbgsne-f.sdr) ...
    Compiling main shader ->  main-v.sdr (lne-v.sdr) / main-f.sdr (lbsne-f.sdr) ...
    Compiling main shader ->  main-v.sdr (lf-v.sdr) / main-f.sdr (lfb-f.sdr) ...
    Compiling main shader ->  main-v.sdr (lf-v.sdr) / main-f.sdr (lfbg-f.sdr) ...
    Compiling main shader ->  main-v.sdr (lf-v.sdr) / main-f.sdr (lfbgs-f.sdr) ...
    Compiling main shader ->  main-v.sdr (lf-v.sdr) / main-f.sdr (lfbs-f.sdr) ...
    Compiling main shader ->  main-v.sdr (lfe-v.sdr) / main-f.sdr (lfbgse-f.sdr) ...
    Compiling main shader ->  main-v.sdr (lfe-v.sdr) / main-f.sdr (lfbse-f.sdr) ...
    Compiling main shader ->  main-v.sdr (lfn-v.sdr) / main-f.sdr (lfbgn-f.sdr) ...
    Compiling main shader ->  main-v.sdr (lfn-v.sdr) / main-f.sdr (lfbgsn-f.sdr) ...
    Compiling main shader ->  main-v.sdr (lfn-v.sdr) / main-f.sdr (lfbn-f.sdr) ...
    Compiling main shader ->  main-v.sdr (lfn-v.sdr) / main-f.sdr (lfbsn-f.sdr) ...
    Compiling main shader ->  main-v.sdr (lfne-v.sdr) / main-f.sdr (lfbgsne-f.sdr) ...
    Compiling main shader ->  main-v.sdr (lfne-v.sdr) / main-f.sdr (lfbsne-f.sdr) ...
    Compiling main shader ->  main-v.sdr (l-v.sdr) / main-f.sdr (null-f.sdr) ...
    Compiling main shader ->  main-v.sdr (l-v.sdr) / main-f.sdr (lg-f.sdr) ...
    Compiling main shader ->  main-v.sdr (l-v.sdr) / main-f.sdr (lgs-f.sdr) ...
    Compiling main shader ->  main-v.sdr (l-v.sdr) / main-f.sdr (ls-f.sdr) ...
    Compiling main shader ->  main-v.sdr (le-v.sdr) / main-f.sdr (lgse-f.sdr) ...
    Compiling main shader ->  main-v.sdr (le-v.sdr) / main-f.sdr (lse-f.sdr) ...
    Compiling main shader ->  main-v.sdr (ln-v.sdr) / main-f.sdr (lgn-f.sdr) ...
    Compiling main shader ->  main-v.sdr (ln-v.sdr) / main-f.sdr (lgsn-f.sdr) ...
    Compiling main shader ->  main-v.sdr (ln-v.sdr) / main-f.sdr (ln-f.sdr) ...
    Compiling main shader ->  main-v.sdr (ln-v.sdr) / main-f.sdr (lsn-f.sdr) ...
    Compiling main shader ->  main-v.sdr (lne-v.sdr) / main-f.sdr (lgsne-f.sdr) ...
    Compiling main shader ->  main-v.sdr (lne-v.sdr) / main-f.sdr (lsne-f.sdr) ...
  Shaders Manager initialized.

  Max texture units: 4 (32)
  Max elements vertices: 1048576
  Max elements indices: 1048576
  Max texture size: 8192x8192
  Can use compressed textures: YES
  Texture compression available: YES
  Using trilinear texture filter.
  Using GLSL for model rendering.
  Shader Version: 1.30 NVIDIA via Cg compiler
... OpenGL init is complete!
Size of bitmap info = 760 KB
Size of bitmap extra info = 52 bytes
ANI cursorweb with size 24x24 (25.0% wasted)
GRAPHICS: Initializing default colors...
SCRIPTING: Beginning initialization sequence...
SCRIPTING: Beginning Lua initialization...
LUA: Opening LUA state...
LUA: Initializing base Lua libraries...
LUA: Beginning ADE initialization
ADE: Initializing enumeration constants...
ADE: Assigning Lua session...
SCRIPTING: Outputting scripting metadata...
SCRIPTING: Beginning main hook parse sequence....
Wokka!  Error opening file (scripting.tbl)!
TABLES: Unable to parse 'scripting.tbl'!  Error code = 5.
TBM  =>  Starting parse of 'mv_flak-sct.tbm' ...
TBM  =>  Starting parse of 'mv_exp-sct.tbm' ...
TBM  =>  Starting parse of 'mv_dbrs-sct.tbm' ...
SCRIPTING: Inititialization complete.
SCRIPTING: Splash screen overrides checked
SCRIPTING: Splash hook has been run
SCRIPTING: Splash screen conditional hook has been run
Using high memory settings...
render_target: creating new 1680x1050 FBO
render_buffer: creating new 1680x1050 render buffer
texture_pool: creating new 1680x1050 texture
Wokka!  Error opening file (interface.tbl)!
WMCGUI: Unable to parse 'interface.tbl'!  Error code = 5.
TBM  =>  Starting parse of 'mv_effects-sdf.tbm' ...
ANI 2_radar1 with size 209x170 (33.6% wasted)
Windows reported 16 joysticks, we found 0
Current soundtrack set to -1 in event_music_reset_choices
TBM  =>  Starting parse of 'mv_music-mus.tbm' ...
TBM  =>  Starting parse of 'mv_effects-mfl.tbm' ...
Wokka!  Error opening file (armor.tbl)!
TABLES: Unable to parse 'armor.tbl'!  Error code = 5.
TBM  =>  Starting parse of 'mv_effects-amr.tbm' ...
TBM  =>  Starting parse of 'mv_effects-wxp.tbm' ...
BMPMAN: Found EFF (exp20.eff) with 75 frames at 20 fps.
BMPMAN: Found EFF (ExpMissileHit1.eff) with 92 frames at 20 fps.
BMPMAN: Found EFF (exp04.eff) with 49 frames at 22 fps.
BMPMAN: Found EFF (exp05.eff) with 93 frames at 20 fps.
BMPMAN: Found EFF (exp06.eff) with 92 frames at 22 fps.
BMPMAN: Found EFF (capflash.eff) with 40 frames at 10 fps.
BMPMAN: Found EFF (Maxim_Impact.eff) with 23 frames at 30 fps.
ANI Lamprey_Impact with size 80x80 (37.5% wasted)
TBM  =>  Starting parse of 'mv_core-wep.tbm' ...
TBM  =>  Starting parse of 'mv_effects-wep.tbm' ...
TBM  =>  Starting parse of 'mv_assets-wep.tbm' ...
TBM  =>  Starting parse of 'mv_effects-obt.tbm' ...
TBM  =>  Starting parse of 'Emperor-shp.tbm' ...
TBM  =>  Starting parse of 'mv_core-shp.tbm' ...
TBM  =>  Starting parse of 'mv_effects-shp.tbm' ...
TBM  =>  Starting parse of 'mv_assets-shp.tbm' ...
TBM  =>  Starting parse of 'LOTK-shp.tbm' ...
TBM  =>  Starting parse of 'mv_core-hdg.tbm' ...
TBM  =>  Starting parse of 'mv_effects-str.tbm' ...
loading animated cursor "cursor"
ANI cursor with size 24x24 (25.0% wasted)
MediaVPs: Explosions script loaded!
MediaVPs: Flaming debris script loaded!
Ships.tbl is : VALID
Weapons.tbl is : VALID
cfile_init() took 399
Got event GS_EVENT_GAME_INIT (49) in state NOT A VALID STATE (0)
ANI cursor.ani with size 24x24 (25.0% wasted)
Got event GS_EVENT_MAIN_MENU (0) in state GS_STATE_INITIAL_PLAYER_SELECT (37)
Someone passed an extension to bm_load for file 'hammer1.pcx'
ANI 2_mainwalk.ani with size 209x477 (6.8% wasted)
ANI 2_mainflyby.ani with size 509x189 (26.2% wasted)
ANI 2_maincrane.ani with size 192x116 (9.4% wasted)
ANI 2_mainexit.ani with size 319x174 (32.0% wasted)
ANI 2_mainbarracks.ani with size 273x158 (38.3% wasted)
ANI 2_mainreadyroom.ani with size 231x145 (43.4% wasted)
ANI 2_maintechroom.ani with size 69x119 (7.0% wasted)
ANI 2_mainoptions.ani with size 337x206 (19.5% wasted)
ANI 2_maincampaign.ani with size 308x190 (25.8% wasted)
Got event GS_EVENT_LAB (64) in state GS_STATE_MAIN_MENU (1)
Loading model 'Drashok.pof'
IBX: Starting a new IBX for 'Drashok.pof'.
IBX: Starting a new TSB for 'Drashok.pof'.

Note that the problem appears to be somewhere along the generation of the .ibx and .tsb files. The files are created, but remain at 0 bytes.

I have run the model through non-manifold checks in blender and cleaned the geometry to the best of my ability. It is possible, but unlikely that I have missed something in the mesh.

Note that the model also crashed PCS2, until I upgraded to the latest Feb19/2011 Alpha release. It used to be loaded to PCS2 as .dae just fine, but PCS2 would crash when I asked it to open the newly-saved .pof file. Since I upgraded to the latest version, PCS2 seems to not have any problems.

Including the .pof .

Please advise. Many thanks in advance.




[attachment deleted by ninja]
'Violence is the last refuge of the incompetent'  -Salvor Hardin, "Foundation"

So don't take a hammer to your computer. ;-)

 

Offline The E

  • He's Ebeneezer Goode
  • 213
  • Nothing personal, just tech support.
    • Steam
    • Twitter
First, when giving us a model to debug, please include all the data the model needs (textures, tbl entry, the works). This will make it easier for us.

Second, please try a nightly build. The cache generation mechanism was rewritten entirely.
If I'm just aching this can't go on
I came from chasing dreams to feel alone
There must be changes, miss to feel strong
I really need lifе to touch me
--Evergrey, Where August Mourns

 

Offline Enioch

  • 210
  • Alternative History Word Writer
Hey E. Thanks for the quick response. Have a cookie on me. :yes:

First things first: I tried it with the latest nightly and it loads and works perfectly. Better than I hoped, actually.

I would, nevertheless, like you people  to have a look at the model, and see whether something is wrong with it or not. In fact, what I am asking is "Why is it working NOW, but not BEFORE?" I'm afraid that something might be wrong, and it might come to bite me in the a$$ later on... :p

Table entry I use for all testing:

Code: [Select]
$Name:                          TBB Ultor
$Short name: TUltor
$Species:                       Terran
+Tech Description:
XSTR("AA", 3046)
$end_multi_text
$POF file:                      Drashok.pof
$Detail distance: (0, 100, 300, 4500)
$ND: 251 248 167
$ND: 255 253 196
$ND: 239 234 134
$ND: 216 212 122
$Show damage: YES
$Density:                       1
$Damp:                          0.2
$Rotdamp:                       1.0
$Max Velocity: 0.0, 0.0, 20.0
$Rotation time: 40.0, 40.0, 40.0
$Rear Velocity: 0.0
$Forward accel: 10.0
$Forward decel: 5.0
$Slide accel: 0.0
$Slide decel: 0.0
$Expl inner rad: 125.0
$Expl outer rad: 650.0
$Expl damage: 200.0
$Expl blast: 3500.0
$Expl Propagates: YES ;; If set to Yes, then when the ship dies, the explosion propagates through it.
$Shockwave Speed: 500.0 ;; speed shockwave expands at, 0 means no shockwave
$Default PBanks: ()
$Default SBanks: ()
$SBank Capacity: ()
$Shields:                       0
$Power Output: 90.0
$Max Oclk Speed: 25.0
$Max Weapon Eng: 100.0
$Hitpoints:                     10000
$Flags:                         ( "cruiser" "in tech database")
$AI Class:                      Captain
$Afterburner: NO
$Countermeasures: 0
$Scan time:                     2000
$EngineSnd: 191                   ;; Engine sound of ship
$Closeup_pos: 0.0, 0.0, -2500
$Closeup_zoom: .55
$Score: 100

And the texture is a grey 4096^2 dds with a 2048^2 normal map generated by the NVIDIA plugin for PS. I used a "noise" filter on the B&W height map and converted it to normal map to get a bumpy effect.

I'm not posting the textures because I'm pretty sure they work: I've used them with other models and there has been no problem. Plus they're pretty big. If you insist, I could put them up, I guess.

Thanks a lot for the help!  :D

Edit: I found some faces with flipped normals in the underside of the ship. Could this be the cause?

'Violence is the last refuge of the incompetent'  -Salvor Hardin, "Foundation"

So don't take a hammer to your computer. ;-)

 

Offline The E

  • He's Ebeneezer Goode
  • 213
  • Nothing personal, just tech support.
    • Steam
    • Twitter
There aren't many things wrong with it. There is a big gaping hole in the geometry that should be fixed though. Also, it's obviously unfinished, as Turrets etc are missing.
If I'm just aching this can't go on
I came from chasing dreams to feel alone
There must be changes, miss to feel strong
I really need lifе to touch me
--Evergrey, Where August Mourns

 

Offline Enioch

  • 210
  • Alternative History Word Writer
There aren't many things wrong with it. There is a big gaping hole in the geometry that should be fixed though. Also, it's obviously unfinished, as Turrets etc are missing.

Yeah. The faces are there, methinks, just flipped. I'll re-convert, obviously.
'Violence is the last refuge of the incompetent'  -Salvor Hardin, "Foundation"

So don't take a hammer to your computer. ;-)

 

Offline Herra Tohtori

  • The Academic
  • 211
  • Bad command or file name
Aside from the model issue itself: If the diffuse texture is uniform grey, why bother having it in 4096^2 resolution when 16x16 sized DDS file of same colour would do?

 :nervous:

Now, if you were to use uniform colour shinemap with alpha compoment, then the resolution would actually matter because it would determine the resolution of environmental reflections.
There are three things that last forever: Abort, Retry, Fail - and the greatest of these is Fail.

 

Offline Enioch

  • 210
  • Alternative History Word Writer
Aside from the model issue itself: If the diffuse texture is uniform grey, why bother having it in 4096^2 resolution when 16x16 sized DDS file of same colour would do?

 :nervous:

Mainly because it helps gauge the performance cost the ship will have. Load time, FPS budget and so on. The FINAL texture won't be uniform grey, obviously.

Quote
Now, if you were to use uniform colour shinemap with alpha compoment, then the resolution would actually matter because it would determine the resolution of environmental reflections.

Now THAT I didn't know. Huh.
'Violence is the last refuge of the incompetent'  -Salvor Hardin, "Foundation"

So don't take a hammer to your computer. ;-)

  

Offline Herra Tohtori

  • The Academic
  • 211
  • Bad command or file name
Aside from the model issue itself: If the diffuse texture is uniform grey, why bother having it in 4096^2 resolution when 16x16 sized DDS file of same colour would do?

 :nervous:

Mainly because it helps gauge the performance cost the ship will have. Load time, FPS budget and so on. The FINAL texture won't be uniform grey, obviously.


Fair enough, but then I would suggest also using a shinemap, and using all textures at the same resolution... including normal maps and possible glow maps.

Quote
Quote
Now, if you were to use uniform colour shinemap with alpha compoment, then the resolution would actually matter because it would determine the resolution of environmental reflections.

Now THAT I didn't know. Huh.


Yeah, I figured that out as I was testing some stuff, trying to make surfaces with different reflectivity and such, and I found that the detail level of the environmental reflections directly correlates to the detail level of the resolution of the shine map.

There are other reasons to use same resolution for diffuse and shine, biggest being that using low resolution shine maps would wash out the details in the diffuse, and same sort of applies to normal maps.
There are three things that last forever: Abort, Retry, Fail - and the greatest of these is Fail.