This is a huge patch, including:
* add a LitRenderModifier abstract base class for RenderModifiers with
shadow+light
* add LitRenderModifiers for all types of models
* add STREAM_TEXGENTOUV1 to request generation of shadow map texcoords
for models
* create facilities to pass the texture matrix from the
RenderModifier (fragment stage) to the ModelRenderer (vertex stage)
* split ambient and diffuse terms of lighting until further down in the
pipeline; this is necessary since shadowed regions receive only
ambient light
* small improvement in how RenderPathVertexShader scales to a greater
number of vertex shaders
This was SVN commit r3690.
# Added Explore tag for infantry units.
# Temporarily assigned a standard set of formations to all units for
testing purposes.
# Fixed pick list tab style.
* (Also updated traits.formation in Wiki to keep in sync.)
* Added "loose" formation -- is there a better name for that? -- since
presumably we'll need an option to disband the current formation.
* Pushed selection tab behind the pane as an easy alternative to
shifting it about.
* Started working on lists with "mixed" items (from different sheets,
like Allegiances), but decided halfway to commit the formation stuff for
Andrew.
* (Incidentally, as suspected, there isn't enough room for all these
items. All four horizontal tabs are now maxed out on a typical CS. Might
have to append the kill and player tribute items from Allegiance onto
Stance.)
* (Also, if we need more than 11 items in the list, that will also need
to be adapted sooner rather than later. The representative formation
list is maxed out.)
This was SVN commit r3680.
* Got selection list (shows a list of portraits of the currently
selected units, with health bars) to work, including horizontally
expanding tab (using a helmet tab temporarily to get an idea of the icon
location).
* Todo: Dynamically adjust tab position when horizontal list (tabs need
more blending room); bleed portraits into additional rows above when the
number of entities in the selection exceeds the length of a list.
This was SVN commit r3674.
* Split command backs into outer ring and inner bubble (so nested
add_color can be used to illuminate only the interior).
* Used nested add_color (when you have a new toy, you have to play with
it) to make only the icon of a tab illuminate, which looks a lot better.
* Removed garrison sprite definition, since that cell sheet is not long
for this world.
This was SVN commit r3662.
Started on the surrounding buttons, but unsure if they work or not since
the engine is now crashing for me after archive. :( (Modifying a data
file while the game is running also causes the game to crash.)
Committing some changes anyway.
This was SVN commit r3650.
* Started work on health bars below selection/garrison row (hidden for
now, as it's buggy).
* Implemented Jason's civ emblem icons.
This was SVN commit r3613.
* Used the actual player names instead of sharing the profile name
(though the default names are a bit lengthy and extend off the UI; need
to figure out how to change those during game setup using each player's
profile name).
* Fixed health/stamina bug.
* Added an onMouseEnter() event for tabs at Matei's suggestion (so the
tabs will open simply by getting the cursor in proximity, instead of
needing two clicks).
This was SVN commit r3592.
* Made tabs remain closed by default.
* Fixed error where foundations were referencing the older cell sheets.
* Added text equivalents for health and stamina.
This was SVN commit r3588.
* Implemented Jason's new tabs for portraits. Shuffled buttons around a
bit.
* Started on Status Pane elements ... portrait, health and stamina bars,
garrison and supply counters, and descriptive text.
This was SVN commit r3585.
* Pick lists should now display, though no events yet. (Except I've
disabled them for now, as their condition checks will fail in most
cases.)
* Building lists should now provide a building cursor when clicked, so
Matei can work on his stuff (though it gets a bit glitchy after that ...
The UI expects a portrait name and ID from the foundation, for example,
and so fails to find them and therefore continue to refresh the command
lists.)
This was SVN commit r3576.
This is mostly to commit the new icon sheets so Jason can commit changes
directly if he prefers, and because I'm about to get back onto fixing
the command lists (not necessarily ones that actually do things when you
click them, but at least get them updating properly on the screen for
Matei), and want to commit a semi-usable update before I potentially
break it all again.
This was SVN commit r3571.
(Note that the Esc key is now used here, so you'll have to use another
key ... Ctrl+F4/Alt+F4/Ctrl+Break to quick-kill the game.)
Also set Matei's StartProduction to use entity's creation time.
This was SVN commit r3556.
* add CLightEnv::m_TerrainShadowTransparency
* shadows will let a fraction of diffuse light through
* added JS LightEnv objects, so the lighting environment can be changed
from the console
* new element TerrainShadowTransparency supported in the scenario .xml
format,
changed cantabrian_generated with an example
This was SVN commit r3513.
- explicitly split ambient and diffuse
- add renderer.shadowZBias to bias depths in the depth texture
and avoid flickering artifacts caused by Z fighting
- cantabrian_generated uses new light values so that shadows aren't
pitch
black
This was SVN commit r3508.
Added escort--follow can be done by simply changing the default and
secondary actions from NOTIFY_ESCORT to NOTIFY_FOLLOW in
entityEventTargetchanged.
Bugs are: ranged units can't assist in attacking from some reason, and
when you tell a leading unit to run, the escorting unit doesn't.
This was SVN commit r3503.