Jump to content

Collisions, heightmaps and other chat


madis

Recommended Posts

Hi.

I find the custom model support a very awesome feature of MTA (besides everything else, I'm still amazed of the amount of stuff people can do with scripting, mapping etc)

However, I've the tendency to not have working collisions for most of my models, I'm using 3ds Max 7 with Kams COL IO (version 2b). It just falls through.

For example I used this tutorial today to make a landscape from heightmap

http://www.gtaforums.com/index.php?showtopic=191636

It turned out to be incredibly easy, though I textured it in Google Sketchup as that seems to be easier (with a very lame texture, though).

Only small part of the collision works though (the code to replace the collision is definitely correct).

It once made a difference for a object if I didn't put the center of the object to the xyz nullpoint, but only on one side, but I doubt this was the reason.

Maybe some of you have more experience with collisions and have had same problems (and solutions)?

Anyway, I would be happy to see what kind of maps people will build using heightmaps and for MTA, really great stuff could be made (I should better check the showroom forum).

Link to comment

The immediate problem would be collision groups are not supported by MTA - specifically, if you have a .col file containing multiple collision sections, the .col file will fail to load.

Simply split each group into it's own .col file (this is a simple task with CollEditor) and edit your script/meta to match and it should work.

MTA can load all 3 formats of the .col format, it just needs each group in it's own file, so you shouldn't have any more issues with it.

EDIT: Oops, should have looked at your picture first! :P Your colshape is already correct. I'll leave this info here for posterity.

Have you remembered to assign the colshape to the correct model ID? are you replacing the model dff last?

txd = engineLoadTXD("txdfile.txd")
engineImportTXD(txd, 5000)
col = engineLoadCOL("colfile.col")
engineReplaceCOL(col, 5000)
dff = engineLoadDFF("dfffile.dff", 0)
engineReplaceModel(dff, 5000)

Link to comment

Yeah (though I didn't know the order makes difference).

outputChatBox("> loading objects")

txd_floors = engineLoadTXD("models/new_land.txd")

engineImportTXD(txd_floors, 3781)

col_floors = engineLoadCOL("models/new_land.col")

engineReplaceCOL(col_floors, 3781)

dff_floors = engineLoadDFF("models/new_land.dff", 0)

engineReplaceModel(dff_floors, 3781)

engineSetModelLODDistance(3781, 1000)

Maybe SA has some problems with Collision type 1 instead of 3.

Thank you for answering, subenji99.

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...