Render window glass projections from fragments in model viewer and vehicle viewer

This commit is contained in:
dexy 2021-04-27 21:29:42 +10:00
parent 5cdde7a34f
commit 7eec785459
6 changed files with 701 additions and 460 deletions

View File

@ -198,6 +198,7 @@ namespace CodeWalker.GameFiles
AssignChildrenShaders(); AssignChildrenShaders();
AssignGlassWindowsGroups();
#if DEBUG #if DEBUG
Analyzer = new ResourceAnalyzer(reader); Analyzer = new ResourceAnalyzer(reader);
@ -666,6 +667,54 @@ namespace CodeWalker.GameFiles
} }
public void AssignGlassWindowsGroups()
{
void assign(FragPhysicsLOD lod)
{
if (lod?.Groups?.data_items == null) return;
foreach (var grp in lod.Groups.data_items)
{
var windx = grp.UnkByte52;
var flags = grp.UnkByte53;
if ((flags & 2) > 0)
{
if (GlassWindows?.data_items != null)
{
if (windx < GlassWindows.data_items.Length)
{
var wind = GlassWindows.data_items[windx];
wind.Group = grp;
wind.GroupLOD = lod;
}
}
}
}
}
assign(PhysicsLODGroup?.PhysicsLOD1);
assign(PhysicsLODGroup?.PhysicsLOD2);
assign(PhysicsLODGroup?.PhysicsLOD3);
//if (VehicleGlassWindows?.Windows != null)
//{
// var groups = PhysicsLODGroup?.PhysicsLOD1?.Groups?.data_items;
// if (groups != null)
// {
// var groupdict = new Dictionary<int, FragPhysTypeGroup>();
// foreach (var grp in groups)
// {
// groupdict[grp.Index] = grp;
// }
// foreach (var wind in VehicleGlassWindows.Windows)
// {
// groupdict.TryGetValue(wind.ItemID, out var grp);
// wind.Group = grp;
// wind.GroupLOD = PhysicsLODGroup.PhysicsLOD1;
// }
// }
//}
}
public override IResourceBlock[] GetReferences() public override IResourceBlock[] GetReferences()
@ -1113,6 +1162,8 @@ namespace CodeWalker.GameFiles
public float UnkFloat22 { get; set; } public float UnkFloat22 { get; set; }
public uint UnkUint4 = 0x7f800001; // 0x7f800001 public uint UnkUint4 = 0x7f800001; // 0x7f800001
public FragPhysTypeGroup Group { get; set; }
public FragPhysicsLOD GroupLOD { get; set; }
public override void Read(ResourceDataReader reader, params object[] parameters) public override void Read(ResourceDataReader reader, params object[] parameters)
{ {
@ -1840,6 +1891,23 @@ namespace CodeWalker.GameFiles
} }
public int GetValue(int x)
{
if (x < 0) return -1;
if (Data1 != null)
{
if (x < Start1) return -1;
var cpos = x - Start1;
if (cpos < Data1.Length) return Data1[cpos];
}
if (Data2 != null)
{
if (x < Start2) return 256;
var cpos = x - Start2;
if (cpos < Data2.Length) return Data2[cpos];
}
return -1;
}
public override string ToString() public override string ToString()
{ {
@ -3933,8 +4001,8 @@ namespace CodeWalker.GameFiles
public byte UnkByte4F { get; set; } public byte UnkByte4F { get; set; }
public byte UnkByte50 { get; set; } public byte UnkByte50 { get; set; }
public byte UnkByte51 { get; set; } = 255; //0xFF public byte UnkByte51 { get; set; } = 255; //0xFF
public byte UnkByte52 { get; set; } public byte UnkByte52 { get; set; }//GlassWindows index
public byte UnkByte53 { get; set; } public byte UnkByte53 { get; set; }//flags: 1=?, 2=glass, 4=?, ...
public float UnkFloat54 { get; set; } public float UnkFloat54 { get; set; }
public float UnkFloat58 { get; set; } public float UnkFloat58 { get; set; }
public float UnkFloat5C { get; set; } public float UnkFloat5C { get; set; }

View File

@ -45,6 +45,11 @@
this.SaveAsMenuButton = new System.Windows.Forms.ToolStripMenuItem(); this.SaveAsMenuButton = new System.Windows.Forms.ToolStripMenuItem();
this.ToolsTabControl = new System.Windows.Forms.TabControl(); this.ToolsTabControl = new System.Windows.Forms.TabControl();
this.ToolsModelsTabPage = new System.Windows.Forms.TabPage(); this.ToolsModelsTabPage = new System.Windows.Forms.TabPage();
this.EnableRootMotionCheckBox = new System.Windows.Forms.CheckBox();
this.label22 = new System.Windows.Forms.Label();
this.ClipComboBox = new System.Windows.Forms.ComboBox();
this.label21 = new System.Windows.Forms.Label();
this.ClipDictComboBox = new System.Windows.Forms.ComboBox();
this.ModelsTreeView = new CodeWalker.WinForms.TreeViewFix(); this.ModelsTreeView = new CodeWalker.WinForms.TreeViewFix();
this.ToolsMaterialsTabPage = new System.Windows.Forms.TabPage(); this.ToolsMaterialsTabPage = new System.Windows.Forms.TabPage();
this.MaterialEditorButton = new System.Windows.Forms.Button(); this.MaterialEditorButton = new System.Windows.Forms.Button();
@ -82,11 +87,7 @@
this.ToolsDragPanel = new System.Windows.Forms.Panel(); this.ToolsDragPanel = new System.Windows.Forms.Panel();
this.ToolsPanelShowButton = new System.Windows.Forms.Button(); this.ToolsPanelShowButton = new System.Windows.Forms.Button();
this.SaveFileDialog = new System.Windows.Forms.SaveFileDialog(); this.SaveFileDialog = new System.Windows.Forms.SaveFileDialog();
this.EnableRootMotionCheckBox = new System.Windows.Forms.CheckBox(); this.FragGlassCheckBox = new System.Windows.Forms.CheckBox();
this.label22 = new System.Windows.Forms.Label();
this.ClipComboBox = new System.Windows.Forms.ComboBox();
this.label21 = new System.Windows.Forms.Label();
this.ClipDictComboBox = new System.Windows.Forms.ComboBox();
this.StatusStrip.SuspendLayout(); this.StatusStrip.SuspendLayout();
this.ConsolePanel.SuspendLayout(); this.ConsolePanel.SuspendLayout();
this.ToolsPanel.SuspendLayout(); this.ToolsPanel.SuspendLayout();
@ -262,456 +263,6 @@
this.ToolsModelsTabPage.Text = "Models"; this.ToolsModelsTabPage.Text = "Models";
this.ToolsModelsTabPage.UseVisualStyleBackColor = true; this.ToolsModelsTabPage.UseVisualStyleBackColor = true;
// //
// ModelsTreeView
//
this.ModelsTreeView.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.ModelsTreeView.CheckBoxes = true;
this.ModelsTreeView.Location = new System.Drawing.Point(0, 3);
this.ModelsTreeView.Name = "ModelsTreeView";
this.ModelsTreeView.ShowRootLines = false;
this.ModelsTreeView.Size = new System.Drawing.Size(217, 422);
this.ModelsTreeView.TabIndex = 1;
this.ModelsTreeView.AfterCheck += new System.Windows.Forms.TreeViewEventHandler(this.ModelsTreeView_AfterCheck);
this.ModelsTreeView.NodeMouseDoubleClick += new System.Windows.Forms.TreeNodeMouseClickEventHandler(this.ModelsTreeView_NodeMouseDoubleClick);
this.ModelsTreeView.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.ModelsTreeView_KeyPress);
//
// ToolsMaterialsTabPage
//
this.ToolsMaterialsTabPage.Controls.Add(this.MaterialEditorButton);
this.ToolsMaterialsTabPage.Controls.Add(this.TextureViewerButton);
this.ToolsMaterialsTabPage.Controls.Add(this.TexturesTreeView);
this.ToolsMaterialsTabPage.Location = new System.Drawing.Point(4, 22);
this.ToolsMaterialsTabPage.Name = "ToolsMaterialsTabPage";
this.ToolsMaterialsTabPage.Padding = new System.Windows.Forms.Padding(3);
this.ToolsMaterialsTabPage.Size = new System.Drawing.Size(205, 500);
this.ToolsMaterialsTabPage.TabIndex = 1;
this.ToolsMaterialsTabPage.Text = "Materials";
this.ToolsMaterialsTabPage.UseVisualStyleBackColor = true;
//
// MaterialEditorButton
//
this.MaterialEditorButton.Location = new System.Drawing.Point(3, 6);
this.MaterialEditorButton.Name = "MaterialEditorButton";
this.MaterialEditorButton.Size = new System.Drawing.Size(91, 23);
this.MaterialEditorButton.TabIndex = 3;
this.MaterialEditorButton.Text = "Material editor";
this.MaterialEditorButton.UseVisualStyleBackColor = true;
this.MaterialEditorButton.Click += new System.EventHandler(this.MaterialEditorButton_Click);
//
// TextureViewerButton
//
this.TextureViewerButton.Location = new System.Drawing.Point(111, 6);
this.TextureViewerButton.Name = "TextureViewerButton";
this.TextureViewerButton.Size = new System.Drawing.Size(91, 23);
this.TextureViewerButton.TabIndex = 2;
this.TextureViewerButton.Text = "Texture viewer";
this.TextureViewerButton.UseVisualStyleBackColor = true;
this.TextureViewerButton.Click += new System.EventHandler(this.TextureViewerButton_Click);
//
// TexturesTreeView
//
this.TexturesTreeView.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.TexturesTreeView.Location = new System.Drawing.Point(0, 34);
this.TexturesTreeView.Name = "TexturesTreeView";
this.TexturesTreeView.ShowRootLines = false;
this.TexturesTreeView.Size = new System.Drawing.Size(205, 466);
this.TexturesTreeView.TabIndex = 1;
//
// ToolsDetailsTabPage
//
this.ToolsDetailsTabPage.Controls.Add(this.DetailsPropertyGrid);
this.ToolsDetailsTabPage.Location = new System.Drawing.Point(4, 22);
this.ToolsDetailsTabPage.Name = "ToolsDetailsTabPage";
this.ToolsDetailsTabPage.Size = new System.Drawing.Size(205, 500);
this.ToolsDetailsTabPage.TabIndex = 2;
this.ToolsDetailsTabPage.Text = "Details";
this.ToolsDetailsTabPage.UseVisualStyleBackColor = true;
//
// DetailsPropertyGrid
//
this.DetailsPropertyGrid.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.DetailsPropertyGrid.HelpVisible = false;
this.DetailsPropertyGrid.Location = new System.Drawing.Point(0, 3);
this.DetailsPropertyGrid.Name = "DetailsPropertyGrid";
this.DetailsPropertyGrid.PropertySort = System.Windows.Forms.PropertySort.NoSort;
this.DetailsPropertyGrid.ReadOnly = true;
this.DetailsPropertyGrid.Size = new System.Drawing.Size(205, 497);
this.DetailsPropertyGrid.TabIndex = 1;
this.DetailsPropertyGrid.ToolbarVisible = false;
//
// ToolsOptionsTabPage
//
this.ToolsOptionsTabPage.Controls.Add(this.HDTexturesCheckBox);
this.ToolsOptionsTabPage.Controls.Add(this.SkeletonsCheckBox);
this.ToolsOptionsTabPage.Controls.Add(this.TimeOfDayLabel);
this.ToolsOptionsTabPage.Controls.Add(this.label19);
this.ToolsOptionsTabPage.Controls.Add(this.TimeOfDayTrackBar);
this.ToolsOptionsTabPage.Controls.Add(this.ControlLightDirCheckBox);
this.ToolsOptionsTabPage.Controls.Add(this.ShowCollisionMeshesCheckBox);
this.ToolsOptionsTabPage.Controls.Add(this.GridCheckBox);
this.ToolsOptionsTabPage.Controls.Add(this.GridCountComboBox);
this.ToolsOptionsTabPage.Controls.Add(this.label2);
this.ToolsOptionsTabPage.Controls.Add(this.GridSizeComboBox);
this.ToolsOptionsTabPage.Controls.Add(this.label1);
this.ToolsOptionsTabPage.Controls.Add(this.StatusBarCheckBox);
this.ToolsOptionsTabPage.Controls.Add(this.ErrorConsoleCheckBox);
this.ToolsOptionsTabPage.Controls.Add(this.HDRRenderingCheckBox);
this.ToolsOptionsTabPage.Controls.Add(this.SkydomeCheckBox);
this.ToolsOptionsTabPage.Controls.Add(this.ShadowsCheckBox);
this.ToolsOptionsTabPage.Controls.Add(this.WireframeCheckBox);
this.ToolsOptionsTabPage.Controls.Add(this.RenderModeComboBox);
this.ToolsOptionsTabPage.Controls.Add(this.label11);
this.ToolsOptionsTabPage.Controls.Add(this.TextureSamplerComboBox);
this.ToolsOptionsTabPage.Controls.Add(this.TextureCoordsComboBox);
this.ToolsOptionsTabPage.Controls.Add(this.label10);
this.ToolsOptionsTabPage.Controls.Add(this.AnisotropicFilteringCheckBox);
this.ToolsOptionsTabPage.Controls.Add(this.label14);
this.ToolsOptionsTabPage.Location = new System.Drawing.Point(4, 22);
this.ToolsOptionsTabPage.Name = "ToolsOptionsTabPage";
this.ToolsOptionsTabPage.Size = new System.Drawing.Size(205, 500);
this.ToolsOptionsTabPage.TabIndex = 3;
this.ToolsOptionsTabPage.Text = "Options";
this.ToolsOptionsTabPage.UseVisualStyleBackColor = true;
//
// HDTexturesCheckBox
//
this.HDTexturesCheckBox.AutoSize = true;
this.HDTexturesCheckBox.Checked = true;
this.HDTexturesCheckBox.CheckState = System.Windows.Forms.CheckState.Checked;
this.HDTexturesCheckBox.Location = new System.Drawing.Point(19, 242);
this.HDTexturesCheckBox.Name = "HDTexturesCheckBox";
this.HDTexturesCheckBox.Size = new System.Drawing.Size(82, 17);
this.HDTexturesCheckBox.TabIndex = 10;
this.HDTexturesCheckBox.Text = "HD textures";
this.HDTexturesCheckBox.UseVisualStyleBackColor = true;
this.HDTexturesCheckBox.CheckedChanged += new System.EventHandler(this.HDTexturesCheckBox_CheckedChanged);
//
// SkeletonsCheckBox
//
this.SkeletonsCheckBox.AutoSize = true;
this.SkeletonsCheckBox.Location = new System.Drawing.Point(19, 444);
this.SkeletonsCheckBox.Name = "SkeletonsCheckBox";
this.SkeletonsCheckBox.Size = new System.Drawing.Size(103, 17);
this.SkeletonsCheckBox.TabIndex = 22;
this.SkeletonsCheckBox.Text = "Show Skeletons";
this.SkeletonsCheckBox.UseVisualStyleBackColor = true;
this.SkeletonsCheckBox.CheckedChanged += new System.EventHandler(this.SkeletonsCheckBox_CheckedChanged);
//
// TimeOfDayLabel
//
this.TimeOfDayLabel.AutoSize = true;
this.TimeOfDayLabel.Location = new System.Drawing.Point(78, 109);
this.TimeOfDayLabel.Name = "TimeOfDayLabel";
this.TimeOfDayLabel.Size = new System.Drawing.Size(34, 13);
this.TimeOfDayLabel.TabIndex = 5;
this.TimeOfDayLabel.Text = "12:00";
//
// label19
//
this.label19.AutoSize = true;
this.label19.Location = new System.Drawing.Point(7, 109);
this.label19.Name = "label19";
this.label19.Size = new System.Drawing.Size(65, 13);
this.label19.TabIndex = 4;
this.label19.Text = "Time of day:";
//
// TimeOfDayTrackBar
//
this.TimeOfDayTrackBar.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.TimeOfDayTrackBar.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.TimeOfDayTrackBar.LargeChange = 60;
this.TimeOfDayTrackBar.Location = new System.Drawing.Point(9, 125);
this.TimeOfDayTrackBar.Maximum = 1440;
this.TimeOfDayTrackBar.Name = "TimeOfDayTrackBar";
this.TimeOfDayTrackBar.Size = new System.Drawing.Size(188, 45);
this.TimeOfDayTrackBar.TabIndex = 6;
this.TimeOfDayTrackBar.TickFrequency = 60;
this.TimeOfDayTrackBar.Value = 720;
this.TimeOfDayTrackBar.Scroll += new System.EventHandler(this.TimeOfDayTrackBar_Scroll);
//
// ControlLightDirCheckBox
//
this.ControlLightDirCheckBox.AutoSize = true;
this.ControlLightDirCheckBox.Location = new System.Drawing.Point(19, 83);
this.ControlLightDirCheckBox.Name = "ControlLightDirCheckBox";
this.ControlLightDirCheckBox.Size = new System.Drawing.Size(124, 17);
this.ControlLightDirCheckBox.TabIndex = 3;
this.ControlLightDirCheckBox.Text = "Control light direction";
this.ControlLightDirCheckBox.UseVisualStyleBackColor = true;
this.ControlLightDirCheckBox.CheckedChanged += new System.EventHandler(this.ControlLightDirCheckBox_CheckedChanged);
//
// ShowCollisionMeshesCheckBox
//
this.ShowCollisionMeshesCheckBox.AutoSize = true;
this.ShowCollisionMeshesCheckBox.Location = new System.Drawing.Point(19, 173);
this.ShowCollisionMeshesCheckBox.Name = "ShowCollisionMeshesCheckBox";
this.ShowCollisionMeshesCheckBox.Size = new System.Drawing.Size(132, 17);
this.ShowCollisionMeshesCheckBox.TabIndex = 7;
this.ShowCollisionMeshesCheckBox.Text = "Show collision meshes";
this.ShowCollisionMeshesCheckBox.UseVisualStyleBackColor = true;
this.ShowCollisionMeshesCheckBox.CheckedChanged += new System.EventHandler(this.ShowCollisionMeshesCheckBox_CheckedChanged);
//
// GridCheckBox
//
this.GridCheckBox.AutoSize = true;
this.GridCheckBox.Location = new System.Drawing.Point(19, 364);
this.GridCheckBox.Name = "GridCheckBox";
this.GridCheckBox.Size = new System.Drawing.Size(45, 17);
this.GridCheckBox.TabIndex = 17;
this.GridCheckBox.Text = "Grid";
this.GridCheckBox.UseVisualStyleBackColor = true;
this.GridCheckBox.CheckedChanged += new System.EventHandler(this.GridCheckBox_CheckedChanged);
//
// GridCountComboBox
//
this.GridCountComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.GridCountComboBox.FormattingEnabled = true;
this.GridCountComboBox.Items.AddRange(new object[] {
"20",
"40",
"60",
"100"});
this.GridCountComboBox.Location = new System.Drawing.Point(83, 411);
this.GridCountComboBox.Name = "GridCountComboBox";
this.GridCountComboBox.Size = new System.Drawing.Size(114, 21);
this.GridCountComboBox.TabIndex = 21;
this.GridCountComboBox.SelectedIndexChanged += new System.EventHandler(this.GridCountComboBox_SelectedIndexChanged);
//
// label2
//
this.label2.AutoSize = true;
this.label2.Location = new System.Drawing.Point(7, 414);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(59, 13);
this.label2.TabIndex = 20;
this.label2.Text = "Grid count:";
//
// GridSizeComboBox
//
this.GridSizeComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.GridSizeComboBox.FormattingEnabled = true;
this.GridSizeComboBox.Items.AddRange(new object[] {
"0.1",
"1.0",
"10",
"100"});
this.GridSizeComboBox.Location = new System.Drawing.Point(83, 384);
this.GridSizeComboBox.Name = "GridSizeComboBox";
this.GridSizeComboBox.Size = new System.Drawing.Size(114, 21);
this.GridSizeComboBox.TabIndex = 19;
this.GridSizeComboBox.SelectedIndexChanged += new System.EventHandler(this.GridSizeComboBox_SelectedIndexChanged);
//
// label1
//
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(7, 387);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(70, 13);
this.label1.TabIndex = 18;
this.label1.Text = "Grid unit size:";
//
// StatusBarCheckBox
//
this.StatusBarCheckBox.AutoSize = true;
this.StatusBarCheckBox.Checked = true;
this.StatusBarCheckBox.CheckState = System.Windows.Forms.CheckState.Checked;
this.StatusBarCheckBox.Location = new System.Drawing.Point(19, 480);
this.StatusBarCheckBox.Name = "StatusBarCheckBox";
this.StatusBarCheckBox.Size = new System.Drawing.Size(74, 17);
this.StatusBarCheckBox.TabIndex = 23;
this.StatusBarCheckBox.Text = "Status bar";
this.StatusBarCheckBox.UseVisualStyleBackColor = true;
this.StatusBarCheckBox.CheckedChanged += new System.EventHandler(this.StatusBarCheckBox_CheckedChanged);
//
// ErrorConsoleCheckBox
//
this.ErrorConsoleCheckBox.AutoSize = true;
this.ErrorConsoleCheckBox.Location = new System.Drawing.Point(105, 480);
this.ErrorConsoleCheckBox.Name = "ErrorConsoleCheckBox";
this.ErrorConsoleCheckBox.Size = new System.Drawing.Size(88, 17);
this.ErrorConsoleCheckBox.TabIndex = 24;
this.ErrorConsoleCheckBox.Text = "Error console";
this.ErrorConsoleCheckBox.UseVisualStyleBackColor = true;
this.ErrorConsoleCheckBox.CheckedChanged += new System.EventHandler(this.ErrorConsoleCheckBox_CheckedChanged);
//
// HDRRenderingCheckBox
//
this.HDRRenderingCheckBox.AutoSize = true;
this.HDRRenderingCheckBox.Checked = true;
this.HDRRenderingCheckBox.CheckState = System.Windows.Forms.CheckState.Checked;
this.HDRRenderingCheckBox.Location = new System.Drawing.Point(19, 14);
this.HDRRenderingCheckBox.Name = "HDRRenderingCheckBox";
this.HDRRenderingCheckBox.Size = new System.Drawing.Size(97, 17);
this.HDRRenderingCheckBox.TabIndex = 0;
this.HDRRenderingCheckBox.Text = "HDR rendering";
this.HDRRenderingCheckBox.UseVisualStyleBackColor = true;
this.HDRRenderingCheckBox.CheckedChanged += new System.EventHandler(this.HDRRenderingCheckBox_CheckedChanged);
//
// SkydomeCheckBox
//
this.SkydomeCheckBox.AutoSize = true;
this.SkydomeCheckBox.Location = new System.Drawing.Point(19, 60);
this.SkydomeCheckBox.Name = "SkydomeCheckBox";
this.SkydomeCheckBox.Size = new System.Drawing.Size(70, 17);
this.SkydomeCheckBox.TabIndex = 2;
this.SkydomeCheckBox.Text = "Skydome";
this.SkydomeCheckBox.UseVisualStyleBackColor = true;
this.SkydomeCheckBox.CheckedChanged += new System.EventHandler(this.SkydomeCheckBox_CheckedChanged);
//
// ShadowsCheckBox
//
this.ShadowsCheckBox.AutoSize = true;
this.ShadowsCheckBox.Checked = true;
this.ShadowsCheckBox.CheckState = System.Windows.Forms.CheckState.Checked;
this.ShadowsCheckBox.Location = new System.Drawing.Point(19, 37);
this.ShadowsCheckBox.Name = "ShadowsCheckBox";
this.ShadowsCheckBox.Size = new System.Drawing.Size(70, 17);
this.ShadowsCheckBox.TabIndex = 1;
this.ShadowsCheckBox.Text = "Shadows";
this.ShadowsCheckBox.UseVisualStyleBackColor = true;
this.ShadowsCheckBox.CheckedChanged += new System.EventHandler(this.ShadowsCheckBox_CheckedChanged);
//
// WireframeCheckBox
//
this.WireframeCheckBox.AutoSize = true;
this.WireframeCheckBox.Location = new System.Drawing.Point(19, 196);
this.WireframeCheckBox.Name = "WireframeCheckBox";
this.WireframeCheckBox.Size = new System.Drawing.Size(74, 17);
this.WireframeCheckBox.TabIndex = 8;
this.WireframeCheckBox.Text = "Wireframe";
this.WireframeCheckBox.UseVisualStyleBackColor = true;
this.WireframeCheckBox.CheckedChanged += new System.EventHandler(this.WireframeCheckBox_CheckedChanged);
//
// RenderModeComboBox
//
this.RenderModeComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.RenderModeComboBox.FormattingEnabled = true;
this.RenderModeComboBox.Items.AddRange(new object[] {
"Default",
"Single texture",
"Vertex normals",
"Vertex tangents",
"Vertex colour 1",
"Vertex colour 2",
"Texture coord 1",
"Texture coord 2",
"Texture coord 3"});
this.RenderModeComboBox.Location = new System.Drawing.Point(83, 274);
this.RenderModeComboBox.Name = "RenderModeComboBox";
this.RenderModeComboBox.Size = new System.Drawing.Size(114, 21);
this.RenderModeComboBox.TabIndex = 12;
this.RenderModeComboBox.SelectedIndexChanged += new System.EventHandler(this.RenderModeComboBox_SelectedIndexChanged);
//
// label11
//
this.label11.AutoSize = true;
this.label11.Location = new System.Drawing.Point(7, 304);
this.label11.Name = "label11";
this.label11.Size = new System.Drawing.Size(67, 13);
this.label11.TabIndex = 13;
this.label11.Text = "Tex sampler:";
//
// TextureSamplerComboBox
//
this.TextureSamplerComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.TextureSamplerComboBox.Enabled = false;
this.TextureSamplerComboBox.FormattingEnabled = true;
this.TextureSamplerComboBox.Location = new System.Drawing.Point(83, 301);
this.TextureSamplerComboBox.Name = "TextureSamplerComboBox";
this.TextureSamplerComboBox.Size = new System.Drawing.Size(114, 21);
this.TextureSamplerComboBox.TabIndex = 14;
this.TextureSamplerComboBox.SelectedIndexChanged += new System.EventHandler(this.TextureSamplerComboBox_SelectedIndexChanged);
//
// TextureCoordsComboBox
//
this.TextureCoordsComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.TextureCoordsComboBox.Enabled = false;
this.TextureCoordsComboBox.FormattingEnabled = true;
this.TextureCoordsComboBox.Items.AddRange(new object[] {
"Texture coord 1",
"Texture coord 2",
"Texture coord 3"});
this.TextureCoordsComboBox.Location = new System.Drawing.Point(83, 328);
this.TextureCoordsComboBox.Name = "TextureCoordsComboBox";
this.TextureCoordsComboBox.Size = new System.Drawing.Size(114, 21);
this.TextureCoordsComboBox.TabIndex = 16;
this.TextureCoordsComboBox.SelectedIndexChanged += new System.EventHandler(this.TextureCoordsComboBox_SelectedIndexChanged);
//
// label10
//
this.label10.AutoSize = true;
this.label10.Location = new System.Drawing.Point(7, 277);
this.label10.Name = "label10";
this.label10.Size = new System.Drawing.Size(74, 13);
this.label10.TabIndex = 11;
this.label10.Text = "Render mode:";
//
// AnisotropicFilteringCheckBox
//
this.AnisotropicFilteringCheckBox.AutoSize = true;
this.AnisotropicFilteringCheckBox.Checked = true;
this.AnisotropicFilteringCheckBox.CheckState = System.Windows.Forms.CheckState.Checked;
this.AnisotropicFilteringCheckBox.Location = new System.Drawing.Point(19, 219);
this.AnisotropicFilteringCheckBox.Name = "AnisotropicFilteringCheckBox";
this.AnisotropicFilteringCheckBox.Size = new System.Drawing.Size(114, 17);
this.AnisotropicFilteringCheckBox.TabIndex = 9;
this.AnisotropicFilteringCheckBox.Text = "Anisotropic filtering";
this.AnisotropicFilteringCheckBox.UseVisualStyleBackColor = true;
this.AnisotropicFilteringCheckBox.CheckedChanged += new System.EventHandler(this.AnisotropicFilteringCheckBox_CheckedChanged);
//
// label14
//
this.label14.AutoSize = true;
this.label14.Location = new System.Drawing.Point(7, 331);
this.label14.Name = "label14";
this.label14.Size = new System.Drawing.Size(63, 13);
this.label14.TabIndex = 15;
this.label14.Text = "Tex coords:";
//
// ToolsPanelHideButton
//
this.ToolsPanelHideButton.Location = new System.Drawing.Point(3, 3);
this.ToolsPanelHideButton.Name = "ToolsPanelHideButton";
this.ToolsPanelHideButton.Size = new System.Drawing.Size(30, 23);
this.ToolsPanelHideButton.TabIndex = 0;
this.ToolsPanelHideButton.Text = "<<";
this.ToolsPanelHideButton.UseVisualStyleBackColor = true;
this.ToolsPanelHideButton.Click += new System.EventHandler(this.ToolsPanelHideButton_Click);
//
// ToolsDragPanel
//
this.ToolsDragPanel.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Right)));
this.ToolsDragPanel.Cursor = System.Windows.Forms.Cursors.VSplit;
this.ToolsDragPanel.Location = new System.Drawing.Point(227, 0);
this.ToolsDragPanel.Name = "ToolsDragPanel";
this.ToolsDragPanel.Size = new System.Drawing.Size(4, 559);
this.ToolsDragPanel.TabIndex = 17;
this.ToolsDragPanel.MouseDown += new System.Windows.Forms.MouseEventHandler(this.ToolsDragPanel_MouseDown);
this.ToolsDragPanel.MouseMove += new System.Windows.Forms.MouseEventHandler(this.ToolsDragPanel_MouseMove);
this.ToolsDragPanel.MouseUp += new System.Windows.Forms.MouseEventHandler(this.ToolsDragPanel_MouseUp);
//
// ToolsPanelShowButton
//
this.ToolsPanelShowButton.Location = new System.Drawing.Point(15, 15);
this.ToolsPanelShowButton.Name = "ToolsPanelShowButton";
this.ToolsPanelShowButton.Size = new System.Drawing.Size(30, 23);
this.ToolsPanelShowButton.TabIndex = 0;
this.ToolsPanelShowButton.Text = ">>";
this.ToolsPanelShowButton.UseVisualStyleBackColor = true;
this.ToolsPanelShowButton.Click += new System.EventHandler(this.ToolsPanelShowButton_Click);
//
// SaveFileDialog
//
this.SaveFileDialog.Filter = "All files|*.*";
//
// EnableRootMotionCheckBox // EnableRootMotionCheckBox
// //
this.EnableRootMotionCheckBox.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); this.EnableRootMotionCheckBox.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
@ -770,6 +321,468 @@
this.ClipDictComboBox.TabIndex = 33; this.ClipDictComboBox.TabIndex = 33;
this.ClipDictComboBox.TextChanged += new System.EventHandler(this.ClipDictComboBox_TextChanged); this.ClipDictComboBox.TextChanged += new System.EventHandler(this.ClipDictComboBox_TextChanged);
// //
// ModelsTreeView
//
this.ModelsTreeView.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.ModelsTreeView.CheckBoxes = true;
this.ModelsTreeView.Location = new System.Drawing.Point(0, 3);
this.ModelsTreeView.Name = "ModelsTreeView";
this.ModelsTreeView.ShowRootLines = false;
this.ModelsTreeView.Size = new System.Drawing.Size(217, 422);
this.ModelsTreeView.TabIndex = 1;
this.ModelsTreeView.AfterCheck += new System.Windows.Forms.TreeViewEventHandler(this.ModelsTreeView_AfterCheck);
this.ModelsTreeView.NodeMouseDoubleClick += new System.Windows.Forms.TreeNodeMouseClickEventHandler(this.ModelsTreeView_NodeMouseDoubleClick);
this.ModelsTreeView.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.ModelsTreeView_KeyPress);
//
// ToolsMaterialsTabPage
//
this.ToolsMaterialsTabPage.Controls.Add(this.MaterialEditorButton);
this.ToolsMaterialsTabPage.Controls.Add(this.TextureViewerButton);
this.ToolsMaterialsTabPage.Controls.Add(this.TexturesTreeView);
this.ToolsMaterialsTabPage.Location = new System.Drawing.Point(4, 22);
this.ToolsMaterialsTabPage.Name = "ToolsMaterialsTabPage";
this.ToolsMaterialsTabPage.Padding = new System.Windows.Forms.Padding(3);
this.ToolsMaterialsTabPage.Size = new System.Drawing.Size(217, 500);
this.ToolsMaterialsTabPage.TabIndex = 1;
this.ToolsMaterialsTabPage.Text = "Materials";
this.ToolsMaterialsTabPage.UseVisualStyleBackColor = true;
//
// MaterialEditorButton
//
this.MaterialEditorButton.Location = new System.Drawing.Point(3, 6);
this.MaterialEditorButton.Name = "MaterialEditorButton";
this.MaterialEditorButton.Size = new System.Drawing.Size(91, 23);
this.MaterialEditorButton.TabIndex = 3;
this.MaterialEditorButton.Text = "Material editor";
this.MaterialEditorButton.UseVisualStyleBackColor = true;
this.MaterialEditorButton.Click += new System.EventHandler(this.MaterialEditorButton_Click);
//
// TextureViewerButton
//
this.TextureViewerButton.Location = new System.Drawing.Point(111, 6);
this.TextureViewerButton.Name = "TextureViewerButton";
this.TextureViewerButton.Size = new System.Drawing.Size(91, 23);
this.TextureViewerButton.TabIndex = 2;
this.TextureViewerButton.Text = "Texture viewer";
this.TextureViewerButton.UseVisualStyleBackColor = true;
this.TextureViewerButton.Click += new System.EventHandler(this.TextureViewerButton_Click);
//
// TexturesTreeView
//
this.TexturesTreeView.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.TexturesTreeView.Location = new System.Drawing.Point(0, 34);
this.TexturesTreeView.Name = "TexturesTreeView";
this.TexturesTreeView.ShowRootLines = false;
this.TexturesTreeView.Size = new System.Drawing.Size(205, 466);
this.TexturesTreeView.TabIndex = 1;
//
// ToolsDetailsTabPage
//
this.ToolsDetailsTabPage.Controls.Add(this.DetailsPropertyGrid);
this.ToolsDetailsTabPage.Location = new System.Drawing.Point(4, 22);
this.ToolsDetailsTabPage.Name = "ToolsDetailsTabPage";
this.ToolsDetailsTabPage.Size = new System.Drawing.Size(217, 500);
this.ToolsDetailsTabPage.TabIndex = 2;
this.ToolsDetailsTabPage.Text = "Details";
this.ToolsDetailsTabPage.UseVisualStyleBackColor = true;
//
// DetailsPropertyGrid
//
this.DetailsPropertyGrid.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.DetailsPropertyGrid.HelpVisible = false;
this.DetailsPropertyGrid.Location = new System.Drawing.Point(0, 3);
this.DetailsPropertyGrid.Name = "DetailsPropertyGrid";
this.DetailsPropertyGrid.PropertySort = System.Windows.Forms.PropertySort.NoSort;
this.DetailsPropertyGrid.ReadOnly = true;
this.DetailsPropertyGrid.Size = new System.Drawing.Size(205, 497);
this.DetailsPropertyGrid.TabIndex = 1;
this.DetailsPropertyGrid.ToolbarVisible = false;
//
// ToolsOptionsTabPage
//
this.ToolsOptionsTabPage.Controls.Add(this.FragGlassCheckBox);
this.ToolsOptionsTabPage.Controls.Add(this.HDTexturesCheckBox);
this.ToolsOptionsTabPage.Controls.Add(this.SkeletonsCheckBox);
this.ToolsOptionsTabPage.Controls.Add(this.TimeOfDayLabel);
this.ToolsOptionsTabPage.Controls.Add(this.label19);
this.ToolsOptionsTabPage.Controls.Add(this.TimeOfDayTrackBar);
this.ToolsOptionsTabPage.Controls.Add(this.ControlLightDirCheckBox);
this.ToolsOptionsTabPage.Controls.Add(this.ShowCollisionMeshesCheckBox);
this.ToolsOptionsTabPage.Controls.Add(this.GridCheckBox);
this.ToolsOptionsTabPage.Controls.Add(this.GridCountComboBox);
this.ToolsOptionsTabPage.Controls.Add(this.label2);
this.ToolsOptionsTabPage.Controls.Add(this.GridSizeComboBox);
this.ToolsOptionsTabPage.Controls.Add(this.label1);
this.ToolsOptionsTabPage.Controls.Add(this.StatusBarCheckBox);
this.ToolsOptionsTabPage.Controls.Add(this.ErrorConsoleCheckBox);
this.ToolsOptionsTabPage.Controls.Add(this.HDRRenderingCheckBox);
this.ToolsOptionsTabPage.Controls.Add(this.SkydomeCheckBox);
this.ToolsOptionsTabPage.Controls.Add(this.ShadowsCheckBox);
this.ToolsOptionsTabPage.Controls.Add(this.WireframeCheckBox);
this.ToolsOptionsTabPage.Controls.Add(this.RenderModeComboBox);
this.ToolsOptionsTabPage.Controls.Add(this.label11);
this.ToolsOptionsTabPage.Controls.Add(this.TextureSamplerComboBox);
this.ToolsOptionsTabPage.Controls.Add(this.TextureCoordsComboBox);
this.ToolsOptionsTabPage.Controls.Add(this.label10);
this.ToolsOptionsTabPage.Controls.Add(this.AnisotropicFilteringCheckBox);
this.ToolsOptionsTabPage.Controls.Add(this.label14);
this.ToolsOptionsTabPage.Location = new System.Drawing.Point(4, 22);
this.ToolsOptionsTabPage.Name = "ToolsOptionsTabPage";
this.ToolsOptionsTabPage.Size = new System.Drawing.Size(217, 500);
this.ToolsOptionsTabPage.TabIndex = 3;
this.ToolsOptionsTabPage.Text = "Options";
this.ToolsOptionsTabPage.UseVisualStyleBackColor = true;
//
// HDTexturesCheckBox
//
this.HDTexturesCheckBox.AutoSize = true;
this.HDTexturesCheckBox.Checked = true;
this.HDTexturesCheckBox.CheckState = System.Windows.Forms.CheckState.Checked;
this.HDTexturesCheckBox.Location = new System.Drawing.Point(19, 231);
this.HDTexturesCheckBox.Name = "HDTexturesCheckBox";
this.HDTexturesCheckBox.Size = new System.Drawing.Size(82, 17);
this.HDTexturesCheckBox.TabIndex = 10;
this.HDTexturesCheckBox.Text = "HD textures";
this.HDTexturesCheckBox.UseVisualStyleBackColor = true;
this.HDTexturesCheckBox.CheckedChanged += new System.EventHandler(this.HDTexturesCheckBox_CheckedChanged);
//
// SkeletonsCheckBox
//
this.SkeletonsCheckBox.AutoSize = true;
this.SkeletonsCheckBox.Location = new System.Drawing.Point(19, 426);
this.SkeletonsCheckBox.Name = "SkeletonsCheckBox";
this.SkeletonsCheckBox.Size = new System.Drawing.Size(103, 17);
this.SkeletonsCheckBox.TabIndex = 22;
this.SkeletonsCheckBox.Text = "Show Skeletons";
this.SkeletonsCheckBox.UseVisualStyleBackColor = true;
this.SkeletonsCheckBox.CheckedChanged += new System.EventHandler(this.SkeletonsCheckBox_CheckedChanged);
//
// TimeOfDayLabel
//
this.TimeOfDayLabel.AutoSize = true;
this.TimeOfDayLabel.Location = new System.Drawing.Point(78, 99);
this.TimeOfDayLabel.Name = "TimeOfDayLabel";
this.TimeOfDayLabel.Size = new System.Drawing.Size(34, 13);
this.TimeOfDayLabel.TabIndex = 5;
this.TimeOfDayLabel.Text = "12:00";
//
// label19
//
this.label19.AutoSize = true;
this.label19.Location = new System.Drawing.Point(7, 99);
this.label19.Name = "label19";
this.label19.Size = new System.Drawing.Size(65, 13);
this.label19.TabIndex = 4;
this.label19.Text = "Time of day:";
//
// TimeOfDayTrackBar
//
this.TimeOfDayTrackBar.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.TimeOfDayTrackBar.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.TimeOfDayTrackBar.LargeChange = 60;
this.TimeOfDayTrackBar.Location = new System.Drawing.Point(9, 115);
this.TimeOfDayTrackBar.Maximum = 1440;
this.TimeOfDayTrackBar.Name = "TimeOfDayTrackBar";
this.TimeOfDayTrackBar.Size = new System.Drawing.Size(188, 45);
this.TimeOfDayTrackBar.TabIndex = 6;
this.TimeOfDayTrackBar.TickFrequency = 60;
this.TimeOfDayTrackBar.Value = 720;
this.TimeOfDayTrackBar.Scroll += new System.EventHandler(this.TimeOfDayTrackBar_Scroll);
//
// ControlLightDirCheckBox
//
this.ControlLightDirCheckBox.AutoSize = true;
this.ControlLightDirCheckBox.Location = new System.Drawing.Point(19, 77);
this.ControlLightDirCheckBox.Name = "ControlLightDirCheckBox";
this.ControlLightDirCheckBox.Size = new System.Drawing.Size(124, 17);
this.ControlLightDirCheckBox.TabIndex = 3;
this.ControlLightDirCheckBox.Text = "Control light direction";
this.ControlLightDirCheckBox.UseVisualStyleBackColor = true;
this.ControlLightDirCheckBox.CheckedChanged += new System.EventHandler(this.ControlLightDirCheckBox_CheckedChanged);
//
// ShowCollisionMeshesCheckBox
//
this.ShowCollisionMeshesCheckBox.AutoSize = true;
this.ShowCollisionMeshesCheckBox.Location = new System.Drawing.Point(19, 162);
this.ShowCollisionMeshesCheckBox.Name = "ShowCollisionMeshesCheckBox";
this.ShowCollisionMeshesCheckBox.Size = new System.Drawing.Size(132, 17);
this.ShowCollisionMeshesCheckBox.TabIndex = 7;
this.ShowCollisionMeshesCheckBox.Text = "Show collision meshes";
this.ShowCollisionMeshesCheckBox.UseVisualStyleBackColor = true;
this.ShowCollisionMeshesCheckBox.CheckedChanged += new System.EventHandler(this.ShowCollisionMeshesCheckBox_CheckedChanged);
//
// GridCheckBox
//
this.GridCheckBox.AutoSize = true;
this.GridCheckBox.Location = new System.Drawing.Point(19, 345);
this.GridCheckBox.Name = "GridCheckBox";
this.GridCheckBox.Size = new System.Drawing.Size(45, 17);
this.GridCheckBox.TabIndex = 17;
this.GridCheckBox.Text = "Grid";
this.GridCheckBox.UseVisualStyleBackColor = true;
this.GridCheckBox.CheckedChanged += new System.EventHandler(this.GridCheckBox_CheckedChanged);
//
// GridCountComboBox
//
this.GridCountComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.GridCountComboBox.FormattingEnabled = true;
this.GridCountComboBox.Items.AddRange(new object[] {
"20",
"40",
"60",
"100"});
this.GridCountComboBox.Location = new System.Drawing.Point(83, 392);
this.GridCountComboBox.Name = "GridCountComboBox";
this.GridCountComboBox.Size = new System.Drawing.Size(114, 21);
this.GridCountComboBox.TabIndex = 21;
this.GridCountComboBox.SelectedIndexChanged += new System.EventHandler(this.GridCountComboBox_SelectedIndexChanged);
//
// label2
//
this.label2.AutoSize = true;
this.label2.Location = new System.Drawing.Point(7, 395);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(59, 13);
this.label2.TabIndex = 20;
this.label2.Text = "Grid count:";
//
// GridSizeComboBox
//
this.GridSizeComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.GridSizeComboBox.FormattingEnabled = true;
this.GridSizeComboBox.Items.AddRange(new object[] {
"0.1",
"1.0",
"10",
"100"});
this.GridSizeComboBox.Location = new System.Drawing.Point(83, 365);
this.GridSizeComboBox.Name = "GridSizeComboBox";
this.GridSizeComboBox.Size = new System.Drawing.Size(114, 21);
this.GridSizeComboBox.TabIndex = 19;
this.GridSizeComboBox.SelectedIndexChanged += new System.EventHandler(this.GridSizeComboBox_SelectedIndexChanged);
//
// label1
//
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(7, 368);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(70, 13);
this.label1.TabIndex = 18;
this.label1.Text = "Grid unit size:";
//
// StatusBarCheckBox
//
this.StatusBarCheckBox.AutoSize = true;
this.StatusBarCheckBox.Checked = true;
this.StatusBarCheckBox.CheckState = System.Windows.Forms.CheckState.Checked;
this.StatusBarCheckBox.Location = new System.Drawing.Point(19, 480);
this.StatusBarCheckBox.Name = "StatusBarCheckBox";
this.StatusBarCheckBox.Size = new System.Drawing.Size(74, 17);
this.StatusBarCheckBox.TabIndex = 23;
this.StatusBarCheckBox.Text = "Status bar";
this.StatusBarCheckBox.UseVisualStyleBackColor = true;
this.StatusBarCheckBox.CheckedChanged += new System.EventHandler(this.StatusBarCheckBox_CheckedChanged);
//
// ErrorConsoleCheckBox
//
this.ErrorConsoleCheckBox.AutoSize = true;
this.ErrorConsoleCheckBox.Location = new System.Drawing.Point(105, 480);
this.ErrorConsoleCheckBox.Name = "ErrorConsoleCheckBox";
this.ErrorConsoleCheckBox.Size = new System.Drawing.Size(88, 17);
this.ErrorConsoleCheckBox.TabIndex = 24;
this.ErrorConsoleCheckBox.Text = "Error console";
this.ErrorConsoleCheckBox.UseVisualStyleBackColor = true;
this.ErrorConsoleCheckBox.CheckedChanged += new System.EventHandler(this.ErrorConsoleCheckBox_CheckedChanged);
//
// HDRRenderingCheckBox
//
this.HDRRenderingCheckBox.AutoSize = true;
this.HDRRenderingCheckBox.Checked = true;
this.HDRRenderingCheckBox.CheckState = System.Windows.Forms.CheckState.Checked;
this.HDRRenderingCheckBox.Location = new System.Drawing.Point(19, 14);
this.HDRRenderingCheckBox.Name = "HDRRenderingCheckBox";
this.HDRRenderingCheckBox.Size = new System.Drawing.Size(97, 17);
this.HDRRenderingCheckBox.TabIndex = 0;
this.HDRRenderingCheckBox.Text = "HDR rendering";
this.HDRRenderingCheckBox.UseVisualStyleBackColor = true;
this.HDRRenderingCheckBox.CheckedChanged += new System.EventHandler(this.HDRRenderingCheckBox_CheckedChanged);
//
// SkydomeCheckBox
//
this.SkydomeCheckBox.AutoSize = true;
this.SkydomeCheckBox.Location = new System.Drawing.Point(19, 56);
this.SkydomeCheckBox.Name = "SkydomeCheckBox";
this.SkydomeCheckBox.Size = new System.Drawing.Size(70, 17);
this.SkydomeCheckBox.TabIndex = 2;
this.SkydomeCheckBox.Text = "Skydome";
this.SkydomeCheckBox.UseVisualStyleBackColor = true;
this.SkydomeCheckBox.CheckedChanged += new System.EventHandler(this.SkydomeCheckBox_CheckedChanged);
//
// ShadowsCheckBox
//
this.ShadowsCheckBox.AutoSize = true;
this.ShadowsCheckBox.Checked = true;
this.ShadowsCheckBox.CheckState = System.Windows.Forms.CheckState.Checked;
this.ShadowsCheckBox.Location = new System.Drawing.Point(19, 35);
this.ShadowsCheckBox.Name = "ShadowsCheckBox";
this.ShadowsCheckBox.Size = new System.Drawing.Size(70, 17);
this.ShadowsCheckBox.TabIndex = 1;
this.ShadowsCheckBox.Text = "Shadows";
this.ShadowsCheckBox.UseVisualStyleBackColor = true;
this.ShadowsCheckBox.CheckedChanged += new System.EventHandler(this.ShadowsCheckBox_CheckedChanged);
//
// WireframeCheckBox
//
this.WireframeCheckBox.AutoSize = true;
this.WireframeCheckBox.Location = new System.Drawing.Point(19, 185);
this.WireframeCheckBox.Name = "WireframeCheckBox";
this.WireframeCheckBox.Size = new System.Drawing.Size(74, 17);
this.WireframeCheckBox.TabIndex = 8;
this.WireframeCheckBox.Text = "Wireframe";
this.WireframeCheckBox.UseVisualStyleBackColor = true;
this.WireframeCheckBox.CheckedChanged += new System.EventHandler(this.WireframeCheckBox_CheckedChanged);
//
// RenderModeComboBox
//
this.RenderModeComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.RenderModeComboBox.FormattingEnabled = true;
this.RenderModeComboBox.Items.AddRange(new object[] {
"Default",
"Single texture",
"Vertex normals",
"Vertex tangents",
"Vertex colour 1",
"Vertex colour 2",
"Texture coord 1",
"Texture coord 2",
"Texture coord 3"});
this.RenderModeComboBox.Location = new System.Drawing.Point(83, 255);
this.RenderModeComboBox.Name = "RenderModeComboBox";
this.RenderModeComboBox.Size = new System.Drawing.Size(114, 21);
this.RenderModeComboBox.TabIndex = 12;
this.RenderModeComboBox.SelectedIndexChanged += new System.EventHandler(this.RenderModeComboBox_SelectedIndexChanged);
//
// label11
//
this.label11.AutoSize = true;
this.label11.Location = new System.Drawing.Point(7, 285);
this.label11.Name = "label11";
this.label11.Size = new System.Drawing.Size(67, 13);
this.label11.TabIndex = 13;
this.label11.Text = "Tex sampler:";
//
// TextureSamplerComboBox
//
this.TextureSamplerComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.TextureSamplerComboBox.Enabled = false;
this.TextureSamplerComboBox.FormattingEnabled = true;
this.TextureSamplerComboBox.Location = new System.Drawing.Point(83, 282);
this.TextureSamplerComboBox.Name = "TextureSamplerComboBox";
this.TextureSamplerComboBox.Size = new System.Drawing.Size(114, 21);
this.TextureSamplerComboBox.TabIndex = 14;
this.TextureSamplerComboBox.SelectedIndexChanged += new System.EventHandler(this.TextureSamplerComboBox_SelectedIndexChanged);
//
// TextureCoordsComboBox
//
this.TextureCoordsComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.TextureCoordsComboBox.Enabled = false;
this.TextureCoordsComboBox.FormattingEnabled = true;
this.TextureCoordsComboBox.Items.AddRange(new object[] {
"Texture coord 1",
"Texture coord 2",
"Texture coord 3"});
this.TextureCoordsComboBox.Location = new System.Drawing.Point(83, 309);
this.TextureCoordsComboBox.Name = "TextureCoordsComboBox";
this.TextureCoordsComboBox.Size = new System.Drawing.Size(114, 21);
this.TextureCoordsComboBox.TabIndex = 16;
this.TextureCoordsComboBox.SelectedIndexChanged += new System.EventHandler(this.TextureCoordsComboBox_SelectedIndexChanged);
//
// label10
//
this.label10.AutoSize = true;
this.label10.Location = new System.Drawing.Point(7, 258);
this.label10.Name = "label10";
this.label10.Size = new System.Drawing.Size(74, 13);
this.label10.TabIndex = 11;
this.label10.Text = "Render mode:";
//
// AnisotropicFilteringCheckBox
//
this.AnisotropicFilteringCheckBox.AutoSize = true;
this.AnisotropicFilteringCheckBox.Checked = true;
this.AnisotropicFilteringCheckBox.CheckState = System.Windows.Forms.CheckState.Checked;
this.AnisotropicFilteringCheckBox.Location = new System.Drawing.Point(19, 208);
this.AnisotropicFilteringCheckBox.Name = "AnisotropicFilteringCheckBox";
this.AnisotropicFilteringCheckBox.Size = new System.Drawing.Size(114, 17);
this.AnisotropicFilteringCheckBox.TabIndex = 9;
this.AnisotropicFilteringCheckBox.Text = "Anisotropic filtering";
this.AnisotropicFilteringCheckBox.UseVisualStyleBackColor = true;
this.AnisotropicFilteringCheckBox.CheckedChanged += new System.EventHandler(this.AnisotropicFilteringCheckBox_CheckedChanged);
//
// label14
//
this.label14.AutoSize = true;
this.label14.Location = new System.Drawing.Point(7, 312);
this.label14.Name = "label14";
this.label14.Size = new System.Drawing.Size(63, 13);
this.label14.TabIndex = 15;
this.label14.Text = "Tex coords:";
//
// ToolsPanelHideButton
//
this.ToolsPanelHideButton.Location = new System.Drawing.Point(3, 3);
this.ToolsPanelHideButton.Name = "ToolsPanelHideButton";
this.ToolsPanelHideButton.Size = new System.Drawing.Size(30, 23);
this.ToolsPanelHideButton.TabIndex = 0;
this.ToolsPanelHideButton.Text = "<<";
this.ToolsPanelHideButton.UseVisualStyleBackColor = true;
this.ToolsPanelHideButton.Click += new System.EventHandler(this.ToolsPanelHideButton_Click);
//
// ToolsDragPanel
//
this.ToolsDragPanel.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Right)));
this.ToolsDragPanel.Cursor = System.Windows.Forms.Cursors.VSplit;
this.ToolsDragPanel.Location = new System.Drawing.Point(227, 0);
this.ToolsDragPanel.Name = "ToolsDragPanel";
this.ToolsDragPanel.Size = new System.Drawing.Size(4, 559);
this.ToolsDragPanel.TabIndex = 17;
this.ToolsDragPanel.MouseDown += new System.Windows.Forms.MouseEventHandler(this.ToolsDragPanel_MouseDown);
this.ToolsDragPanel.MouseMove += new System.Windows.Forms.MouseEventHandler(this.ToolsDragPanel_MouseMove);
this.ToolsDragPanel.MouseUp += new System.Windows.Forms.MouseEventHandler(this.ToolsDragPanel_MouseUp);
//
// ToolsPanelShowButton
//
this.ToolsPanelShowButton.Location = new System.Drawing.Point(15, 15);
this.ToolsPanelShowButton.Name = "ToolsPanelShowButton";
this.ToolsPanelShowButton.Size = new System.Drawing.Size(30, 23);
this.ToolsPanelShowButton.TabIndex = 0;
this.ToolsPanelShowButton.Text = ">>";
this.ToolsPanelShowButton.UseVisualStyleBackColor = true;
this.ToolsPanelShowButton.Click += new System.EventHandler(this.ToolsPanelShowButton_Click);
//
// SaveFileDialog
//
this.SaveFileDialog.Filter = "All files|*.*";
//
// FragGlassCheckBox
//
this.FragGlassCheckBox.AutoSize = true;
this.FragGlassCheckBox.Location = new System.Drawing.Point(19, 449);
this.FragGlassCheckBox.Name = "FragGlassCheckBox";
this.FragGlassCheckBox.Size = new System.Drawing.Size(175, 17);
this.FragGlassCheckBox.TabIndex = 25;
this.FragGlassCheckBox.Text = "Show Fragments Glass Outlines";
this.FragGlassCheckBox.UseVisualStyleBackColor = true;
this.FragGlassCheckBox.CheckedChanged += new System.EventHandler(this.FragGlassCheckBox_CheckedChanged);
//
// ModelForm // ModelForm
// //
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
@ -872,5 +885,6 @@
private System.Windows.Forms.ComboBox ClipComboBox; private System.Windows.Forms.ComboBox ClipComboBox;
private System.Windows.Forms.Label label21; private System.Windows.Forms.Label label21;
private System.Windows.Forms.ComboBox ClipDictComboBox; private System.Windows.Forms.ComboBox ClipDictComboBox;
private System.Windows.Forms.CheckBox FragGlassCheckBox;
} }
} }

