Skip to content

Create a unified workflow for adding graphical assets to OpenApoc from 3D models #559

@FilmBoy84

Description

@FilmBoy84

As per recent conversation on DIscord, IRC and PR #558 im creating this issue to bring all discussion into one place

Further details to come, please refer to issue #558 for the start of this discussion

the only way i see forwards is to develop the method originally used for Apoc assets and bring it into the modern era. Namely every graphical asset has a 3D model produced that we then develop a tool to break it down into all the required sprites at the correct angles and with the correct transparencies

There is an issue if we want more accurate "hit boxes" as until we update the LOFTemp masks the way the game uses what can only be described as an early attempt at making "voxels" the best resolution is 32x32 pixels per object with a height of up to 64 pixels in SOME areas of the game. Other areas have as little as 32x32x16 resolution when working out projectiles within tiles.

So even with the high res sprites that OpenApoc can already support, the way the game would treat these in play would be rather inaccurate until better resolution LOFTemp Masks are specified also and the host of LoS and LoF issues that may create will likely require an update to those mechanisms also.

That said, by automating the process from 3D model to set of sprites, we could hope to fix a great deal of the workload

In the two weeks before the Original Game Release, between Beta2 and the Final 1.0 version, the Anthropod was remade as were several other core alien and other assets... This was only possible with the 3D to Sprite workflow; doing all those sprites individually would have taken too long.

With regards to LOFTemps, i'd have to check how OpenApoc does things, but if not already i would love to see full support for resolutions as high as 128x128x256 PER TILE implemented into the LoF array. Even if we don't make the masks, we can leave that to modders for their own objects to create as long as the game supports them

To be frank, improving the ballistics resolution would hopefully resolve several annoyances of the original apoc when it comes to collision and damage calculations as well as their representation on screen

My concern would be the optimisation of such complex calculations across a full 256x256 tile map
At my "ideal" proposed tile res that would be a voxel resolution of 32,768 in either X/Y direction and up to 9x256 or 2,304 in height

That's a total of 32768x32768x2304 or 2,473,901,162,496 individual blocks on a full size map where a projectile can exist

With the projectile spam that exists in Apoc that could really bog down the game

It would honestly be easier to make any 3D to Sprite tool also analyse the shape and form of a 3D render and make it's own LOFTemps according to what it recognises as "solid" or "transparent"

That would truly be a useful thing for upgrading Apoc Graphical assets

Discussions 1.zip

Metadata

Metadata

Assignees

No one assigned

    Labels

    EnhancementThis is a request for something that makes OpenApoc work better or more intuitivelyFeature RequestThis is a request for a new thing to be added to OpenApocHelp WantedHelp is required in making this fix/feature complete. If you can code or test, please take a look!ModdingSomething relating to modding for OpenApocNot Yet ImplementedThis fix or feature is not yet implemented or merged with trunkWIPWork In Progress. This is not a complete feature/fix. Check it out, maybe you have something to add?

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions