Code question about loading model files

DXX Rebirth Descent I/II for modern systems, maintains the look and feel of the original. Home Page

Moderator: zico

Post Reply
ShivanHunter
DBB Ace
DBB Ace
Posts: 23
Joined: Fri Sep 29, 2017 12:33 am

Code question about loading model files

Post by ShivanHunter » Mon Oct 09, 2017 7:37 am

I'm trying to find the code that reads polymodel files and builds the struct that represents them. I think I see it in read_model_file() in polyobj.cpp but it's confusing: the first thing this function does is read a "model_ID" int and assert that it must equal 0x4f505350 (or "OPSP"). So any block that describes a polymodel and gets read by read_model_file() must start with that value. So I looked in any ham, hog or pig file I could find in both Descent 1 and 2 with a hex editor, and didn't find "OPSP" anywhere (or "PSPO" since I know there are endian issues). Same for any of the other header IDs like "OHDR". As far as I can tell there is no model data anywhere in the Descent files that could be read by this particular function. So where are the files and/or which function is actually the one that reads model data?
Post Reply