View File

@ -138,6 +138,7 @@ namespace CodeWalker.Forms
Renderer.renderclouds = false; Renderer.renderclouds = false;
Renderer.rendermoon = false; Renderer.rendermoon = false;
Renderer.renderskeletons = false; Renderer.renderskeletons = false;
Renderer.renderfragwindows = false;
Renderer.SelectionFlagsTestAll = true; Renderer.SelectionFlagsTestAll = true;
//var timeofday = 13.6f; //var timeofday = 13.6f;
@ -272,6 +273,7 @@ namespace CodeWalker.Forms
Renderer.RenderQueued(); Renderer.RenderQueued();
Renderer.RenderSelectionGeometry(MapSelectionMode.Entity);
Renderer.RenderFinalPass(); Renderer.RenderFinalPass();
@ -1877,6 +1879,11 @@ namespace CodeWalker.Forms
Renderer.renderskeletons = SkeletonsCheckBox.Checked; Renderer.renderskeletons = SkeletonsCheckBox.Checked;
} }
private void FragGlassCheckBox_CheckedChanged(object sender, EventArgs e)
{
Renderer.renderfragwindows = FragGlassCheckBox.Checked;
}
private void ErrorConsoleCheckBox_CheckedChanged(object sender, EventArgs e) private void ErrorConsoleCheckBox_CheckedChanged(object sender, EventArgs e)
{ {
ConsolePanel.Visible = ErrorConsoleCheckBox.Checked; ConsolePanel.Visible = ErrorConsoleCheckBox.Checked;

View File

@ -111,6 +111,7 @@ namespace CodeWalker.Rendering
public bool renderlodlights = true; //render LOD lights from ymaps public bool renderlodlights = true; //render LOD lights from ymaps
public bool renderdistlodlights = true; //render distant lod lights (coronas) public bool renderdistlodlights = true; //render distant lod lights (coronas)
public bool rendercars = false; public bool rendercars = false;
public bool renderfragwindows = false; //render selection geometry for window glass data in fragments
public bool rendercollisionmeshes = Settings.Default.ShowCollisionMeshes; public bool rendercollisionmeshes = Settings.Default.ShowCollisionMeshes;
public bool rendercollisionmeshlayerdrawable = true; public bool rendercollisionmeshlayerdrawable = true;
@ -921,6 +922,20 @@ namespace CodeWalker.Rendering
SelectionLineVerts.Add(new VertexTypePC() { Position = p2, Colour = col }); SelectionLineVerts.Add(new VertexTypePC() { Position = p2, Colour = col });
} }
public void RenderSelectionQuad(Vector3 p1, Vector3 p2, Vector3 p3, Vector3 p4, uint col)
{
var v1 = new VertexTypePC() { Position = p1, Colour = col };
var v2 = new VertexTypePC() { Position = p2, Colour = col };
var v3 = new VertexTypePC() { Position = p3, Colour = col };
var v4 = new VertexTypePC() { Position = p4, Colour = col };
SelectionTriVerts.Add(v1);
SelectionTriVerts.Add(v2);
SelectionTriVerts.Add(v3);
SelectionTriVerts.Add(v3);
SelectionTriVerts.Add(v4);
SelectionTriVerts.Add(v1);
}
public void RenderSelectionCone(Vector3 position, Vector3 ax, Vector3 ay, Vector3 dir, float radius, float height, uint col) public void RenderSelectionCone(Vector3 position, Vector3 ax, Vector3 ay, Vector3 dir, float radius, float height, uint col)
{ {
const int Reso = 36; const int Reso = 36;
@ -2887,6 +2902,123 @@ namespace CodeWalker.Rendering
} }
if (renderfragwindows)
{
var colblu = (uint)(new Color(0, 0, 255, 255).ToRgba());
var colred = (uint)(new Color(255, 0, 0, 255).ToRgba());
var eori = Quaternion.Identity;
var epos = Vector3.Zero;
if (ent != null)
{
eori = ent.Orientation;
epos = ent.Position;
}
if (f.GlassWindows?.data_items != null)
{
for (int i = 0; i < f.GlassWindows.data_items.Length; i++)
{
var gw = f.GlassWindows.data_items[i];
var projt = new Vector3(gw.UnkFloat1, gw.UnkFloat2, gw.UnkFloat3);//row0? or row3? maybe investigate more
var proju = new Vector3(gw.UnkFloat5, gw.UnkFloat6, gw.UnkFloat7);//row1 of XYZ>UV projection
var projv = new Vector3(gw.UnkFloat9, gw.UnkFloat10, gw.UnkFloat11);//row2 of XYZ>UV projection
//var unk01 = new Vector2(gw.UnkFloat13, gw.UnkFloat14);//offset?
//var unk02 = new Vector2(gw.UnkFloat15, gw.UnkFloat16);//scale? sum of this and above often gives integers eg 1, 6
//var thick = gw.UnkFloat17; //thickness of the glass
//var unkuv = new Vector2(gw.UnkFloat18, gw.UnkFloat19); //another scale in UV space..?
//var tangt = new Vector3(gw.UnkFloat20, gw.UnkFloat21, gw.UnkFloat22);//direction of surface tangent
//var bones = f.Drawable?.Skeleton?.Bones?.Items; //todo: use bones instead?
var grp = gw.Group;
var grplod = gw.GroupLOD;
var xforms = grplod?.FragTransforms?.Matrices;
var xoffs = Vector3.Zero;
if ((grp != null) && (xforms != null) && (grp.Index < xforms.Length) && (grplod != null))
{
var xform = xforms[grp.Index];
xoffs = xform.TranslationVector + grplod.Unknown_30h;
}
var m = new Matrix();
m.Row1 = new Vector4(projt, 0);
m.Row2 = new Vector4(proju, 0);
m.Row3 = new Vector4(projv, 0);
m.Row4 = new Vector4(xoffs, 1);
var v0 = m.Multiply(new Vector3(1, 0, 0));
var v1 = m.Multiply(new Vector3(1, 0, 1));
var v2 = m.Multiply(new Vector3(1, 1, 1));
var v3 = m.Multiply(new Vector3(1, 1, 0));
var c0 = eori.Multiply(v0) + epos;
var c1 = eori.Multiply(v1) + epos;
var c2 = eori.Multiply(v2) + epos;
var c3 = eori.Multiply(v3) + epos;
RenderSelectionLine(c0, c1, colblu);
RenderSelectionLine(c1, c2, colblu);
RenderSelectionLine(c2, c3, colblu);
RenderSelectionLine(c3, c0, colblu);
//RenderSelectionLine(c0, c0 + tangt, colred);
}
}
if (f.VehicleGlassWindows?.Windows != null)
{
for (int i = 0; i < f.VehicleGlassWindows.Windows.Length; i++)
{
var vgw = f.VehicleGlassWindows.Windows[i];
var projt = new Vector3(vgw.UnkFloat1, vgw.UnkFloat2, vgw.UnkFloat3);//row1
var proju = new Vector3(vgw.UnkFloat5, vgw.UnkFloat6, vgw.UnkFloat7);//row2
var projv = new Vector3(vgw.UnkFloat9, vgw.UnkFloat10, vgw.UnkFloat11);//row3
var projw = new Vector3(vgw.UnkFloat13, vgw.UnkFloat14, vgw.UnkFloat15);//row4
//var grp = vgw.Group;
//var grplod = vgw.GroupLOD;
var m = new Matrix();
m.Row1 = new Vector4(projt, 0);
m.Row2 = new Vector4(proju, 0);
m.Row3 = new Vector4(projv, 0);
m.Row4 = new Vector4(projw, 1);
m.Invert();//ouch
var min = (new Vector3(0, 0, 0));
var max = (new Vector3(vgw.ShatterMapWidth, vgw.ItemDataCount, 1));
var v0 = m.MultiplyW(new Vector3(min.X, min.Y, 0));
var v1 = m.MultiplyW(new Vector3(min.X, max.Y, 0));
var v2 = m.MultiplyW(new Vector3(max.X, max.Y, 0));
var v3 = m.MultiplyW(new Vector3(max.X, min.Y, 0));
var c0 = eori.Multiply(v0) + epos;
var c1 = eori.Multiply(v1) + epos;
var c2 = eori.Multiply(v2) + epos;
var c3 = eori.Multiply(v3) + epos;
RenderSelectionLine(c0, c1, colblu);
RenderSelectionLine(c1, c2, colblu);
RenderSelectionLine(c2, c3, colblu);
RenderSelectionLine(c3, c0, colblu);
if (vgw.ShatterMap != null)
{
var width = vgw.ShatterMapWidth;
var height = vgw.ShatterMap.Length;
for (int y = 0; y < height; y++)
{
var smr = vgw.ShatterMap[y];
for (int x = 0; x < width; x++)
{
var v = smr.GetValue(x);
if ((v < 0) || (v > 255)) continue;
var col = (uint)(new Color(v, v, v, 127).ToRgba());
v0 = m.MultiplyW(new Vector3(x, y, 0));
v1 = m.MultiplyW(new Vector3(x, y+1, 0));
v2 = m.MultiplyW(new Vector3(x+1, y+1, 0));
v3 = m.MultiplyW(new Vector3(x+1, y, 0));
c0 = eori.Multiply(v0) + epos;
c1 = eori.Multiply(v1) + epos;
c2 = eori.Multiply(v2) + epos;
c3 = eori.Multiply(v3) + epos;
RenderSelectionQuad(c0, c1, c2, c3, col);//extra ouch
}
}
}
}
}
}
return true; return true;
} }

