Changed, Texture Browser window: "All" textures group is now saved/reselected like the rest of the texture groups when closing/opening the window.

Changed, Classic modes: bigger Thing arrows are now rendered when thing sprite rendering is skipped.
Changed, Classic modes: when "Fixed Things Scale" option is enabled, thing size stays at 2x scale instead of 1x when extra bounding box is rendered.
Added Preferences -> Appearance -> "Things transparency (Things mode)" slider.
Renamed Preferences -> Appearance -> "Things transparency" to "Things transparency (other modes)".
Externalized thing bounding box and arrow texture, used to render things in Classic modes (Textures/ThingTexture2D.png).
Updated ZDoom_DECORATE.cfg (A_SetUserVarFloat, A_SetUserArrayFloat).
This commit is contained in:
MaxED 2016-04-01 10:49:19 +00:00 committed by spherallic
parent a6383ccb41
commit 803a37f4a4
38 changed files with 171 additions and 140 deletions

View file

@ -248,6 +248,7 @@ keywords
A_SetTics = "A_SetTics(int tics)";
A_SetTranslucent = "A_SetTranslucent(float alpha[, int mode = 0])";
A_SetUserVar = "A_SetUserVar(str name, int value)";
A_SetUserVarFloat = "A_SetUserVarFloat(str name, float value)";
A_TransferPointer = "A_TransferPointer(int source, int recipient, int sourcefield, int recipientfield[, int flags])\nflags: PTROP flags.";
A_UnHideThing = "A_UnHideThing";
A_UnsetFloat = "A_UnsetFloat";
@ -379,6 +380,7 @@ keywords
A_RocketInFlight = "A_RocketInFlight";
A_SetGravity = "A_SetGravity(float gravity)\nSets the amount of gravity for the calling actor.";
A_SetUserArray = "A_SetUserArray(str name, int index, int value)";
A_SetUserArrayFloat = "A_SetUserArrayFloat(str name, int index, float value)";
A_ShootGun = "A_ShootGun";
A_SPosAttackUseAtkSound = "A_SPosAttackUseAtkSound";
//Mathematical functions

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

View file

@ -712,7 +712,7 @@
</EmbeddedResource>
<EmbeddedResource Include="Resources\Actions.cfg" />
<EmbeddedResource Include="Resources\display2d.fx" />
<EmbeddedResource Include="Resources\Thing2D.png" />
<EmbeddedResource Include="Resources\ThingTexture2D.png" />
<EmbeddedResource Include="Resources\things2d.fx" />
<EmbeddedResource Include="Resources\world3d.fx" />
</ItemGroup>

View file

@ -50,6 +50,7 @@ namespace CodeImp.DoomBuilder.Config
private float visualmousesensy;
private int imagebrightness;
private float doublesidedalpha;
private float activethingsalpha; //mxd
private float inactivethingsalpha; //mxd
private float hiddenthingsalpha; //mxd
private byte doublesidedalphabyte;
@ -164,6 +165,7 @@ namespace CodeImp.DoomBuilder.Config
public float DoubleSidedAlpha { get { return doublesidedalpha; } internal set { doublesidedalpha = value; doublesidedalphabyte = (byte)(doublesidedalpha * 255f); } }
public byte DoubleSidedAlphaByte { get { return doublesidedalphabyte; } }
public int NiGHTSCirclePrecision { get { return nightscircleprecision; } internal set { nightscircleprecision = value; } }
public float ActiveThingsAlpha { get { return activethingsalpha; } internal set { activethingsalpha = value; } } //mxd
public float InactiveThingsAlpha { get { return inactivethingsalpha; } internal set { inactivethingsalpha = value; } } //mxd
public float HiddenThingsAlpha { get { return hiddenthingsalpha; } internal set { hiddenthingsalpha = value; } } //mxd
public float BackgroundAlpha { get { return backgroundalpha; } internal set { backgroundalpha = value; } }
@ -303,6 +305,7 @@ namespace CodeImp.DoomBuilder.Config
doublesidedalpha = cfg.ReadSetting("doublesidedalpha", 0.4f);
doublesidedalphabyte = (byte)(doublesidedalpha * 255f);
nightscircleprecision = cfg.ReadSetting("nightscircleprecision", 360);
activethingsalpha = cfg.ReadSetting("activethingsalpha", Presentation.THINGS_ALPHA); //mxd
inactivethingsalpha = cfg.ReadSetting("inactivethingsalpha", Presentation.THINGS_BACK_ALPHA); //mxd
hiddenthingsalpha = cfg.ReadSetting("hiddenthingsalpha", Presentation.THINGS_HIDDEN_ALPHA); //mxd
backgroundalpha = cfg.ReadSetting("backgroundalpha", 1.0f);
@ -421,6 +424,7 @@ namespace CodeImp.DoomBuilder.Config
cfg.WriteSetting("testmonsters", testmonsters);
cfg.WriteSetting("doublesidedalpha", doublesidedalpha);
cfg.WriteSetting("nightscircleprecision", nightscircleprecision);
cfg.WriteSetting("activethingsalpha", activethingsalpha); //mxd
cfg.WriteSetting("inactivethingsalpha", inactivethingsalpha); //mxd
cfg.WriteSetting("hiddenthingsalpha", hiddenthingsalpha); //mxd
cfg.WriteSetting("backgroundalpha", backgroundalpha);

View file

