ModEnc is currently in Maintenance Mode: Changes could occur at any given moment, without advance warning.

Difference between revisions of "AlphaImage"

From ModEnc
Jump to: navigation, search
(Examples)
(Correcting image markup, text... someone might want to retest since old tests are, well, old.)
Line 1: Line 1:
{{flag|name=AlphaImage|files=rules(md).ini|values=Strings, see below|default=none/null|types=InfantryTypes, VehicleTypes, AircraftTypes, BuildingTypes||ts=yes
+
{{flag
 +
|values={{Values|strings|shp filenames}}
 +
|default=none
 +
|types={{Categ|Objects}}
 +
|ts=yes
 
|fs=yes
 
|fs=yes
 
|ets=yes
 
|ets=yes
Line 10: Line 14:
 
[[Image:alphatst.jpg|thumb|250px|Simple lightpost test, using the original alphatst.shp]]
 
[[Image:alphatst.jpg|thumb|250px|Simple lightpost test, using the original alphatst.shp]]
 
Alpha images are a very nice lighting feature used in [[Tiberian Sun]], but left unused in [[Red Alert 2]] and [[Yuri's Revenge]]. Alpha images are grayscale SHPs that are attached to, for example, a lightpost. If one is attached to an object, the object automatically starts emitting light, with the brightness of the light at a given pixel determined by the index number of the corresponding pixel of the alpha image. In other words: The light is modeled after the image and its brightness is defined by the brightness of the pixels. This allows a total customization of the light's shape.
 
Alpha images are a very nice lighting feature used in [[Tiberian Sun]], but left unused in [[Red Alert 2]] and [[Yuri's Revenge]]. Alpha images are grayscale SHPs that are attached to, for example, a lightpost. If one is attached to an object, the object automatically starts emitting light, with the brightness of the light at a given pixel determined by the index number of the corresponding pixel of the alpha image. In other words: The light is modeled after the image and its brightness is defined by the brightness of the pixels. This allows a total customization of the light's shape.
 
Since alpha images can be defined per object (as opposed to globally) and there is no fixed file name, alpha images can be used to create custom lighting for every object you want; remember, however, that light does not follow around moving objects. So while it is possible to create shiny headlights for Grizzly Tanks, the light itself will be left behind where the Grizzly was spawned - while the Grizzly moves around the map just as always. Animated alpha images are not possible, either.
 
  
 
{{clr}}
 
{{clr}}
 +
{{Bugs}}
 
{| align="center" cellspacing="2" cellpadding="4" style="border-collapse: collapse;background:#f07878;" width="80%;"
 
{| align="center" cellspacing="2" cellpadding="4" style="border-collapse: collapse;background:#f07878;" width="80%;"
 +
|+ '''Comparison with standard lights'''
 
!bgcolor="#30f030" style="border-bottom: 1px solid #000000;border-right: 1px solid #000000;" width="50%;"|Benefits
 
!bgcolor="#30f030" style="border-bottom: 1px solid #000000;border-right: 1px solid #000000;" width="50%;"|Benefits
 
!bgcolor="#f00808" style="border-bottom: 1px solid #000000;border-left: 1px solid #000000;"|Drawbacks
 
!bgcolor="#f00808" style="border-bottom: 1px solid #000000;border-left: 1px solid #000000;"|Drawbacks
Line 22: Line 26:
 
|-
 
|-
 
|style="background:#66cc66;"|Looks much better than the standard "tiled" light.
 
|style="background:#66cc66;"|Looks much better than the standard "tiled" light.
|style="background:#cc6666;"|Can only increase brightness, not decrease it.{{sup|1}}
+
|style="background:#cc6666;"|Remains active even when the owner object is powered down, or when 'Turn off building' map action is applied.
 
|-
 
|-
 
|style="background:#78f078;"|Customizable shape/amount/area of effect.
 
|style="background:#78f078;"|Customizable shape/amount/area of effect.
|style="background:#f07878;"|Remains active even when the owner object is powered down, or when 'Turn off building' map action is applied.
+
|style="background:#f07878;"|Is known to cause building selection bracket discoloration, as well as discoloration of line trails.{{fnl|1}}
|-
 
|style="background:#66cc66;"|
 
|style="background:#cc6666;"|Is known to cause building selection bracket discoloration, as well as discoloration of line trails.{{sup|2}}
 
 
|}<br>
 
|}<br>
<div align="right"><small>{{sup|1}}Meaning you cannot build negative lightposts with alpha images. WRONG!! check out this thread! http://www.ppmsite.com/forum/viewtopic.php?t=19471 </small><br>
+
{{fn|1|These are, however, barely visible, and usually don't affect your perception of the game.}}
<small>{{sup|2}}These are, however, barely visible, and usually don't affect your perception of the game.</small></div>
+
 
 +
=== Limitations ===
 +
*<span id="static">This light does not follow around moving objects.</span> So while it is possible to create shiny headlights for Grizzly Tanks, the light itself will be left behind where the Grizzly was spawned - while the Grizzly moves around the map just as always.
 +
*Cannot be animated.
  
 
==Using Alpha Images==
 
==Using Alpha Images==
Using an alpha image is fairly easy: First of all, you need the actual image. Create it, turn it into an SHP, and store it your expand(md)##.mix. Once you have that, just put {{tt|AlphaImage&#61;yourAlphaImageFileName}} on your object, and everything should be fine.
+
Using an alpha image is fairly easy: First of all, you need the actual image. Create it, turn it into an SHP, and store it your expand(md)##.mix. Once you have that, just put {{TTL|AlphaImage|yourAlphaImageFileName}} (without the {{tt|.shp}} extension) on your object, and everything should be fine.
  
 
The original, unused, lightpost alpha image ''should'' be called alphatst.shp, and is included in the game. It seems, however, to be wrongly named (sibmlr.shp). A correctly named alphatst.shp can be found at the bottom of this page.
 
The original, unused, lightpost alpha image ''should'' be called alphatst.shp, and is included in the game. It seems, however, to be wrongly named (sibmlr.shp). A correctly named alphatst.shp can be found at the bottom of this page.
  
 +
'''Note''': AlphaImages should be saved using Compression 1, like the mouse cursors, to work properly.
  
 
'''A note on [[XCC Mod Creator]]'''<br>
 
'''A note on [[XCC Mod Creator]]'''<br>
 
Alpha images seem to get corrupted when read from an ecache*.mix. Since XMC automatically puts SHPs in that file, you have to abuse a category like Video to have your alpha image(s) placed directly in the game directory. As long as it doesn't end up in ecache*.mix, there's no problem using alpha images with XMC.
 
Alpha images seem to get corrupted when read from an ecache*.mix. Since XMC automatically puts SHPs in that file, you have to abuse a category like Video to have your alpha image(s) placed directly in the game directory. As long as it doesn't end up in ecache*.mix, there's no problem using alpha images with XMC.
 
  
 
==The Alpha Image Palette==
 
==The Alpha Image Palette==
 
Alpha images are normal SHPs, but they do not have an associated palette. Rather, their color index is mapped to brightness values, making index #127 neutral, i.e. no light change, and #128-#255 gradually becoming brighter, with #255 being the brightest. The best way to illustrate this is to use a greyscale palette from black (index 0) to white (index 255) (see [[#Related files|here]]) - the brighter the color is, the brighter the light will be.<br>
 
Alpha images are normal SHPs, but they do not have an associated palette. Rather, their color index is mapped to brightness values, making index #127 neutral, i.e. no light change, and #128-#255 gradually becoming brighter, with #255 being the brightest. The best way to illustrate this is to use a greyscale palette from black (index 0) to white (index 255) (see [[#Related files|here]]) - the brighter the color is, the brighter the light will be.<br>
Using any color below #127 will definately result in a distorted image, and probably in crashes. The reason for this is unknown.
+
Using any color below #127 apparently requires Compression 1 to work properly, otherwise crashes and/or distortions will happen.
 
 
  
 
==Examples==
 
==Examples==
 
[[Image:alpha_no_lag.jpg|thumb|150px|LOOK DADDY, NO LAG!]]
 
[[Image:alpha_no_lag.jpg|thumb|150px|LOOK DADDY, NO LAG!]]
The most prominent example of alpha image usage is DCoder's "LOOK DADDY, NO LAG!" screenshot. Other screenshots to note are Renegade's alpha test screenshots, illustrating not only how good correct alphas can look ingame, but also what happens if you use index 126 and below. Important to note here is that the full-palette screenshot was taken on Arena, after the same image had crashed the game to desktop (just by scrolling to where it was) on Bay of Pigs.{{clr}}
+
The most prominent example of alpha image usage is DCoder's "LOOK DADDY, NO LAG!" screenshot. Other screenshots to note are Renegade's alpha test screenshots, illustrating not only how good correct alphas can look ingame, but also what happens if you use index 126 and below (without using Compression 1). Important to note here is that the full-palette screenshot was taken on Arena, after the same image had crashed the game to desktop (just by scrolling to where it was) on Bay of Pigs.{{clr}}
 
{|
 
{|
 
|[[Image:Alphatst_ren1.gif|none|thumb|150px|Image used as SHP]]
 
|[[Image:Alphatst_ren1.gif|none|thumb|150px|Image used as SHP]]
 
|[[Image:Alphatest1_ren1.jpg|none|thumb|150px|Ingame screenshot]]
 
|[[Image:Alphatest1_ren1.jpg|none|thumb|150px|Ingame screenshot]]
 +
|
 
|-
 
|-
 
|[[Image:Alphatst_ren2.gif|none|thumb|150px|Image used as SHP]]
 
|[[Image:Alphatst_ren2.gif|none|thumb|150px|Image used as SHP]]
 
|[[Image:Alphatest2_ren1.jpg|none|thumb|150px|Ingame screenshot]]
 
|[[Image:Alphatest2_ren1.jpg|none|thumb|150px|Ingame screenshot]]
|
+
|[[Image:Alpha Proof.png|none|thumb|150px|Darkening works - have a look!]]
|[[Image:Alpha Proof.png]] Have a look!
 
 
|}
 
|}
 
:''This section is rather small and research-centered; if you have more, actual-mod-screenshots, please add them.''
 
:''This section is rather small and research-centered; if you have more, actual-mod-screenshots, please add them.''
Line 77: Line 80:
 
*[[LightBlueTint]]
 
*[[LightBlueTint]]
  
[[Category:INI_Flags]]
 
[[Category:rules(md).ini Flags]]
 
[[Category:InfantryTypes Flags]]
 
[[Category:VehicleTypes Flags]]
 
[[Category:AircraftTypes Flags]]
 
[[Category:BuildingTypes Flags]]
 
 
[[Category:General_Editing_Information]]
 
[[Category:General_Editing_Information]]
 
[[Category:General Tutorials]]
 
[[Category:General Tutorials]]

Revision as of 09:03, 7 July 2008

Tiberian Dawn The Covert Operations Red Alert Counterstrike Aftermath Tiberian Sun Firestorm HyperPatch Red Alert 2 Yuri's Revenge Ares Generals Zero Hour Tiberium Wars Kane's Wrath
Flag: AlphaImage
File(s): rules(md).ini
Values: Strings: Normal text. (Limited to: shp filenames)
Default: none
Applicable to: TechnoTypes: AircraftTypes, BuildingTypes, InfantryTypes and VehicleTypes
as well as ObjectTypes: Animations, Projectiles, TMPTiles, OverlayTypes, ParticleSystems, Particles, SmudgeTypes, TerrainTypes and VoxelAnimTypes


About Alpha Images

Simple lightpost test, using the original alphatst.shp

Alpha images are a very nice lighting feature used in Tiberian Sun, but left unused in Red Alert 2 and Yuri's Revenge. Alpha images are grayscale SHPs that are attached to, for example, a lightpost. If one is attached to an object, the object automatically starts emitting light, with the brightness of the light at a given pixel determined by the index number of the corresponding pixel of the alpha image. In other words: The light is modeled after the image and its brightness is defined by the brightness of the pixels. This allows a total customization of the light's shape.


Cc alert.png Bugs/Side-Effects/Unexpected Limitations

Comparison with standard lights
Benefits Drawbacks
No lag at all. "Tiled" lights cause lag when placing them down, overlapping, destroying, etc. Alpha images do not. Only affects brightness, not coloring.
Looks much better than the standard "tiled" light. Remains active even when the owner object is powered down, or when 'Turn off building' map action is applied.
Customizable shape/amount/area of effect. Is known to cause building selection bracket discoloration, as well as discoloration of line trails.1

1 These are, however, barely visible, and usually don't affect your perception of the game.

Limitations

  • This light does not follow around moving objects. So while it is possible to create shiny headlights for Grizzly Tanks, the light itself will be left behind where the Grizzly was spawned - while the Grizzly moves around the map just as always.
  • Cannot be animated.

Using Alpha Images

Using an alpha image is fairly easy: First of all, you need the actual image. Create it, turn it into an SHP, and store it your expand(md)##.mix. Once you have that, just put Template:TTL (without the .shp extension) on your object, and everything should be fine.

The original, unused, lightpost alpha image should be called alphatst.shp, and is included in the game. It seems, however, to be wrongly named (sibmlr.shp). A correctly named alphatst.shp can be found at the bottom of this page.

Note: AlphaImages should be saved using Compression 1, like the mouse cursors, to work properly.

A note on XCC Mod Creator
Alpha images seem to get corrupted when read from an ecache*.mix. Since XMC automatically puts SHPs in that file, you have to abuse a category like Video to have your alpha image(s) placed directly in the game directory. As long as it doesn't end up in ecache*.mix, there's no problem using alpha images with XMC.

The Alpha Image Palette

Alpha images are normal SHPs, but they do not have an associated palette. Rather, their color index is mapped to brightness values, making index #127 neutral, i.e. no light change, and #128-#255 gradually becoming brighter, with #255 being the brightest. The best way to illustrate this is to use a greyscale palette from black (index 0) to white (index 255) (see here) - the brighter the color is, the brighter the light will be.
Using any color below #127 apparently requires Compression 1 to work properly, otherwise crashes and/or distortions will happen.

Examples

LOOK DADDY, NO LAG!

The most prominent example of alpha image usage is DCoder's "LOOK DADDY, NO LAG!" screenshot. Other screenshots to note are Renegade's alpha test screenshots, illustrating not only how good correct alphas can look ingame, but also what happens if you use index 126 and below (without using Compression 1). Important to note here is that the full-palette screenshot was taken on Arena, after the same image had crashed the game to desktop (just by scrolling to where it was) on Bay of Pigs.

Image used as SHP
Ingame screenshot
Image used as SHP
Ingame screenshot
Darkening works - have a look!
This section is rather small and research-centered; if you have more, actual-mod-screenshots, please add them.

Related files


See also

Tiled light specific flags: