openrw icon indicating copy to clipboard operation
openrw copied to clipboard

Some texturing regressions

Open haphzd opened this issue 9 years ago • 5 comments

  • Area indicators and arrows are untextured since #241

  • Interior of Enforcer has sides transparent, some textures missing since #241, fully transparent since #254 rwgame 2016-12-11 00-08-38-54 rwgame 2016-12-11 00-11-18-13 rwgame 2016-12-11 00-12-49-78

  • Splash screens are missing since #254, because they are expected to be in 'generic' texture group, but loaded into their own slots each.

haphzd avatar Dec 10 '16 21:12 haphzd

this may be related

decal_glitch

snshn avatar Feb 12 '17 00:02 snshn

Happening @ GTA3, not a openrw bug (but indeed a R* error) image

PerikiyoXD avatar Feb 12 '17 22:02 PerikiyoXD

(AI - Area indicator) Meanwhile searching regression of missing textures I found this:

Earlier(Before #241) special objects where handled manually to draw. They have their own "hardcoded" draw parameters, after that pull renderer (for each geometry's texture) looks only into its materials: https://github.com/rwengine/openrw/blob/master/rwengine/src/render/ObjectRenderer.cpp#L57

Before that pull arrows and AI had more extra data: https://github.com/rwengine/openrw/pull/241/files#diff-6715ad1604d0087bd5c0eb8eb2b2f222L372

Solving should be quiet easy pass texture to each geometry or overload methods with custom draw parameters. What do you think?

ghost avatar Dec 26 '17 00:12 ghost

I have found that the missing textures of interior of Enforcer is caused by how the game render transparent objects.

I implemented simple debug camera to move around and its showed textures was loaded correctly, except transparent objects masked out all opaque objects.

screenshot

The game has an algorithm to sort transparent object by using position of object as key to sort, except there're the same position as model origin.

lion328 avatar Jan 09 '18 13:01 lion328

Update:

  • area partially fixed by https://github.com/rwengine/openrw/commit/b019d187d613157775433a386fc677977343e969
  • transparent objects order is fixed by https://github.com/rwengine/openrw/commit/63de965e3f0841f780233ae8a88967f3c17b6ed9
  • splash is fixed by https://github.com/rwengine/openrw/commit/1ed182c3f241991859560cb6e6dfa5f940f66ef8

ghost avatar Jun 13 '18 06:06 ghost