@ -103,6 +103,7 @@ namespace CodeImp.DoomBuilder.Data
private Dictionary<string, ImageData> internalsprites;
private ImageData whitetexture;
private ImageData blacktexture; //mxd
private ImageData thingtexture; //mxd
//mxd. Sky textures
private CubeTexture skybox; // GZDoom skybox
@ -153,6 +154,7 @@ namespace CodeImp.DoomBuilder.Data
public ImageData CrosshairBusy3D { get { return crosshairbusy; } }
public ImageData WhiteTexture { get { return whitetexture; } }
public ImageData BlackTexture { get { return blacktexture; } } //mxd
public ImageData ThingTexture { get { return thingtexture; } } //mxd
public ImageData[] CommentTextures { get { return commenttextures; } } //mxd
internal CubeTexture SkyBox { get { return skybox; } } //mxd
public List<ThingCategory> ThingCategories { get { return thingcategories; } }
@ -240,6 +242,8 @@ namespace CodeImp.DoomBuilder.Data
whitetexture = null;
blacktexture.Dispose(); //mxd
blacktexture = null; //mxd
thingtexture.Dispose(); //mxd
thingtexture = null; //mxd
unknownimage.Dispose(); //mxd
unknownimage = null; //mxd
for (int i = 0; i < commenttextures.Length; i++) //mxd
@ -1136,11 +1140,15 @@ namespace CodeImp.DoomBuilder.Data
//mxd
private void LoadInternalTextures()
{
missingtexture3d = LoadInternalTexture("MissingTexture3D.png"); //mxd
unknowntexture3d = LoadInternalTexture("UnknownTexture3D.png"); //mxd
hourglass3d = LoadInternalTexture("Hourglass3D.png"); //mxd
crosshair = LoadInternalTexture("Crosshair.png"); //mxd
crosshairbusy = LoadInternalTexture("CrosshairBusy.png"); //mxd
missingtexture3d = LoadInternalTexture("MissingTexture3D.png");
unknowntexture3d = LoadInternalTexture("UnknownTexture3D.png");
thingtexture = LoadInternalTexture("ThingTexture2D.png");
hourglass3d = LoadInternalTexture("Hourglass3D.png");
crosshair = LoadInternalTexture("Crosshair.png");
crosshairbusy = LoadInternalTexture("CrosshairBusy.png");
thingtexture.UseColorCorrection = false;
thingtexture.CreateTexture();
}
//mxd

View file