View File

@ -90,6 +90,7 @@
this.ToolsPanelShowButton = new System.Windows.Forms.Button(); this.ToolsPanelShowButton = new System.Windows.Forms.Button();
this.ConsolePanel = new System.Windows.Forms.Panel(); this.ConsolePanel = new System.Windows.Forms.Panel();
this.ConsoleTextBox = new CodeWalker.WinForms.TextBoxFix(); this.ConsoleTextBox = new CodeWalker.WinForms.TextBoxFix();
this.ShatterMapsCheckBox = new System.Windows.Forms.CheckBox();
this.StatusStrip.SuspendLayout(); this.StatusStrip.SuspendLayout();
this.ToolsPanel.SuspendLayout(); this.ToolsPanel.SuspendLayout();
this.ToolsTabControl.SuspendLayout(); this.ToolsTabControl.SuspendLayout();
@ -419,6 +420,7 @@
// //
// ToolsOptionsTabPage // ToolsOptionsTabPage
// //
this.ToolsOptionsTabPage.Controls.Add(this.ShatterMapsCheckBox);
this.ToolsOptionsTabPage.Controls.Add(this.HDTexturesCheckBox); this.ToolsOptionsTabPage.Controls.Add(this.HDTexturesCheckBox);
this.ToolsOptionsTabPage.Controls.Add(this.SkeletonsCheckBox); this.ToolsOptionsTabPage.Controls.Add(this.SkeletonsCheckBox);
this.ToolsOptionsTabPage.Controls.Add(this.TimeOfDayLabel); this.ToolsOptionsTabPage.Controls.Add(this.TimeOfDayLabel);
@ -594,7 +596,7 @@
this.StatusBarCheckBox.AutoSize = true; this.StatusBarCheckBox.AutoSize = true;
this.StatusBarCheckBox.Checked = true; this.StatusBarCheckBox.Checked = true;
this.StatusBarCheckBox.CheckState = System.Windows.Forms.CheckState.Checked; this.StatusBarCheckBox.CheckState = System.Windows.Forms.CheckState.Checked;
this.StatusBarCheckBox.Location = new System.Drawing.Point(19, 480); this.StatusBarCheckBox.Location = new System.Drawing.Point(19, 519);
this.StatusBarCheckBox.Name = "StatusBarCheckBox"; this.StatusBarCheckBox.Name = "StatusBarCheckBox";
this.StatusBarCheckBox.Size = new System.Drawing.Size(74, 17); this.StatusBarCheckBox.Size = new System.Drawing.Size(74, 17);
this.StatusBarCheckBox.TabIndex = 23; this.StatusBarCheckBox.TabIndex = 23;
@ -605,7 +607,7 @@
// ErrorConsoleCheckBox // ErrorConsoleCheckBox
// //
this.ErrorConsoleCheckBox.AutoSize = true; this.ErrorConsoleCheckBox.AutoSize = true;
this.ErrorConsoleCheckBox.Location = new System.Drawing.Point(105, 480); this.ErrorConsoleCheckBox.Location = new System.Drawing.Point(105, 519);
this.ErrorConsoleCheckBox.Name = "ErrorConsoleCheckBox"; this.ErrorConsoleCheckBox.Name = "ErrorConsoleCheckBox";
this.ErrorConsoleCheckBox.Size = new System.Drawing.Size(88, 17); this.ErrorConsoleCheckBox.Size = new System.Drawing.Size(88, 17);
this.ErrorConsoleCheckBox.TabIndex = 24; this.ErrorConsoleCheckBox.TabIndex = 24;
@ -804,6 +806,17 @@
this.ConsoleTextBox.Size = new System.Drawing.Size(695, 95); this.ConsoleTextBox.Size = new System.Drawing.Size(695, 95);
this.ConsoleTextBox.TabIndex = 0; this.ConsoleTextBox.TabIndex = 0;
// //
// ShatterMapsCheckBox
//
this.ShatterMapsCheckBox.AutoSize = true;
this.ShatterMapsCheckBox.Location = new System.Drawing.Point(19, 467);
this.ShatterMapsCheckBox.Name = "ShatterMapsCheckBox";
this.ShatterMapsCheckBox.Size = new System.Drawing.Size(161, 17);
this.ShatterMapsCheckBox.TabIndex = 25;
this.ShatterMapsCheckBox.Text = "Show Window Shatter Maps";
this.ShatterMapsCheckBox.UseVisualStyleBackColor = true;
this.ShatterMapsCheckBox.CheckedChanged += new System.EventHandler(this.ShatterMapsCheckBox_CheckedChanged);
//
// VehicleForm // VehicleForm
// //
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
@ -908,5 +921,6 @@
private System.Windows.Forms.Button ConvRoofButton; private System.Windows.Forms.Button ConvRoofButton;
private System.Windows.Forms.Label ConvRoofNameLabel; private System.Windows.Forms.Label ConvRoofNameLabel;
private System.Windows.Forms.Label label8; private System.Windows.Forms.Label label8;
private System.Windows.Forms.CheckBox ShatterMapsCheckBox;
} }
} }

