Ticket #243 (closed enhancement: fixed)

Opened 4 years ago

Last modified 20 months ago

"Non boned" Collada meshes should support multiple prop/attachment points

Reported by: Mythos_Ruler Owned by: historic_bruno
Priority: Should Have Milestone: Alpha 8
Component: Core engine Keywords: simple
Cc:

Description

It is imperative to the game as designed that the game engine supports "static" "non-boned" Collada files, such as those created for ships and buildings, that include multiple prop-points. This is mainly for unit garrisoning purposes (units garrisoned on walls, battlements, towers, and on the decks of ships).

I am slating this for Beta, because for Alpha we could conceivably get by with just simple garrisoning capability without the propping. But for any public beta this feature should be implemented, as it is a major stated feature of the project.

Attachments

static-prop.patch (1.6 KB) - added by Philip 3 years ago.

Change History

comment:1 Changed 4 years ago by Philip

Copying description from #191:

Let prop points be specified on non-skeletal models. The engine supports that already, when you set the bone index to 0xFF. The COLLADA converter should look for objects named prop-* attached to the geometry. Might as well support non-boned prop points on skeletal models, too.

comment:2 Changed 3 years ago by Philip

  • Keywords simple added

See source/collada/PMDConvert.cpp (the FCDEntity::GEOMETRY case) for the relevant code. Currently it just adds a prop point called "root" at (0,0,0), which is sufficient for basic uses, but it should still be extended to handle user-defined prop points.

comment:3 Changed 3 years ago by Lys

Where could I find an example of static non-boned collada file with user-defined prop points ? Yet it's not possible to copy the "controller case" code since it looks for a skeleton.

comment:4 Changed 3 years ago by Philip

Hmm, I think I actually did most of this yesterday (while wasting time importing models from Spring) - I'll attach my current patch. But I haven't tested it with any real models and I don't know if it works exactly like it should.

I don't remember any existing example files, but it seems fairly easy to create one in Blender: create two objects, then select one and use the Object panel -> Relations -> Parent and set it to other object then export. It would be good to have an example of a real game model to test this on.

Changed 3 years ago by Philip

comment:5 Changed 3 years ago by philip

(In [8005]) Add barely-tested support for prop points on static meshes (see #243 - needs more testing). Automatically triangulate meshes.

comment:6 Changed 3 years ago by wacko

  • Milestone changed from Beta to Backlog

comment:7 Changed 20 months ago by historic_bruno

  • Owner set to historic_bruno
  • Status changed from new to assigned

comment:8 Changed 20 months ago by historic_bruno

  • Milestone changed from Backlog to Alpha 8

comment:9 Changed 20 months ago by ben

  • Status changed from assigned to closed
  • Resolution set to fixed

(In [10484]) Fixes PMD converter's handling of static prop points. Coordinate conversion was not performed correctly according to the model's up-axis orientation. Fixes #886, #243.

Note: See TracTickets for help on using tickets.