This matches us up more closely with what PlasmaMAX does and allows us
to really fix x-raying effects by properly forcing objects into the
correct render pass.
This allows for objects to print decals at runtime, like the baskets in
Eder Gira. Also, the same functionality can be hijacked for coincident
objects to exist as decals. This is basically a shortcut for adding hack
Z-flags to the base layer of a decal material.
This allows blend textures to be used for mesh transparency without
having to fiddle around too much. It was also a stab at fixing some
regressions in the MOUL engine around decals, but that bit failed,
sadly.
Explanation: The JPEG format in plMipmap does not have to be an actual
JPEG image, it can also hold an RLE bitmap. libHSPlasma currently does
not attempt to compress any images held as uncompressed data and marked
JPEG, rather, it exports them as RLE maps. Maybe a bit odd, but it
works. I guess.
The lightmap modifier is now a more general "Bake Lighting" modifier
that can control how vertex colors are baked as well. The default vertex
color baking behavior is unaffected. It is now identical to adding a
Bake Lighting modifier, changing it to bake vertex colors without
specifying a pass.
On the surface, this allows lightmaps to be exported as PNGs. However,
it also includes a light refactor of image exporting to facilitate
requesting export formats and the targeting of plImageLibMod. This
should better enable #96.
The export logger and export reporter have been merged together to form
an eventually much more powerful export analysis feature. For now, the
benefit is that general log messages don't have to be so fiddly with
print statements and string formatting. You're welcome.
Added the Render > Lighting modifier that lets one specify whether or not
we should forcibly use RT lights. This allows us to change the light
baking rules to allow the baking of nonanimated Plasma lights when this
setting is disabled. The modifier also has text explaining what the
lighting results should look like.
The ViewFaceMod is presented as a Swivel component, with artist-ready
presets for the typical Sprite and Billboard, as well as an advanced
'Custom' option which exposes additional features.
Still lots of considerations:
- Need to make faux lightgroups to avoid baking Plasma RT lights
- Still need to bake vertex colors
- Still need to export Plasma RT lights (D'oh!)
But, this is definitely a step in the right direction!