View File

@ -101,6 +101,7 @@ namespace CodeWalker
//Renderer.individualcloudfrag = "Contrails"; //Renderer.individualcloudfrag = "Contrails";
Renderer.rendermoon = false; Renderer.rendermoon = false;
Renderer.renderskeletons = false; Renderer.renderskeletons = false;
Renderer.renderfragwindows = false;
Renderer.SelectionFlagsTestAll = true; Renderer.SelectionFlagsTestAll = true;
} }
@ -202,7 +203,7 @@ namespace CodeWalker
//Renderer.RenderBounds(MapSelectionMode.Entity); //Renderer.RenderBounds(MapSelectionMode.Entity);
//Renderer.RenderSelectionGeometry(MapSelectionMode.Entity); Renderer.RenderSelectionGeometry(MapSelectionMode.Entity);
//RenderMoused(); //RenderMoused();
@ -1351,6 +1352,11 @@ namespace CodeWalker
Renderer.renderskeletons = SkeletonsCheckBox.Checked; Renderer.renderskeletons = SkeletonsCheckBox.Checked;
} }
private void ShatterMapsCheckBox_CheckedChanged(object sender, EventArgs e)
{
Renderer.renderfragwindows = ShatterMapsCheckBox.Checked;
}
private void ErrorConsoleCheckBox_CheckedChanged(object sender, EventArgs e) private void ErrorConsoleCheckBox_CheckedChanged(object sender, EventArgs e)
{ {
ConsolePanel.Visible = ErrorConsoleCheckBox.Checked; ConsolePanel.Visible = ErrorConsoleCheckBox.Checked;