@ -51,11 +51,7 @@ namespace CodeImp.DoomBuilder.Rendering
private const float THING_SPRITE_SHRINK = 2f;
private const int THING_BUFFER_SIZE = 100;
private const float MINIMUM_THING_RADIUS = 1.5f; //mxd
private const float MINIMUM_SPRITE_RADIUS = 5.5f; //mxd
private const string FONT_NAME = "Verdana";
private const int FONT_WIDTH = 0;
private const int FONT_HEIGHT = 0;
private const float MINIMUM_SPRITE_RADIUS = 8.0f; //mxd
internal const int NUM_VIEW_MODES = 4;
#endregion
@ -79,9 +75,6 @@ namespace CodeImp.DoomBuilder.Rendering
private Size thingssize;
private Size overlaysize;
private Size backsize;
// Font
private SlimDX.Direct3D9.Font font;
// Geometry plotter
private Plotter plotter;
@ -100,9 +93,6 @@ namespace CodeImp.DoomBuilder.Rendering
// Surfaces
private SurfaceManager surfaces;
// Images
private ResourceImage thingtexture;
// View settings (world coordinates)
private ViewMode viewmode;
private float scale;
@ -145,11 +135,6 @@ namespace CodeImp.DoomBuilder.Rendering
// Constructor
internal Renderer2D(D3DDevice graphics) : base(graphics)
{
//mxd. Load thing texture
thingtexture = new ResourceImage("CodeImp.DoomBuilder.Resources.Thing2D.png") { UseColorCorrection = false };
thingtexture.LoadImage();
thingtexture.CreateTexture();
// Create surface manager
surfaces = new SurfaceManager();
@ -168,7 +153,6 @@ namespace CodeImp.DoomBuilder.Rendering
{
// Destroy rendertargets
DestroyRendertargets();
thingtexture.Dispose(); //mxd
// Dispose surface manager
surfaces.Dispose();
@ -370,10 +354,6 @@ namespace CodeImp.DoomBuilder.Rendering
thingsvertices = null;
lastgridscale = -1f;
lastgridsize = 0;
// Trash font
if(font != null) font.Dispose();
font = null;
}
// Allocates new image memory to render on
@ -416,9 +396,6 @@ namespace CodeImp.DoomBuilder.Rendering
graphics.ClearRendertarget(General.Colors.Background.WithAlpha(0).ToColorValue(), thingstex.GetSurfaceLevel(0), null);
graphics.ClearRendertarget(General.Colors.Background.WithAlpha(0).ToColorValue(), overlaytex.GetSurfaceLevel(0), null);
// Create font
font = new SlimDX.Direct3D9.Font(graphics.Device, FONT_WIDTH, FONT_HEIGHT, FontWeight.Bold, 1, false, CharacterSet.Ansi, Precision.Default, FontQuality.Antialiased, PitchAndFamily.Default, FONT_NAME);
// Create vertex buffers
screenverts = new VertexBuffer(graphics.Device, 4 * sizeof(FlatVertex), Usage.Dynamic | Usage.WriteOnly, VertexFormat.None, Pool.Default);
thingsvertices = new VertexBuffer(graphics.Device, THING_BUFFER_SIZE * 12 * sizeof(FlatVertex), Usage.Dynamic | Usage.WriteOnly, VertexFormat.None, Pool.Default);
@ -978,15 +955,16 @@ namespace CodeImp.DoomBuilder.Rendering
// This makes vertices for a thing
// Returns false when not on the screen
private bool CreateThingBoxVerts(Thing t, ref FlatVertex[] verts, ref List<Line3D> bboxes, Dictionary<Thing, Vector2D> thingsByPosition, int offset, PixelColor c, byte bboxalpha)
private bool CreateThingBoxVerts(Thing t, ref FlatVertex[] verts, ref List<Line3D> bboxes, Dictionary<Thing, Vector3D> thingsByPosition, int offset, PixelColor c, byte bboxalpha)
{
float thingsize = General.Settings.DrawThingsFixedSize ? General.Settings.DefaultThingSize : t.Size;
if(thingsize * scale < MINIMUM_THING_RADIUS) return false; //mxd. Don't render tiny little things
// Determine sizes
float circlesize = ((t.FixedSize || General.Settings.FixedThingsScale) && (scale > 1.0f) ? t.Size : t.Size * scale);
float bboxsize = ((!t.FixedSize && General.Settings.FixedThingsScale) && (scale > 1.0f) ? t.Size * scale : -1); //mxd
float screensize = Math.Max(circlesize, bboxsize); //mxd
float fixedscaler = (t.FixedSize ? 1.0f : 2.0f); //mxd
float circlesize = ((t.FixedSize || General.Settings.FixedThingsScale) && (scale > fixedscaler) ? t.Size * fixedscaler : t.Size * scale);
float bboxsize = ((!t.FixedSize && General.Settings.FixedThingsScale) && (scale > 2.0f) ? t.Size * scale : -1); //mxd
float screensize = (bboxsize > 0 ? bboxsize : circlesize); //mxd
// Transform to screen coordinates
Vector2D screenpos = ((Vector2D)t.Position).GetTransformed(translatex, translatey, scale, -scale);
@ -1052,33 +1030,51 @@ namespace CodeImp.DoomBuilder.Rendering
}
//mxd
private void CreateThingArrowVerts(Thing t, ref FlatVertex[] verts, Vector2D screenpos, int offset)
private void CreateThingArrowVerts(Thing t, ref FlatVertex[] verts, Vector3D screenpos, int offset)
{
// Determine size
float thingsize = General.Settings.DrawThingsFixedSize ? General.Settings.DefaultThingSize : t.Size;
float arrowsize = ((t.FixedSize || General.Settings.FixedThingsScale) && (scale > 1.0f) ? t.Size : t.Size * scale) * THING_ARROW_SIZE; //mxd
float fixedscaler = (t.FixedSize ? 1.0f : 2.0f);
float arrowsize = ((t.FixedSize || General.Settings.FixedThingsScale) && (scale > fixedscaler) ? t.Size * fixedscaler : t.Size * scale) * THING_ARROW_SIZE; //mxd
// Setup rotated rect for arrow
float sinarrowsize = (float)Math.Sin(t.Angle + Angle2D.PI * 0.25f) * arrowsize;
float cosarrowsize = (float)Math.Cos(t.Angle + Angle2D.PI * 0.25f) * arrowsize;
// Sprite is not rendered?
float ut, ub, ul, ur;
if(screenpos.z < 0)
{
ul = 0.625f;
ur = 0.874f;
ut = -0.039f;
ub = 0.46f;
}
else
{
ul = 0.501f;
ur = 0.999f;
ut = 0.001f;
ub = 0.999f;
}
verts[offset].x = screenpos.x + sinarrowsize;
verts[offset].y = screenpos.y + cosarrowsize;
verts[offset].c = -1;
verts[offset].u = 0.501f;
verts[offset].v = 0.001f;
verts[offset].u = ul;
verts[offset].v = ut;
offset++;
verts[offset].x = screenpos.x - cosarrowsize;
verts[offset].y = screenpos.y + sinarrowsize;
verts[offset].c = -1;
verts[offset].u = 0.999f;
verts[offset].v = 0.001f;
verts[offset].u = ur;
verts[offset].v = ut;
offset++;
verts[offset].x = screenpos.x + cosarrowsize;
verts[offset].y = screenpos.y - sinarrowsize;
verts[offset].c = -1;
verts[offset].u = 0.501f;
verts[offset].v = 0.999f;
verts[offset].u = ul;
verts[offset].v = ub;
offset++;
verts[offset] = verts[offset - 2];
offset++;
@ -1087,8 +1083,8 @@ namespace CodeImp.DoomBuilder.Rendering
verts[offset].x = screenpos.x - sinarrowsize;
verts[offset].y = screenpos.y - cosarrowsize;
verts[offset].c = -1;
verts[offset].u = 0.999f;
verts[offset].v = 0.999f;
verts[offset].u = ur;
verts[offset].v = ub;
}
//mxd
@ -1148,7 +1144,7 @@ namespace CodeImp.DoomBuilder.Rendering
graphics.Device.SetStreamSource(0, thingsvertices, 0, FlatVertex.Stride);
// Set things texture
graphics.Shaders.Things2D.Texture1 = thingtexture.Texture;
graphics.Shaders.Things2D.Texture1 = General.Map.Data.ThingTexture.Texture; //mxd
SetWorldTransformation(false);
graphics.Shaders.Things2D.SetSettings(alpha);
@ -1164,7 +1160,7 @@ namespace CodeImp.DoomBuilder.Rendering
//mxd
Dictionary<int, List<Thing>> thingsByType = new Dictionary<int, List<Thing>>();
Dictionary<int, List<Thing>> modelsByType = new Dictionary<int, List<Thing>>();
Dictionary<Thing, Vector2D> thingsByPosition = new Dictionary<Thing, Vector2D>();
Dictionary<Thing, Vector3D> thingsByPosition = new Dictionary<Thing, Vector3D>();
// Go for all things
int buffercount = 0;
@ -1259,7 +1255,8 @@ namespace CodeImp.DoomBuilder.Rendering
totalcount = 0;
float spriteWidth, spriteHeight;
float spriteScale = ((group.Value[0].FixedSize || General.Settings.FixedThingsScale) && (scale > 1.0f)) ? 1.0f : scale;
float fixedscaler = (group.Value[0].FixedSize ? 1.0f : 2.0f);
float spriteScale = ((group.Value[0].FixedSize || General.Settings.FixedThingsScale) && (scale > fixedscaler)) ? fixedscaler : scale;
float radius = General.Settings.DrawThingsFixedSize ? General.Settings.DefaultThingSize : info.Radius;
if(sprite.Width > sprite.Height)
@ -1283,7 +1280,16 @@ namespace CodeImp.DoomBuilder.Rendering
if(t.IsModel && (General.Settings.GZDrawModelsMode == ModelRenderMode.ALL || (General.Settings.GZDrawModelsMode == ModelRenderMode.SELECTION && t.Selected) || (General.Settings.GZDrawModelsMode == ModelRenderMode.ACTIVE_THINGS_FILTER && alpha == 1.0f))) continue;
float thingsize = General.Settings.DrawThingsFixedSize ? General.Settings.DefaultThingSize : t.Size;
float scaler = thingsize / radius;
if(Math.Max(spriteWidth, spriteHeight) * scaler < MINIMUM_SPRITE_RADIUS) continue; //don't render tiny little sprites
if(Math.Max(spriteWidth, spriteHeight) * scaler < MINIMUM_SPRITE_RADIUS)
{
// Hackish way to tell arrow rendering code to draw bigger arrow...
Vector3D v = thingsByPosition[t];
v.z = -1;
thingsByPosition[t] = v;
// Don't render tiny little sprites
continue;
}
CreateThingSpriteVerts(thingsByPosition[t], spriteWidth * scaler, spriteHeight * scaler, ref verts, buffercount * 6, t.Selected ? selectionColor : 0xFFFFFF);
buffercount++;
@ -1323,7 +1329,7 @@ namespace CodeImp.DoomBuilder.Rendering
graphics.Shaders.Things2D.EndPass();
//mxd. Render thing arrows
graphics.Shaders.Things2D.Texture1 = thingtexture.Texture;
graphics.Shaders.Things2D.Texture1 = General.Map.Data.ThingTexture.Texture;
graphics.Shaders.Things2D.BeginPass(0);
// Determine next lock size
@ -1334,7 +1340,7 @@ namespace CodeImp.DoomBuilder.Rendering
buffercount = 0;
totalcount = 0;
foreach(KeyValuePair<Thing, Vector2D> group in thingsByPosition)
foreach(KeyValuePair<Thing, Vector3D> group in thingsByPosition)
{
if(!group.Key.IsDirectional) continue;
@ -1393,7 +1399,7 @@ namespace CodeImp.DoomBuilder.Rendering
foreach(KeyValuePair<int, List<Thing>> group in modelsByType)
{
ModelData mde = General.Map.Data.ModeldefEntries[@group.Key];
ModelData mde = General.Map.Data.ModeldefEntries[group.Key];
foreach(Thing t in group.Value)
{
if((General.Settings.GZDrawModelsMode == ModelRenderMode.SELECTION && !t.Selected) || (General.Settings.GZDrawModelsMode == ModelRenderMode.ACTIVE_THINGS_FILTER && alpha < 1.0f)) continue;

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

View file

@ -64,6 +64,7 @@ namespace CodeImp.DoomBuilder.Windows
imagebrightness.Value = General.Settings.ImageBrightness;
doublesidedalpha.Value = General.Clamp((int)((1.0f - General.Settings.DoubleSidedAlpha) * 10.0f), doublesidedalpha.Minimum, doublesidedalpha.Maximum);
nightscircleprecision.Value = General.Clamp((int)(General.Settings.NiGHTSCirclePrecision)/10, nightscircleprecision.Minimum, nightscircleprecision.Maximum);
activethingsalpha.Value = General.Clamp((int)((1.0f - General.Settings.ActiveThingsAlpha) * 10.0f), activethingsalpha.Minimum, activethingsalpha.Maximum); //mxd
inactivethingsalpha.Value = General.Clamp((int)((1.0f - General.Settings.InactiveThingsAlpha) * 10.0f), inactivethingsalpha.Minimum, inactivethingsalpha.Maximum); //mxd
hiddenthingsalpha.Value = General.Clamp((int)((1.0f - General.Settings.HiddenThingsAlpha) * 10.0f), hiddenthingsalpha.Minimum, hiddenthingsalpha.Maximum); //mxd
defaultviewmode.SelectedIndex = General.Settings.DefaultViewMode;
@ -278,6 +279,7 @@ namespace CodeImp.DoomBuilder.Windows
General.Settings.ImageBrightness = imagebrightness.Value;
General.Settings.DoubleSidedAlpha = 1.0f - (doublesidedalpha.Value * 0.1f);
General.Settings.NiGHTSCirclePrecision = nightscircleprecision.Value * 10;
General.Settings.ActiveThingsAlpha = 1.0f - (activethingsalpha.Value * 0.1f); //mxd
General.Settings.InactiveThingsAlpha = 1.0f - (inactivethingsalpha.Value * 0.1f); //mxd
General.Settings.HiddenThingsAlpha = 1.0f - (hiddenthingsalpha.Value * 0.1f); //mxd
General.Settings.DefaultViewMode = defaultviewmode.SelectedIndex;
@ -974,6 +976,13 @@ namespace CodeImp.DoomBuilder.Windows
nightscircleprecisionlabel.Text = value.ToString();
}
//mxd
private void activethingsalpha_ValueChanged(object sender, EventArgs e)
{
int percent = activethingsalpha.Value * 10;
activethingsalphalabel.Text = percent + "%";
}
//mxd
private void inactivethingsalpha_ValueChanged(object sender, EventArgs e)
{

View file

@ -129,17 +129,17 @@ namespace CodeImp.DoomBuilder.Windows
if(General.Settings.LocateTextureGroup)
{
//mxd. Get the previously selected texture set
string selectname = General.Settings.ReadSetting("browserwindow.textureset", "");
string prevtextureset = General.Settings.ReadSetting("browserwindow.textureset", "");
TreeNode match;
// When texture name is empty, select "All" texture set
if(string.IsNullOrEmpty(selectname) || selectname == "-")
// When texture set name is empty, select "All" texture set
if(string.IsNullOrEmpty(prevtextureset))
{
match = tvTextureSets.Nodes[tvTextureSets.Nodes.Count - 1];
}
else
{
match = FindNodeByName(tvTextureSets.Nodes, selectname);
match = FindNodeByName(tvTextureSets.Nodes, prevtextureset);
}
if(match != null)
@ -466,8 +466,8 @@ namespace CodeImp.DoomBuilder.Windows
General.Settings.WriteSetting("browserwindow.splittercollapsed", splitter.IsCollapsed); //mxd
General.Settings.WriteSetting("browserwindow.usedgroupcollapsed", browser.IsGroupCollapsed(usedgroup)); //mxd
//mxd. Save last selected texture set, if it's not "All" (it will be selected anyway if search for initial texture set fails)
if(this.DialogResult == DialogResult.OK && tvTextureSets.SelectedNodes.Count > 0 && !(tvTextureSets.SelectedNodes[0].Tag is AllTextureSet))
//mxd. Save last selected texture set
if(this.DialogResult == DialogResult.OK && tvTextureSets.SelectedNodes.Count > 0)
General.Settings.WriteSetting("browserwindow.textureset", tvTextureSets.SelectedNodes[0].Name);
//mxd. Save ImageBrowserControl settings

View file

@ -372,8 +372,8 @@ namespace CodeImp.DoomBuilder.BuilderModes.ClassicModes
// Render things
if(renderer.StartThings(true))
{
renderer.RenderThingSet(General.Map.Map.Things, Presentation.THINGS_ALPHA);
renderer.RenderNiGHTSPath();
renderer.RenderThingSet(General.Map.Map.Things, General.Settings.ActiveThingsAlpha);
renderer.RenderNiGHTSPath();
renderer.Finish();
}

View file

@ -244,9 +244,9 @@ namespace CodeImp.DoomBuilder.BuilderModes
// Render things
if(renderer.StartThings(true))
{
renderer.RenderThingSet(General.Map.Map.Things, Presentation.THINGS_ALPHA);
renderer.RenderNiGHTSPath();
renderer.Finish();
renderer.RenderThingSet(General.Map.Map.Things, General.Settings.ActiveThingsAlpha);
renderer.RenderNiGHTSPath();
renderer.Finish();
}
// Render overlay

View file

@ -128,9 +128,9 @@ namespace CodeImp.DoomBuilder.BuilderModes
// Start rendering things
if(renderer.StartThings(true))
{
renderer.RenderThingSet(General.Map.Map.Things, Presentation.THINGS_ALPHA);
renderer.RenderNiGHTSPath();
renderer.Finish();
renderer.RenderThingSet(General.Map.Map.Things, General.Settings.ActiveThingsAlpha);
renderer.RenderNiGHTSPath();
renderer.Finish();
}
}
@ -161,10 +161,10 @@ namespace CodeImp.DoomBuilder.BuilderModes
if(renderer.StartThings(true))
{
renderer.RenderThingSet(General.Map.ThingsFilter.HiddenThings, General.Settings.HiddenThingsAlpha);
renderer.RenderThingSet(unselectedthings, Presentation.THINGS_ALPHA);
renderer.RenderThingSet(selectedthings, Presentation.THINGS_ALPHA);
renderer.RenderNiGHTSPath();
renderer.Finish();
renderer.RenderThingSet(unselectedthings, General.Settings.ActiveThingsAlpha);
renderer.RenderThingSet(selectedthings, General.Settings.ActiveThingsAlpha);
renderer.RenderNiGHTSPath();
renderer.Finish();
}
// Redraw overlay

View file

@ -147,9 +147,9 @@ namespace CodeImp.DoomBuilder.BuilderModes
{
if(renderer.StartThings(true))
{
renderer.RenderThingSet(General.Map.Map.Things, Presentation.THINGS_ALPHA);
renderer.RenderNiGHTSPath();
renderer.Finish();
renderer.RenderThingSet(General.Map.Map.Things, General.Settings.ActiveThingsAlpha);
renderer.RenderNiGHTSPath();
renderer.Finish();
}
}
@ -181,10 +181,10 @@ namespace CodeImp.DoomBuilder.BuilderModes
if(renderer.StartThings(true))
{
renderer.RenderThingSet(General.Map.ThingsFilter.HiddenThings, General.Settings.HiddenThingsAlpha);
renderer.RenderThingSet(unselectedthings, Presentation.THINGS_ALPHA);
renderer.RenderThingSet(selectedthings, Presentation.THINGS_ALPHA);
renderer.RenderNiGHTSPath();
renderer.Finish();
renderer.RenderThingSet(unselectedthings, General.Settings.ActiveThingsAlpha);
renderer.RenderThingSet(selectedthings, General.Settings.ActiveThingsAlpha);
renderer.RenderNiGHTSPath();
renderer.Finish();
}
// Redraw overlay

View file

@ -314,14 +314,14 @@ namespace CodeImp.DoomBuilder.BuilderModes
{
// Render things
renderer.RenderThingSet(General.Map.ThingsFilter.HiddenThings, General.Settings.HiddenThingsAlpha);
renderer.RenderThingSet(unselectedthings, Presentation.THINGS_ALPHA);
renderer.RenderThingSet(selectedthings, Presentation.THINGS_ALPHA);
renderer.RenderNiGHTSPath();
renderer.RenderThingSet(unselectedthings, General.Settings.ActiveThingsAlpha);
renderer.RenderThingSet(selectedthings, General.Settings.ActiveThingsAlpha);
renderer.RenderNiGHTSPath();
// Draw the dragged item highlighted
// This is important to know, because this item is used
// for snapping to the grid and snapping to nearest items
renderer.RenderThing(dragitem, General.Colors.Highlight, Presentation.THINGS_ALPHA);
// Draw the dragged item highlighted
// This is important to know, because this item is used
// for snapping to the grid and snapping to nearest items
renderer.RenderThing(dragitem, General.Colors.Highlight, General.Settings.ActiveThingsAlpha);
// Done
renderer.Finish();

View file

@ -116,9 +116,9 @@ namespace CodeImp.DoomBuilder.BuilderModes
{
if(renderer.StartThings(true))
{
renderer.RenderThingSet(General.Map.Map.Things, Presentation.THINGS_ALPHA);
renderer.RenderNiGHTSPath();
renderer.Finish();
renderer.RenderThingSet(General.Map.Map.Things, General.Settings.ActiveThingsAlpha);
renderer.RenderNiGHTSPath();
renderer.Finish();
}
}
@ -149,10 +149,10 @@ namespace CodeImp.DoomBuilder.BuilderModes
if(renderer.StartThings(true))
{
renderer.RenderThingSet(General.Map.ThingsFilter.HiddenThings, General.Settings.HiddenThingsAlpha);
renderer.RenderThingSet(unselectedthings, Presentation.THINGS_ALPHA);
renderer.RenderThingSet(selectedthings, Presentation.THINGS_ALPHA);
renderer.RenderNiGHTSPath();
renderer.Finish();
renderer.RenderThingSet(unselectedthings, General.Settings.ActiveThingsAlpha);
renderer.RenderThingSet(selectedthings, General.Settings.ActiveThingsAlpha);
renderer.RenderNiGHTSPath();
renderer.Finish();
}
// Redraw overlay

View file

@ -718,9 +718,9 @@ namespace CodeImp.DoomBuilder.BuilderModes
// Render things
if(renderer.StartThings(true))
{
renderer.RenderThingSet(General.Map.Map.Things, Presentation.THINGS_ALPHA);
renderer.RenderNiGHTSPath();
renderer.Finish();
renderer.RenderThingSet(General.Map.Map.Things, General.Settings.ActiveThingsAlpha);
renderer.RenderNiGHTSPath();
renderer.Finish();
}
// Normal update

View file

@ -345,7 +345,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
{
if(renderer.StartThings(false))
{
renderer.RenderThing((Thing)highlighted, renderer.DetermineThingColor((Thing)highlighted), Presentation.THINGS_ALPHA);
renderer.RenderThing((Thing)highlighted, renderer.DetermineThingColor((Thing)highlighted), General.Settings.ActiveThingsAlpha);
renderer.Finish();
}
}
@ -369,7 +369,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
{
if(renderer.StartThings(false))
{
renderer.RenderThing((Thing)highlighted, General.Colors.Highlight, Presentation.THINGS_ALPHA);
renderer.RenderThing((Thing)highlighted, General.Colors.Highlight, General.Settings.ActiveThingsAlpha);
renderer.Finish();
}
}
@ -1572,8 +1572,8 @@ namespace CodeImp.DoomBuilder.BuilderModes
if(renderer.StartThings(true))
{
renderer.RenderThingSet(General.Map.ThingsFilter.HiddenThings, General.Settings.HiddenThingsAlpha);
renderer.RenderThingSet(General.Map.ThingsFilter.VisibleThings, General.Settings.InactiveThingsAlpha);
if(highlighted is Thing) renderer.RenderThing((Thing)highlighted, General.Colors.Highlight, Presentation.THINGS_ALPHA);
renderer.RenderThingSet(General.Map.ThingsFilter.VisibleThings, General.Settings.ActiveThingsAlpha);
if(highlighted is Thing) renderer.RenderThing((Thing)highlighted, General.Colors.Highlight, General.Settings.ActiveThingsAlpha);
renderer.RenderNiGHTSPath();
renderer.Finish();
}

View file

@ -136,10 +136,10 @@ namespace CodeImp.DoomBuilder.BuilderModes
// Render things
if(renderer.StartThings(true))
{
renderer.RenderThingSet(General.Map.Map.Things, Presentation.THINGS_ALPHA);
renderer.RenderNiGHTSPath();
//foreach(ErrorResult result in selection) result.RenderThingsSelection(renderer); //mxd
renderer.Finish();
renderer.RenderThingSet(General.Map.Map.Things, General.Settings.ActiveThingsAlpha);
renderer.RenderNiGHTSPath();
//foreach(ErrorResult result in selection) result.RenderThingsSelection(renderer); //mxd
renderer.Finish();
}
// Render overlay

View file

@ -141,9 +141,9 @@ namespace CodeImp.DoomBuilder.BuilderModes
// Render things
if(renderer.StartThings(true))
{
renderer.RenderThingSet(General.Map.Map.Things, Presentation.THINGS_ALPHA);
renderer.RenderNiGHTSPath();
if (BuilderPlug.Me.FindReplaceForm.Finder != null)
renderer.RenderThingSet(General.Map.Map.Things, General.Settings.ActiveThingsAlpha);
renderer.RenderNiGHTSPath();
if (BuilderPlug.Me.FindReplaceForm.Finder != null)
BuilderPlug.Me.FindReplaceForm.Finder.RenderThingsSelection(renderer, selection);
renderer.Finish();
}

View file

@ -876,9 +876,9 @@ namespace CodeImp.DoomBuilder.BuilderModes
if(renderer.StartThings(true))
{
renderer.RenderThingSet(General.Map.ThingsFilter.HiddenThings, General.Settings.HiddenThingsAlpha);
renderer.RenderThingSet(General.Map.ThingsFilter.VisibleThings, General.Settings.InactiveThingsAlpha);
renderer.RenderNiGHTSPath();
renderer.Finish();
renderer.RenderThingSet(General.Map.ThingsFilter.VisibleThings, General.Settings.ActiveThingsAlpha);
renderer.RenderNiGHTSPath();
renderer.Finish();
}
// Render overlay

View file

@ -511,9 +511,9 @@ namespace CodeImp.DoomBuilder.BuilderModes
if(renderer.StartThings(true))
{
renderer.RenderThingSet(General.Map.ThingsFilter.HiddenThings, General.Settings.HiddenThingsAlpha);
renderer.RenderThingSet(General.Map.ThingsFilter.VisibleThings, General.Settings.InactiveThingsAlpha);
renderer.RenderNiGHTSPath();
renderer.Finish();
renderer.RenderThingSet(General.Map.ThingsFilter.VisibleThings, General.Settings.ActiveThingsAlpha);
renderer.RenderNiGHTSPath();
renderer.Finish();
}
// Render selection

View file

@ -345,9 +345,9 @@ namespace CodeImp.DoomBuilder.BuilderModes
if(renderer.StartThings(true))
{
renderer.RenderThingSet(General.Map.ThingsFilter.HiddenThings, General.Settings.HiddenThingsAlpha);
renderer.RenderThingSet(General.Map.ThingsFilter.VisibleThings, General.Settings.InactiveThingsAlpha);
renderer.RenderNiGHTSPath();
renderer.Finish();
renderer.RenderThingSet(General.Map.ThingsFilter.VisibleThings, General.Settings.ActiveThingsAlpha);
renderer.RenderNiGHTSPath();
renderer.Finish();
}
// Render overlay

View file

@ -774,7 +774,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
if(renderer.StartThings(true))
{
renderer.RenderThingSet(General.Map.ThingsFilter.HiddenThings, General.Settings.HiddenThingsAlpha);
renderer.RenderThingSet(General.Map.ThingsFilter.VisibleThings, General.Settings.InactiveThingsAlpha);
renderer.RenderThingSet(General.Map.ThingsFilter.VisibleThings, General.Settings.ActiveThingsAlpha);
renderer.RenderNiGHTSPath();
renderer.Finish();
}

View file

@ -203,14 +203,15 @@ namespace CodeImp.DoomBuilder.BuilderModes
// Render things
if(renderer.StartThings(true))
{
float alpha = (General.Settings.FixedThingsScale ? Presentation.THINGS_ALPHA : General.Settings.ActiveThingsAlpha); //mxd
renderer.RenderThingSet(General.Map.ThingsFilter.HiddenThings, General.Settings.HiddenThingsAlpha);
renderer.RenderThingSet(General.Map.ThingsFilter.VisibleThings, General.Settings.InactiveThingsAlpha);
renderer.RenderNiGHTSPath();
for (int i = 0; i < Thing.NUM_ARGS; i++) BuilderPlug.RenderAssociations(renderer, association[i], eventlines);
renderer.RenderThingSet(General.Map.ThingsFilter.VisibleThings, alpha);
renderer.RenderNiGHTSPath();
for (int i = 0; i < Thing.NUM_ARGS; i++) BuilderPlug.RenderAssociations(renderer, association[i], eventlines);
if((highlighted != null) && !highlighted.IsDisposed)
{
renderer.RenderThing(highlighted, General.Colors.Highlight, Presentation.THINGS_ALPHA);
renderer.RenderThing(highlighted, General.Colors.Highlight, alpha);
BuilderPlug.RenderReverseAssociations(renderer, highlightasso, eventlines); //mxd
}
@ -318,7 +319,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
if(renderer.StartThings(false))
{
// Redraw highlight to show selection
renderer.RenderThing(highlighted, renderer.DetermineThingColor(highlighted), Presentation.THINGS_ALPHA);
renderer.RenderThing(highlighted, renderer.DetermineThingColor(highlighted), General.Settings.FixedThingsScale ? Presentation.THINGS_ALPHA : General.Settings.ActiveThingsAlpha);
renderer.Finish();
renderer.Present();
}
@ -343,7 +344,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
if(renderer.StartThings(false))
{
// Render highlighted item
renderer.RenderThing(highlighted, General.Colors.Highlight, Presentation.THINGS_ALPHA);
renderer.RenderThing(highlighted, General.Colors.Highlight, General.Settings.FixedThingsScale ? Presentation.THINGS_ALPHA : General.Settings.ActiveThingsAlpha);
renderer.Finish();
renderer.Present();
}
@ -386,7 +387,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
if(renderer.StartThings(false))
{
// Redraw highlight to show selection
renderer.RenderThing(highlighted, renderer.DetermineThingColor(highlighted), Presentation.THINGS_ALPHA);
renderer.RenderThing(highlighted, renderer.DetermineThingColor(highlighted), General.Settings.FixedThingsScale ? Presentation.THINGS_ALPHA : General.Settings.ActiveThingsAlpha);
renderer.Finish();
renderer.Present();
}

View file

@ -168,9 +168,9 @@ namespace CodeImp.DoomBuilder.BuilderModes
if(renderer.StartThings(true))
{
renderer.RenderThingSet(General.Map.ThingsFilter.HiddenThings, General.Settings.HiddenThingsAlpha);
renderer.RenderThingSet(General.Map.ThingsFilter.VisibleThings, General.Settings.InactiveThingsAlpha);
renderer.RenderNiGHTSPath();
renderer.Finish();
renderer.RenderThingSet(General.Map.ThingsFilter.VisibleThings, General.Settings.ActiveThingsAlpha);
renderer.RenderNiGHTSPath();
renderer.Finish();
}
// Render selection

View file

@ -81,7 +81,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
public override void RenderOverlaySelection(IRenderer2D renderer)
{
foreach(Thing thing in things)
renderer.RenderThing(thing, General.Colors.Selection, Presentation.THINGS_ALPHA);
renderer.RenderThing(thing, General.Colors.Selection, General.Settings.ActiveThingsAlpha);
}
#endregion

View file

@ -60,7 +60,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
// Rendering
public override void RenderOverlaySelection(IRenderer2D renderer)
{
renderer.RenderThing(thing, General.Colors.Selection, Presentation.THINGS_ALPHA);
renderer.RenderThing(thing, General.Colors.Selection, General.Settings.ActiveThingsAlpha);
}
// This removes the thing

View file

@ -75,7 +75,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
// Rendering
public override void RenderOverlaySelection(IRenderer2D renderer)
{
renderer.RenderThing(thing, General.Colors.Selection, Presentation.THINGS_ALPHA);
renderer.RenderThing(thing, General.Colors.Selection, General.Settings.ActiveThingsAlpha);
}
// mxd. More rencering

View file

@ -84,8 +84,8 @@ namespace CodeImp.DoomBuilder.BuilderModes
// Rendering
public override void RenderOverlaySelection(IRenderer2D renderer)
{
renderer.RenderThing(thing1, General.Colors.Selection, Presentation.THINGS_ALPHA);
renderer.RenderThing(thing2, General.Colors.Selection, Presentation.THINGS_ALPHA);
renderer.RenderThing(thing1, General.Colors.Selection, General.Settings.ActiveThingsAlpha);
renderer.RenderThing(thing2, General.Colors.Selection, General.Settings.ActiveThingsAlpha);
}
// This removes the first thing

View file

@ -73,7 +73,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
// Rendering
public override void RenderOverlaySelection(IRenderer2D renderer)
{
renderer.RenderThing(thing, General.Colors.Selection, Presentation.THINGS_ALPHA);
renderer.RenderThing(thing, General.Colors.Selection, General.Settings.ActiveThingsAlpha);
}
// This removes the thing

View file

@ -57,7 +57,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
// Rendering
public override void RenderOverlaySelection(IRenderer2D renderer)
{
renderer.RenderThing(thing, General.Colors.Selection, Presentation.THINGS_ALPHA);
renderer.RenderThing(thing, General.Colors.Selection, General.Settings.ActiveThingsAlpha);
}
// This removes the thing

View file

@ -59,7 +59,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
// Rendering
public override void RenderOverlaySelection(IRenderer2D renderer)
{
renderer.RenderThing(thing, General.Colors.Selection, Presentation.THINGS_ALPHA);
renderer.RenderThing(thing, General.Colors.Selection, General.Settings.ActiveThingsAlpha);
}
// This removes the thing

View file

@ -34,7 +34,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
public override void RenderThingsSelection(IRenderer2D renderer, FindReplaceObject[] selection)
{
foreach(FindReplaceObject o in selection)
renderer.RenderThing(o.Thing, General.Colors.Selection, Presentation.THINGS_ALPHA);
renderer.RenderThing(o.Thing, General.Colors.Selection, General.Settings.ActiveThingsAlpha);
}
// Edit objects

View file

@ -751,7 +751,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
foreach(Thing t in General.Map.Map.Things)
{
if(!asso.Tags.Contains(t.Tag)) continue;
renderer.RenderThing(t, General.Colors.Indication, Presentation.THINGS_ALPHA);
renderer.RenderThing(t, General.Colors.Indication, General.Settings.ActiveThingsAlpha);
if(General.Settings.GZShowEventLines) eventlines.Add(new Line3D(asso.Center, t.Position)); //mxd
}
break;
@ -828,7 +828,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
((action.Args[3].Type == (int)asso.Type) && (asso.Tags.Contains(t.Args[3]))) ||
((action.Args[4].Type == (int)asso.Type) && (asso.Tags.Contains(t.Args[4]))))
{
renderer.RenderThing(t, General.Colors.Indication, Presentation.THINGS_ALPHA);
renderer.RenderThing(t, General.Colors.Indication, General.Settings.ActiveThingsAlpha);
if(General.Settings.GZShowEventLines) eventlines.Add(new Line3D(t.Position, asso.Center)); //mxd
}
}
@ -844,7 +844,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
((ti.Args[3].Type == (int)asso.Type) && (asso.Tags.Contains(t.Args[3]))) ||
((ti.Args[4].Type == (int)asso.Type) && (asso.Tags.Contains(t.Args[4]))))
{
renderer.RenderThing(t, General.Colors.Indication, Presentation.THINGS_ALPHA);
renderer.RenderThing(t, General.Colors.Indication, General.Settings.ActiveThingsAlpha);
if(General.Settings.GZShowEventLines) eventlines.Add(new Line3D(t.Position, asso.Center));
}
}

View file

@ -314,12 +314,13 @@ namespace CodeImp.DoomBuilder.SoundPropagationMode
{
foreach(SoundEnvironment se in BuilderPlug.Me.SoundEnvironments)
{
if(se.Things.Count > 0) renderer.RenderThingSet(se.Things, Presentation.THINGS_ALPHA);
if(se.Things.Count > 0) renderer.RenderThingSet(se.Things, General.Settings.ActiveThingsAlpha);
}
}
//mxd. Render highlighted thing
if(highlightedthing != null) renderer.RenderThing(highlightedthing, General.Colors.Selection, Presentation.THINGS_ALPHA);
if(highlightedthing != null)
renderer.RenderThing(highlightedthing, General.Colors.Selection, General.Settings.ActiveThingsAlpha);
renderer.Finish();
}

View file

@ -281,7 +281,7 @@ namespace CodeImp.DoomBuilder.SoundPropagationMode
renderer.RenderNiGHTSPath();
foreach (Thing thing in huntingThings)
{
renderer.RenderThing(thing, General.Colors.Selection, Presentation.THINGS_ALPHA);
renderer.RenderThing(thing, General.Colors.Selection, General.Settings.ActiveThingsAlpha);
}
renderer.Finish();

View file

@ -1480,7 +1480,7 @@ namespace CodeImp.DoomBuilder.StairSectorBuilderMode
// Render things
if(renderer.StartThings(true))
{
renderer.RenderThingSet(General.Map.Map.Things, Presentation.THINGS_ALPHA);
renderer.RenderThingSet(General.Map.Map.Things, General.Settings.ActiveThingsAlpha);
renderer.Finish();
}