mirror of
https://mirror.ghproxy.com/https://github.com/dexyfex/CodeWalker
synced 2024-11-26 17:02:53 +08:00
Render window glass projections from fragments in model viewer and vehicle viewer
This commit is contained in:
parent
5cdde7a34f
commit
7eec785459
@ -198,6 +198,7 @@ namespace CodeWalker.GameFiles
|
||||
|
||||
|
||||
AssignChildrenShaders();
|
||||
AssignGlassWindowsGroups();
|
||||
|
||||
#if DEBUG
|
||||
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()
|
||||
@ -1113,6 +1162,8 @@ namespace CodeWalker.GameFiles
|
||||
public float UnkFloat22 { get; set; }
|
||||
public uint UnkUint4 = 0x7f800001; // 0x7f800001
|
||||
|
||||
public FragPhysTypeGroup Group { get; set; }
|
||||
public FragPhysicsLOD GroupLOD { get; set; }
|
||||
|
||||
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()
|
||||
{
|
||||
@ -3933,8 +4001,8 @@ namespace CodeWalker.GameFiles
|
||||
public byte UnkByte4F { get; set; }
|
||||
public byte UnkByte50 { get; set; }
|
||||
public byte UnkByte51 { get; set; } = 255; //0xFF
|
||||
public byte UnkByte52 { get; set; }
|
||||
public byte UnkByte53 { get; set; }
|
||||
public byte UnkByte52 { get; set; }//GlassWindows index
|
||||
public byte UnkByte53 { get; set; }//flags: 1=?, 2=glass, 4=?, ...
|
||||
public float UnkFloat54 { get; set; }
|
||||
public float UnkFloat58 { get; set; }
|
||||
public float UnkFloat5C { get; set; }
|
||||
|
924
CodeWalker/Forms/ModelForm.Designer.cs
generated
924
CodeWalker/Forms/ModelForm.Designer.cs
generated
@ -45,6 +45,11 @@
|
||||
this.SaveAsMenuButton = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.ToolsTabControl = new System.Windows.Forms.TabControl();
|
||||
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.ToolsMaterialsTabPage = new System.Windows.Forms.TabPage();
|
||||
this.MaterialEditorButton = new System.Windows.Forms.Button();
|
||||
@ -82,11 +87,7 @@
|
||||
this.ToolsDragPanel = new System.Windows.Forms.Panel();
|
||||
this.ToolsPanelShowButton = new System.Windows.Forms.Button();
|
||||
this.SaveFileDialog = new System.Windows.Forms.SaveFileDialog();
|
||||
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.FragGlassCheckBox = new System.Windows.Forms.CheckBox();
|
||||
this.StatusStrip.SuspendLayout();
|
||||
this.ConsolePanel.SuspendLayout();
|
||||
this.ToolsPanel.SuspendLayout();
|
||||
@ -262,456 +263,6 @@
|
||||
this.ToolsModelsTabPage.Text = "Models";
|
||||
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
|
||||
//
|
||||
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.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
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
@ -872,5 +885,6 @@
|
||||
private System.Windows.Forms.ComboBox ClipComboBox;
|
||||
private System.Windows.Forms.Label label21;
|
||||
private System.Windows.Forms.ComboBox ClipDictComboBox;
|
||||
private System.Windows.Forms.CheckBox FragGlassCheckBox;
|
||||
}
|
||||
}
|
@ -138,6 +138,7 @@ namespace CodeWalker.Forms
|
||||
Renderer.renderclouds = false;
|
||||
Renderer.rendermoon = false;
|
||||
Renderer.renderskeletons = false;
|
||||
Renderer.renderfragwindows = false;
|
||||
Renderer.SelectionFlagsTestAll = true;
|
||||
|
||||
//var timeofday = 13.6f;
|
||||
@ -272,6 +273,7 @@ namespace CodeWalker.Forms
|
||||
|
||||
Renderer.RenderQueued();
|
||||
|
||||
Renderer.RenderSelectionGeometry(MapSelectionMode.Entity);
|
||||
|
||||
Renderer.RenderFinalPass();
|
||||
|
||||
@ -1877,6 +1879,11 @@ namespace CodeWalker.Forms
|
||||
Renderer.renderskeletons = SkeletonsCheckBox.Checked;
|
||||
}
|
||||
|
||||
private void FragGlassCheckBox_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
Renderer.renderfragwindows = FragGlassCheckBox.Checked;
|
||||
}
|
||||
|
||||
private void ErrorConsoleCheckBox_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
ConsolePanel.Visible = ErrorConsoleCheckBox.Checked;
|
||||
|
@ -111,6 +111,7 @@ namespace CodeWalker.Rendering
|
||||
public bool renderlodlights = true; //render LOD lights from ymaps
|
||||
public bool renderdistlodlights = true; //render distant lod lights (coronas)
|
||||
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 rendercollisionmeshlayerdrawable = true;
|
||||
@ -921,6 +922,20 @@ namespace CodeWalker.Rendering
|
||||
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)
|
||||
{
|
||||
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;
|
||||
}
|
||||
|
||||
|
18
CodeWalker/VehicleForm.Designer.cs
generated
18
CodeWalker/VehicleForm.Designer.cs
generated
@ -90,6 +90,7 @@
|
||||
this.ToolsPanelShowButton = new System.Windows.Forms.Button();
|
||||
this.ConsolePanel = new System.Windows.Forms.Panel();
|
||||
this.ConsoleTextBox = new CodeWalker.WinForms.TextBoxFix();
|
||||
this.ShatterMapsCheckBox = new System.Windows.Forms.CheckBox();
|
||||
this.StatusStrip.SuspendLayout();
|
||||
this.ToolsPanel.SuspendLayout();
|
||||
this.ToolsTabControl.SuspendLayout();
|
||||
@ -419,6 +420,7 @@
|
||||
//
|
||||
// ToolsOptionsTabPage
|
||||
//
|
||||
this.ToolsOptionsTabPage.Controls.Add(this.ShatterMapsCheckBox);
|
||||
this.ToolsOptionsTabPage.Controls.Add(this.HDTexturesCheckBox);
|
||||
this.ToolsOptionsTabPage.Controls.Add(this.SkeletonsCheckBox);
|
||||
this.ToolsOptionsTabPage.Controls.Add(this.TimeOfDayLabel);
|
||||
@ -594,7 +596,7 @@
|
||||
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.Location = new System.Drawing.Point(19, 519);
|
||||
this.StatusBarCheckBox.Name = "StatusBarCheckBox";
|
||||
this.StatusBarCheckBox.Size = new System.Drawing.Size(74, 17);
|
||||
this.StatusBarCheckBox.TabIndex = 23;
|
||||
@ -605,7 +607,7 @@
|
||||
// ErrorConsoleCheckBox
|
||||
//
|
||||
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.Size = new System.Drawing.Size(88, 17);
|
||||
this.ErrorConsoleCheckBox.TabIndex = 24;
|
||||
@ -804,6 +806,17 @@
|
||||
this.ConsoleTextBox.Size = new System.Drawing.Size(695, 95);
|
||||
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
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
@ -908,5 +921,6 @@
|
||||
private System.Windows.Forms.Button ConvRoofButton;
|
||||
private System.Windows.Forms.Label ConvRoofNameLabel;
|
||||
private System.Windows.Forms.Label label8;
|
||||
private System.Windows.Forms.CheckBox ShatterMapsCheckBox;
|
||||
}
|
||||
}
|
@ -101,6 +101,7 @@ namespace CodeWalker
|
||||
//Renderer.individualcloudfrag = "Contrails";
|
||||
Renderer.rendermoon = false;
|
||||
Renderer.renderskeletons = false;
|
||||
Renderer.renderfragwindows = false;
|
||||
Renderer.SelectionFlagsTestAll = true;
|
||||
|
||||
}
|
||||
@ -202,7 +203,7 @@ namespace CodeWalker
|
||||
|
||||
//Renderer.RenderBounds(MapSelectionMode.Entity);
|
||||
|
||||
//Renderer.RenderSelectionGeometry(MapSelectionMode.Entity);
|
||||
Renderer.RenderSelectionGeometry(MapSelectionMode.Entity);
|
||||
|
||||
//RenderMoused();
|
||||
|
||||
@ -1351,6 +1352,11 @@ namespace CodeWalker
|
||||
Renderer.renderskeletons = SkeletonsCheckBox.Checked;
|
||||
}
|
||||
|
||||
private void ShatterMapsCheckBox_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
Renderer.renderfragwindows = ShatterMapsCheckBox.Checked;
|
||||
}
|
||||
|
||||
private void ErrorConsoleCheckBox_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
ConsolePanel.Visible = ErrorConsoleCheckBox.Checked;
|
||||
|
Loading…
Reference in New Issue
Block a user