Commit 7af7d661 authored by Jan Kremer's avatar Jan Kremer

Cleanup. 2D diagrams now reduce brightness of brushed particles instead of...

Cleanup. 2D diagrams now reduce brightness of brushed particles instead of coloring them black. Added VR pawn to the repo instead of desktop pawn.
parent 0981d341
No preview for this file type
No preview for this file type
......@@ -5,7 +5,7 @@ bExpandCustomClassPickerClassList=True
[EditorLayouts]
NullLayout="(\\\r\n\t\"Type\": \"Layout\",\\\r\n\t\"Name\": \"NullLayout\",\\\r\n\t\"PrimaryAreaIndex\": 0,\\\r\n\t\"Areas\": [\\\r\n\t\t(\\\r\n\t\t\t\"SizeCoefficient\": 1,\\\r\n\t\t\t\"Type\": \"Area\",\\\r\n\t\t\t\"Orientation\": \"Orient_Horizontal\",\\\r\n\t\t\t\"WindowPlacement\": \"Placement_NoWindow\",\\\r\n\t\t\t\"Nodes\": []\\\r\n\t\t)\\\r\n\t]\\\r\n)"
WidgetBlueprintEditor_Designer_Layout_v4_1="(\\\r\n\t\"Type\": \"Layout\",\\\r\n\t\"Name\": \"WidgetBlueprintEditor_Designer_Layout_v4_1\",\\\r\n\t\"PrimaryAreaIndex\": 0,\\\r\n\t\"Areas\": [\\\r\n\t\t(\\\r\n\t\t\t\"SizeCoefficient\": 1,\\\r\n\t\t\t\"Type\": \"Area\",\\\r\n\t\t\t\"Orientation\": \"Orient_Vertical\",\\\r\n\t\t\t\"WindowPlacement\": \"Placement_NoWindow\",\\\r\n\t\t\t\"Nodes\": [\\\r\n\t\t\t\t(\\\r\n\t\t\t\t\t\"SizeCoefficient\": 0.20000000298023224,\\\r\n\t\t\t\t\t\"Type\": \"Stack\",\\\r\n\t\t\t\t\t\"HideTabWell\": true,\\\r\n\t\t\t\t\t\"ForegroundTab\": \"AssetEditorToolkit_Toolbar\",\\\r\n\t\t\t\t\t\"Tabs\": [\\\r\n\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\"TabId\": \"AssetEditorToolkit_Toolbar\",\\\r\n\t\t\t\t\t\t\t\"TabState\": \"OpenedTab\"\\\r\n\t\t\t\t\t\t)\\\r\n\t\t\t\t\t]\\\r\n\t\t\t\t),\\\r\n\t\t\t\t(\\\r\n\t\t\t\t\t\"SizeCoefficient\": 0.69999998807907104,\\\r\n\t\t\t\t\t\"Type\": \"Splitter\",\\\r\n\t\t\t\t\t\"Orientation\": \"Orient_Horizontal\",\\\r\n\t\t\t\t\t\"Nodes\": [\\\r\n\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\"SizeCoefficient\": 0.15000000596046448,\\\r\n\t\t\t\t\t\t\t\"Type\": \"Splitter\",\\\r\n\t\t\t\t\t\t\t\"Orientation\": \"Orient_Vertical\",\\\r\n\t\t\t\t\t\t\t\"Nodes\": [\\\r\n\t\t\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\t\t\"SizeCoefficient\": 0.5,\\\r\n\t\t\t\t\t\t\t\t\t\"Type\": \"Stack\",\\\r\n\t\t\t\t\t\t\t\t\t\"HideTabWell\": false,\\\r\n\t\t\t\t\t\t\t\t\t\"ForegroundTab\": \"WidgetTemplates\",\\\r\n\t\t\t\t\t\t\t\t\t\"Tabs\": [\\\r\n\t\t\t\t\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\t\t\t\t\"TabId\": \"WidgetTemplates\",\\\r\n\t\t\t\t\t\t\t\t\t\t\t\"TabState\": \"OpenedTab\"\\\r\n\t\t\t\t\t\t\t\t\t\t)\\\r\n\t\t\t\t\t\t\t\t\t]\\\r\n\t\t\t\t\t\t\t\t),\\\r\n\t\t\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\t\t\"SizeCoefficient\": 0.5,\\\r\n\t\t\t\t\t\t\t\t\t\"Type\": \"Stack\",\\\r\n\t\t\t\t\t\t\t\t\t\"HideTabWell\": false,\\\r\n\t\t\t\t\t\t\t\t\t\"ForegroundTab\": \"SlateHierarchy\",\\\r\n\t\t\t\t\t\t\t\t\t\"Tabs\": [\\\r\n\t\t\t\t\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\t\t\t\t\"TabId\": \"SlateHierarchy\",\\\r\n\t\t\t\t\t\t\t\t\t\t\t\"TabState\": \"OpenedTab\"\\\r\n\t\t\t\t\t\t\t\t\t\t)\\\r\n\t\t\t\t\t\t\t\t\t]\\\r\n\t\t\t\t\t\t\t\t)\\\r\n\t\t\t\t\t\t\t]\\\r\n\t\t\t\t\t\t),\\\r\n\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\"SizeCoefficient\": 0.62962961196899414,\\\r\n\t\t\t\t\t\t\t\"Type\": \"Stack\",\\\r\n\t\t\t\t\t\t\t\"HideTabWell\": true,\\\r\n\t\t\t\t\t\t\t\"ForegroundTab\": \"SlatePreview\",\\\r\n\t\t\t\t\t\t\t\"Tabs\": [\\\r\n\t\t\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\t\t\"TabId\": \"SlatePreview\",\\\r\n\t\t\t\t\t\t\t\t\t\"TabState\": \"OpenedTab\"\\\r\n\t\t\t\t\t\t\t\t)\\\r\n\t\t\t\t\t\t\t]\\\r\n\t\t\t\t\t\t),\\\r\n\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\"SizeCoefficient\": 0.22037036716938019,\\\r\n\t\t\t\t\t\t\t\"Type\": \"Stack\",\\\r\n\t\t\t\t\t\t\t\"HideTabWell\": false,\\\r\n\t\t\t\t\t\t\t\"ForegroundTab\": \"WidgetDetails\",\\\r\n\t\t\t\t\t\t\t\"Tabs\": [\\\r\n\t\t\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\t\t\"TabId\": \"WidgetDetails\",\\\r\n\t\t\t\t\t\t\t\t\t\"TabState\": \"OpenedTab\"\\\r\n\t\t\t\t\t\t\t\t)\\\r\n\t\t\t\t\t\t\t]\\\r\n\t\t\t\t\t\t)\\\r\n\t\t\t\t\t]\\\r\n\t\t\t\t),\\\r\n\t\t\t\t(\\\r\n\t\t\t\t\t\"SizeCoefficient\": 0.30000001192092896,\\\r\n\t\t\t\t\t\"Type\": \"Splitter\",\\\r\n\t\t\t\t\t\"Orientation\": \"Orient_Horizontal\",\\\r\n\t\t\t\t\t\"Nodes\": [\\\r\n\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\"SizeCoefficient\": 0.15000000596046448,\\\r\n\t\t\t\t\t\t\t\"Type\": \"Stack\",\\\r\n\t\t\t\t\t\t\t\"HideTabWell\": false,\\\r\n\t\t\t\t\t\t\t\"ForegroundTab\": \"Animations\",\\\r\n\t\t\t\t\t\t\t\"Tabs\": [\\\r\n\t\t\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\t\t\"TabId\": \"Animations\",\\\r\n\t\t\t\t\t\t\t\t\t\"TabState\": \"OpenedTab\"\\\r\n\t\t\t\t\t\t\t\t)\\\r\n\t\t\t\t\t\t\t]\\\r\n\t\t\t\t\t\t),\\\r\n\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\"SizeCoefficient\": 0.85000002384185791,\\\r\n\t\t\t\t\t\t\t\"Type\": \"Stack\",\\\r\n\t\t\t\t\t\t\t\"HideTabWell\": false,\\\r\n\t\t\t\t\t\t\t\"ForegroundTab\": \"CompilerResults\",\\\r\n\t\t\t\t\t\t\t\"Tabs\": [\\\r\n\t\t\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\t\t\"TabId\": \"Sequencer\",\\\r\n\t\t\t\t\t\t\t\t\t\"TabState\": \"OpenedTab\"\\\r\n\t\t\t\t\t\t\t\t),\\\r\n\t\t\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\t\t\"TabId\": \"CompilerResults\",\\\r\n\t\t\t\t\t\t\t\t\t\"TabState\": \"OpenedTab\"\\\r\n\t\t\t\t\t\t\t\t)\\\r\n\t\t\t\t\t\t\t]\\\r\n\t\t\t\t\t\t)\\\r\n\t\t\t\t\t]\\\r\n\t\t\t\t)\\\r\n\t\t\t]\\\r\n\t\t)\\\r\n\t]\\\r\n)"
WidgetBlueprintEditor_Graph_Layout_v1="(\\\r\n\t\"Type\": \"Layout\",\\\r\n\t\"Name\": \"WidgetBlueprintEditor_Graph_Layout_v1\",\\\r\n\t\"PrimaryAreaIndex\": 0,\\\r\n\t\"Areas\": [\\\r\n\t\t(\\\r\n\t\t\t\"SizeCoefficient\": 1,\\\r\n\t\t\t\"Type\": \"Area\",\\\r\n\t\t\t\"Orientation\": \"Orient_Vertical\",\\\r\n\t\t\t\"WindowPlacement\": \"Placement_NoWindow\",\\\r\n\t\t\t\"Nodes\": [\\\r\n\t\t\t\t(\\\r\n\t\t\t\t\t\"SizeCoefficient\": 0.18672099709510803,\\\r\n\t\t\t\t\t\"Type\": \"Stack\",\\\r\n\t\t\t\t\t\"HideTabWell\": true,\\\r\n\t\t\t\t\t\"ForegroundTab\": \"AssetEditorToolkit_Toolbar\",\\\r\n\t\t\t\t\t\"Tabs\": [\\\r\n\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\"TabId\": \"AssetEditorToolkit_Toolbar\",\\\r\n\t\t\t\t\t\t\t\"TabState\": \"OpenedTab\"\\\r\n\t\t\t\t\t\t)\\\r\n\t\t\t\t\t]\\\r\n\t\t\t\t),\\\r\n\t\t\t\t(\\\r\n\t\t\t\t\t\"SizeCoefficient\": 1,\\\r\n\t\t\t\t\t\"Type\": \"Splitter\",\\\r\n\t\t\t\t\t\"Orientation\": \"Orient_Horizontal\",\\\r\n\t\t\t\t\t\"Nodes\": [\\\r\n\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\"SizeCoefficient\": 0.15000000596046448,\\\r\n\t\t\t\t\t\t\t\"Type\": \"Splitter\",\\\r\n\t\t\t\t\t\t\t\"Orientation\": \"Orient_Vertical\",\\\r\n\t\t\t\t\t\t\t\"Nodes\": [\\\r\n\t\t\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\t\t\"SizeCoefficient\": 0.63558828830718994,\\\r\n\t\t\t\t\t\t\t\t\t\"Type\": \"Stack\",\\\r\n\t\t\t\t\t\t\t\t\t\"HideTabWell\": false,\\\r\n\t\t\t\t\t\t\t\t\t\"ForegroundTab\": \"MyBlueprint\",\\\r\n\t\t\t\t\t\t\t\t\t\"Tabs\": [\\\r\n\t\t\t\t\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\t\t\t\t\"TabId\": \"MyBlueprint\",\\\r\n\t\t\t\t\t\t\t\t\t\t\t\"TabState\": \"OpenedTab\"\\\r\n\t\t\t\t\t\t\t\t\t\t)\\\r\n\t\t\t\t\t\t\t\t\t]\\\r\n\t\t\t\t\t\t\t\t),\\\r\n\t\t\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\t\t\"SizeCoefficient\": 0.36441138386726379,\\\r\n\t\t\t\t\t\t\t\t\t\"Type\": \"Stack\",\\\r\n\t\t\t\t\t\t\t\t\t\"HideTabWell\": false,\\\r\n\t\t\t\t\t\t\t\t\t\"ForegroundTab\": \"Inspector\",\\\r\n\t\t\t\t\t\t\t\t\t\"Tabs\": [\\\r\n\t\t\t\t\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\t\t\t\t\"TabId\": \"Inspector\",\\\r\n\t\t\t\t\t\t\t\t\t\t\t\"TabState\": \"OpenedTab\"\\\r\n\t\t\t\t\t\t\t\t\t\t)\\\r\n\t\t\t\t\t\t\t\t\t]\\\r\n\t\t\t\t\t\t\t\t)\\\r\n\t\t\t\t\t\t\t]\\\r\n\t\t\t\t\t\t),\\\r\n\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\"SizeCoefficient\": 0.69999998807907104,\\\r\n\t\t\t\t\t\t\t\"Type\": \"Splitter\",\\\r\n\t\t\t\t\t\t\t\"Orientation\": \"Orient_Vertical\",\\\r\n\t\t\t\t\t\t\t\"Nodes\": [\\\r\n\t\t\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\t\t\"SizeCoefficient\": 0.80000001192092896,\\\r\n\t\t\t\t\t\t\t\t\t\"Type\": \"Stack\",\\\r\n\t\t\t\t\t\t\t\t\t\"HideTabWell\": false,\\\r\n\t\t\t\t\t\t\t\t\t\"ForegroundTab\": \"Document : 2\",\\\r\n\t\t\t\t\t\t\t\t\t\"Tabs\": [\\\r\n\t\t\t\t\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\t\t\t\t\"TabId\": \"Document\",\\\r\n\t\t\t\t\t\t\t\t\t\t\t\"TabState\": \"ClosedTab\"\\\r\n\t\t\t\t\t\t\t\t\t\t)\\\r\n\t\t\t\t\t\t\t\t\t]\\\r\n\t\t\t\t\t\t\t\t),\\\r\n\t\t\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\t\t\"SizeCoefficient\": 0.20000000298023224,\\\r\n\t\t\t\t\t\t\t\t\t\"Type\": \"Stack\",\\\r\n\t\t\t\t\t\t\t\t\t\"HideTabWell\": false,\\\r\n\t\t\t\t\t\t\t\t\t\"ForegroundTab\": \"CompilerResults\",\\\r\n\t\t\t\t\t\t\t\t\t\"Tabs\": [\\\r\n\t\t\t\t\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\t\t\t\t\"TabId\": \"CompilerResults\",\\\r\n\t\t\t\t\t\t\t\t\t\t\t\"TabState\": \"OpenedTab\"\\\r\n\t\t\t\t\t\t\t\t\t\t),\\\r\n\t\t\t\t\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\t\t\t\t\"TabId\": \"FindResults\",\\\r\n\t\t\t\t\t\t\t\t\t\t\t\"TabState\": \"OpenedTab\"\\\r\n\t\t\t\t\t\t\t\t\t\t)\\\r\n\t\t\t\t\t\t\t\t\t]\\\r\n\t\t\t\t\t\t\t\t)\\\r\n\t\t\t\t\t\t\t]\\\r\n\t\t\t\t\t\t),\\\r\n\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\"SizeCoefficient\": 0.15000000596046448,\\\r\n\t\t\t\t\t\t\t\"Type\": \"Stack\",\\\r\n\t\t\t\t\t\t\t\"HideTabWell\": false,\\\r\n\t\t\t\t\t\t\t\"ForegroundTab\": \"None\",\\\r\n\t\t\t\t\t\t\t\"Tabs\": [\\\r\n\t\t\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\t\t\"TabId\": \"PaletteList\",\\\r\n\t\t\t\t\t\t\t\t\t\"TabState\": \"ClosedTab\"\\\r\n\t\t\t\t\t\t\t\t)\\\r\n\t\t\t\t\t\t\t]\\\r\n\t\t\t\t\t\t)\\\r\n\t\t\t\t\t]\\\r\n\t\t\t\t)\\\r\n\t\t\t]\\\r\n\t\t)\\\r\n\t]\\\r\n)"
WidgetBlueprintEditor_Graph_Layout_v1="(\\\r\n\t\"Type\": \"Layout\",\\\r\n\t\"Name\": \"WidgetBlueprintEditor_Graph_Layout_v1\",\\\r\n\t\"PrimaryAreaIndex\": 0,\\\r\n\t\"Areas\": [\\\r\n\t\t(\\\r\n\t\t\t\"SizeCoefficient\": 1,\\\r\n\t\t\t\"Type\": \"Area\",\\\r\n\t\t\t\"Orientation\": \"Orient_Vertical\",\\\r\n\t\t\t\"WindowPlacement\": \"Placement_NoWindow\",\\\r\n\t\t\t\"Nodes\": [\\\r\n\t\t\t\t(\\\r\n\t\t\t\t\t\"SizeCoefficient\": 0.18672099709510803,\\\r\n\t\t\t\t\t\"Type\": \"Stack\",\\\r\n\t\t\t\t\t\"HideTabWell\": true,\\\r\n\t\t\t\t\t\"ForegroundTab\": \"AssetEditorToolkit_Toolbar\",\\\r\n\t\t\t\t\t\"Tabs\": [\\\r\n\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\"TabId\": \"AssetEditorToolkit_Toolbar\",\\\r\n\t\t\t\t\t\t\t\"TabState\": \"OpenedTab\"\\\r\n\t\t\t\t\t\t)\\\r\n\t\t\t\t\t]\\\r\n\t\t\t\t),\\\r\n\t\t\t\t(\\\r\n\t\t\t\t\t\"SizeCoefficient\": 1,\\\r\n\t\t\t\t\t\"Type\": \"Splitter\",\\\r\n\t\t\t\t\t\"Orientation\": \"Orient_Horizontal\",\\\r\n\t\t\t\t\t\"Nodes\": [\\\r\n\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\"SizeCoefficient\": 0.15000000596046448,\\\r\n\t\t\t\t\t\t\t\"Type\": \"Splitter\",\\\r\n\t\t\t\t\t\t\t\"Orientation\": \"Orient_Vertical\",\\\r\n\t\t\t\t\t\t\t\"Nodes\": [\\\r\n\t\t\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\t\t\"SizeCoefficient\": 0.63558828830718994,\\\r\n\t\t\t\t\t\t\t\t\t\"Type\": \"Stack\",\\\r\n\t\t\t\t\t\t\t\t\t\"HideTabWell\": false,\\\r\n\t\t\t\t\t\t\t\t\t\"ForegroundTab\": \"MyBlueprint\",\\\r\n\t\t\t\t\t\t\t\t\t\"Tabs\": [\\\r\n\t\t\t\t\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\t\t\t\t\"TabId\": \"MyBlueprint\",\\\r\n\t\t\t\t\t\t\t\t\t\t\t\"TabState\": \"OpenedTab\"\\\r\n\t\t\t\t\t\t\t\t\t\t)\\\r\n\t\t\t\t\t\t\t\t\t]\\\r\n\t\t\t\t\t\t\t\t),\\\r\n\t\t\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\t\t\"SizeCoefficient\": 0.36441138386726379,\\\r\n\t\t\t\t\t\t\t\t\t\"Type\": \"Stack\",\\\r\n\t\t\t\t\t\t\t\t\t\"HideTabWell\": false,\\\r\n\t\t\t\t\t\t\t\t\t\"ForegroundTab\": \"Inspector\",\\\r\n\t\t\t\t\t\t\t\t\t\"Tabs\": [\\\r\n\t\t\t\t\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\t\t\t\t\"TabId\": \"Inspector\",\\\r\n\t\t\t\t\t\t\t\t\t\t\t\"TabState\": \"OpenedTab\"\\\r\n\t\t\t\t\t\t\t\t\t\t)\\\r\n\t\t\t\t\t\t\t\t\t]\\\r\n\t\t\t\t\t\t\t\t)\\\r\n\t\t\t\t\t\t\t]\\\r\n\t\t\t\t\t\t),\\\r\n\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\"SizeCoefficient\": 0.69999998807907104,\\\r\n\t\t\t\t\t\t\t\"Type\": \"Splitter\",\\\r\n\t\t\t\t\t\t\t\"Orientation\": \"Orient_Vertical\",\\\r\n\t\t\t\t\t\t\t\"Nodes\": [\\\r\n\t\t\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\t\t\"SizeCoefficient\": 0.80000001192092896,\\\r\n\t\t\t\t\t\t\t\t\t\"Type\": \"Stack\",\\\r\n\t\t\t\t\t\t\t\t\t\"HideTabWell\": false,\\\r\n\t\t\t\t\t\t\t\t\t\"ForegroundTab\": \"Document : 3\",\\\r\n\t\t\t\t\t\t\t\t\t\"Tabs\": [\\\r\n\t\t\t\t\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\t\t\t\t\"TabId\": \"Document\",\\\r\n\t\t\t\t\t\t\t\t\t\t\t\"TabState\": \"ClosedTab\"\\\r\n\t\t\t\t\t\t\t\t\t\t)\\\r\n\t\t\t\t\t\t\t\t\t]\\\r\n\t\t\t\t\t\t\t\t),\\\r\n\t\t\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\t\t\"SizeCoefficient\": 0.20000000298023224,\\\r\n\t\t\t\t\t\t\t\t\t\"Type\": \"Stack\",\\\r\n\t\t\t\t\t\t\t\t\t\"HideTabWell\": false,\\\r\n\t\t\t\t\t\t\t\t\t\"ForegroundTab\": \"CompilerResults\",\\\r\n\t\t\t\t\t\t\t\t\t\"Tabs\": [\\\r\n\t\t\t\t\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\t\t\t\t\"TabId\": \"CompilerResults\",\\\r\n\t\t\t\t\t\t\t\t\t\t\t\"TabState\": \"OpenedTab\"\\\r\n\t\t\t\t\t\t\t\t\t\t),\\\r\n\t\t\t\t\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\t\t\t\t\"TabId\": \"FindResults\",\\\r\n\t\t\t\t\t\t\t\t\t\t\t\"TabState\": \"OpenedTab\"\\\r\n\t\t\t\t\t\t\t\t\t\t)\\\r\n\t\t\t\t\t\t\t\t\t]\\\r\n\t\t\t\t\t\t\t\t)\\\r\n\t\t\t\t\t\t\t]\\\r\n\t\t\t\t\t\t),\\\r\n\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\"SizeCoefficient\": 0.15000000596046448,\\\r\n\t\t\t\t\t\t\t\"Type\": \"Stack\",\\\r\n\t\t\t\t\t\t\t\"HideTabWell\": false,\\\r\n\t\t\t\t\t\t\t\"ForegroundTab\": \"None\",\\\r\n\t\t\t\t\t\t\t\"Tabs\": [\\\r\n\t\t\t\t\t\t\t\t(\\\r\n\t\t\t\t\t\t\t\t\t\"TabId\": \"PaletteList\",\\\r\n\t\t\t\t\t\t\t\t\t\"TabState\": \"ClosedTab\"\\\r\n\t\t\t\t\t\t\t\t)\\\r\n\t\t\t\t\t\t\t]\\\r\n\t\t\t\t\t\t)\\\r\n\t\t\t\t\t]\\\r\n\t\t\t\t)\\\r\n\t\t\t]\\\r\n\t\t)\\\r\n\t]\\\r\n)"
[/Script/AdvancedPreviewScene.LocalProfiles]
Profiles=(ProfileName="Profile_0",bSharedProfile=False,DirectionalLightIntensity=1.000000,DirectionalLightColor=(R=1.000000,G=1.000000,B=1.000000,A=1.000000),SkyLightIntensity=1.000000,bRotateLightingRig=False,bShowEnvironment=True,bShowFloor=True,EnvironmentColor=(R=0.200000,G=0.200000,B=0.200000,A=1.000000),EnvironmentIntensity=1.000000,EnvironmentCubeMapPath="/Engine/EditorMaterials/AssetViewer/EpicQuadPanorama_CC+EV1.EpicQuadPanorama_CC+EV1",PostProcessingSettings=(bOverride_WhiteTemp=False,bOverride_WhiteTint=False,bOverride_ColorSaturation=False,bOverride_ColorContrast=False,bOverride_ColorGamma=False,bOverride_ColorGain=False,bOverride_ColorOffset=False,bOverride_ColorSaturationShadows=False,bOverride_ColorContrastShadows=False,bOverride_ColorGammaShadows=False,bOverride_ColorGainShadows=False,bOverride_ColorOffsetShadows=False,bOverride_ColorSaturationMidtones=False,bOverride_ColorContrastMidtones=False,bOverride_ColorGammaMidtones=False,bOverride_ColorGainMidtones=False,bOverride_ColorOffsetMidtones=False,bOverride_ColorSaturationHighlights=False,bOverride_ColorContrastHighlights=False,bOverride_ColorGammaHighlights=False,bOverride_ColorGainHighlights=False,bOverride_ColorOffsetHighlights=False,bOverride_ColorCorrectionShadowsMax=False,bOverride_ColorCorrectionHighlightsMin=False,bOverride_BlueCorrection=False,bOverride_ExpandGamut=False,bOverride_FilmWhitePoint=False,bOverride_FilmSaturation=False,bOverride_FilmChannelMixerRed=False,bOverride_FilmChannelMixerGreen=False,bOverride_FilmChannelMixerBlue=False,bOverride_FilmContrast=False,bOverride_FilmDynamicRange=False,bOverride_FilmHealAmount=False,bOverride_FilmToeAmount=False,bOverride_FilmShadowTint=False,bOverride_FilmShadowTintBlend=False,bOverride_FilmShadowTintAmount=False,bOverride_FilmSlope=False,bOverride_FilmToe=False,bOverride_FilmShoulder=False,bOverride_FilmBlackClip=False,bOverride_FilmWhiteClip=False,bOverride_SceneColorTint=False,bOverride_SceneFringeIntensity=False,bOverride_ChromaticAberrationStartOffset=False,bOverride_AmbientCubemapTint=False,bOverride_AmbientCubemapIntensity=False,bOverride_BloomMethod=False,bOverride_BloomIntensity=False,bOverride_BloomThreshold=False,bOverride_Bloom1Tint=False,bOverride_Bloom1Size=False,bOverride_Bloom2Size=False,bOverride_Bloom2Tint=False,bOverride_Bloom3Tint=False,bOverride_Bloom3Size=False,bOverride_Bloom4Tint=False,bOverride_Bloom4Size=False,bOverride_Bloom5Tint=False,bOverride_Bloom5Size=False,bOverride_Bloom6Tint=False,bOverride_Bloom6Size=False,bOverride_BloomSizeScale=False,bOverride_BloomConvolutionTexture=False,bOverride_BloomConvolutionSize=False,bOverride_BloomConvolutionCenterUV=False,bOverride_BloomConvolutionPreFilter=False,bOverride_BloomConvolutionPreFilterMin=False,bOverride_BloomConvolutionPreFilterMax=False,bOverride_BloomConvolutionPreFilterMult=False,bOverride_BloomConvolutionBufferScale=False,bOverride_BloomDirtMaskIntensity=False,bOverride_BloomDirtMaskTint=False,bOverride_BloomDirtMask=False,bOverride_CameraShutterSpeed=False,bOverride_CameraISO=False,bOverride_AutoExposureMethod=False,bOverride_AutoExposureLowPercent=False,bOverride_AutoExposureHighPercent=False,bOverride_AutoExposureMinBrightness=False,bOverride_AutoExposureMaxBrightness=False,bOverride_AutoExposureCalibrationConstant=False,bOverride_AutoExposureSpeedUp=False,bOverride_AutoExposureSpeedDown=False,bOverride_AutoExposureBias=False,bOverride_HistogramLogMin=False,bOverride_HistogramLogMax=False,bOverride_LensFlareIntensity=False,bOverride_LensFlareTint=False,bOverride_LensFlareTints=False,bOverride_LensFlareBokehSize=False,bOverride_LensFlareBokehShape=False,bOverride_LensFlareThreshold=False,bOverride_VignetteIntensity=False,bOverride_GrainIntensity=False,bOverride_GrainJitter=False,bOverride_AmbientOcclusionIntensity=False,bOverride_AmbientOcclusionStaticFraction=False,bOverride_AmbientOcclusionRadius=False,bOverride_AmbientOcclusionFadeDistance=False,bOverride_AmbientOcclusionFadeRadius=False,bOverride_AmbientOcclusionDistance=False,bOverride_AmbientOcclusionRadiusInWS=False,bOverride_AmbientOcclusionPower=False,bOverride_AmbientOcclusionBias=False,bOverride_AmbientOcclusionQuality=False,bOverride_AmbientOcclusionMipBlend=False,bOverride_AmbientOcclusionMipScale=False,bOverride_AmbientOcclusionMipThreshold=False,bOverride_LPVIntensity=False,bOverride_LPVDirectionalOcclusionIntensity=False,bOverride_LPVDirectionalOcclusionRadius=False,bOverride_LPVDiffuseOcclusionExponent=False,bOverride_LPVSpecularOcclusionExponent=False,bOverride_LPVDiffuseOcclusionIntensity=False,bOverride_LPVSpecularOcclusionIntensity=False,bOverride_LPVSize=False,bOverride_LPVSecondaryOcclusionIntensity=False,bOverride_LPVSecondaryBounceIntensity=False,bOverride_LPVGeometryVolumeBias=False,bOverride_LPVVplInjectionBias=False,bOverride_LPVEmissiveInjectionIntensity=False,bOverride_LPVFadeRange=False,bOverride_LPVDirectionalOcclusionFadeRange=False,bOverride_IndirectLightingColor=False,bOverride_IndirectLightingIntensity=False,bOverride_ColorGradingIntensity=False,bOverride_ColorGradingLUT=False,bOverride_DepthOfFieldFocalDistance=False,bOverride_DepthOfFieldFstop=False,bOverride_DepthOfFieldMinFstop=False,bOverride_DepthOfFieldBladeCount=False,bOverride_DepthOfFieldSensorWidth=False,bOverride_DepthOfFieldDepthBlurRadius=False,bOverride_DepthOfFieldDepthBlurAmount=False,bOverride_DepthOfFieldFocalRegion=False,bOverride_DepthOfFieldNearTransitionRegion=False,bOverride_DepthOfFieldFarTransitionRegion=False,bOverride_DepthOfFieldScale=False,bOverride_DepthOfFieldMaxBokehSize=False,bOverride_DepthOfFieldNearBlurSize=False,bOverride_DepthOfFieldFarBlurSize=False,bOverride_DepthOfFieldMethod=False,bOverride_MobileHQGaussian=False,bOverride_DepthOfFieldBokehShape=False,bOverride_DepthOfFieldOcclusion=False,bOverride_DepthOfFieldColorThreshold=False,bOverride_DepthOfFieldSizeThreshold=False,bOverride_DepthOfFieldSkyFocusDistance=False,bOverride_DepthOfFieldVignetteSize=False,bOverride_MotionBlurAmount=False,bOverride_MotionBlurMax=False,bOverride_MotionBlurPerObjectSize=False,bOverride_ScreenPercentage=False,bOverride_ScreenSpaceReflectionIntensity=False,bOverride_ScreenSpaceReflectionQuality=False,bOverride_ScreenSpaceReflectionMaxRoughness=False,bOverride_ScreenSpaceReflectionRoughnessScale=False,bMobileHQGaussian=False,BloomMethod=BM_SOG,AutoExposureMethod=AEM_Histogram,DepthOfFieldMethod=DOFM_BokehDOF,WhiteTemp=6500.000000,WhiteTint=0.000000,ColorSaturation=(X=1.000000,Y=1.000000,Z=1.000000,W=1.000000),ColorContrast=(X=1.000000,Y=1.000000,Z=1.000000,W=1.000000),ColorGamma=(X=1.000000,Y=1.000000,Z=1.000000,W=1.000000),ColorGain=(X=1.000000,Y=1.000000,Z=1.000000,W=1.000000),ColorOffset=(X=0.000000,Y=0.000000,Z=0.000000,W=0.000000),ColorSaturationShadows=(X=1.000000,Y=1.000000,Z=1.000000,W=1.000000),ColorContrastShadows=(X=1.000000,Y=1.000000,Z=1.000000,W=1.000000),ColorGammaShadows=(X=1.000000,Y=1.000000,Z=1.000000,W=1.000000),ColorGainShadows=(X=1.000000,Y=1.000000,Z=1.000000,W=1.000000),ColorOffsetShadows=(X=0.000000,Y=0.000000,Z=0.000000,W=0.000000),ColorSaturationMidtones=(X=1.000000,Y=1.000000,Z=1.000000,W=1.000000),ColorContrastMidtones=(X=1.000000,Y=1.000000,Z=1.000000,W=1.000000),ColorGammaMidtones=(X=1.000000,Y=1.000000,Z=1.000000,W=1.000000),ColorGainMidtones=(X=1.000000,Y=1.000000,Z=1.000000,W=1.000000),ColorOffsetMidtones=(X=0.000000,Y=0.000000,Z=0.000000,W=0.000000),ColorSaturationHighlights=(X=1.000000,Y=1.000000,Z=1.000000,W=1.000000),ColorContrastHighlights=(X=1.000000,Y=1.000000,Z=1.000000,W=1.000000),ColorGammaHighlights=(X=1.000000,Y=1.000000,Z=1.000000,W=1.000000),ColorGainHighlights=(X=1.000000,Y=1.000000,Z=1.000000,W=1.000000),ColorOffsetHighlights=(X=0.000000,Y=0.000000,Z=0.000000,W=0.000000),ColorCorrectionHighlightsMin=0.500000,ColorCorrectionShadowsMax=0.090000,BlueCorrection=0.600000,ExpandGamut=1.000000,FilmSlope=0.880000,FilmToe=0.550000,FilmShoulder=0.260000,FilmBlackClip=0.000000,FilmWhiteClip=0.040000,FilmWhitePoint=(R=1.000000,G=1.000000,B=1.000000,A=1.000000),FilmShadowTint=(R=1.000000,G=1.000000,B=1.000000,A=1.000000),FilmShadowTintBlend=0.500000,FilmShadowTintAmount=0.000000,FilmSaturation=1.000000,FilmChannelMixerRed=(R=1.000000,G=0.000000,B=0.000000,A=1.000000),FilmChannelMixerGreen=(R=0.000000,G=1.000000,B=0.000000,A=1.000000),FilmChannelMixerBlue=(R=0.000000,G=0.000000,B=1.000000,A=1.000000),FilmContrast=0.030000,FilmToeAmount=1.000000,FilmHealAmount=1.000000,FilmDynamicRange=4.000000,SceneColorTint=(R=1.000000,G=1.000000,B=1.000000,A=1.000000),SceneFringeIntensity=0.000000,ChromaticAberrationStartOffset=0.000000,BloomIntensity=0.675000,BloomThreshold=-1.000000,BloomSizeScale=4.000000,Bloom1Size=0.300000,Bloom2Size=1.000000,Bloom3Size=2.000000,Bloom4Size=10.000000,Bloom5Size=30.000000,Bloom6Size=64.000000,Bloom1Tint=(R=0.346500,G=0.346500,B=0.346500,A=1.000000),Bloom2Tint=(R=0.138000,G=0.138000,B=0.138000,A=1.000000),Bloom3Tint=(R=0.117600,G=0.117600,B=0.117600,A=1.000000),Bloom4Tint=(R=0.066000,G=0.066000,B=0.066000,A=1.000000),Bloom5Tint=(R=0.066000,G=0.066000,B=0.066000,A=1.000000),Bloom6Tint=(R=0.061000,G=0.061000,B=0.061000,A=1.000000),BloomConvolutionSize=1.000000,BloomConvolutionTexture=None,BloomConvolutionCenterUV=(X=0.500000,Y=0.500000),BloomConvolutionPreFilter=(X=0.000000,Y=0.000000,Z=0.000000),BloomConvolutionPreFilterMin=7.000000,BloomConvolutionPreFilterMax=15000.000000,BloomConvolutionPreFilterMult=15.000000,BloomConvolutionBufferScale=0.133000,BloomDirtMask=None,BloomDirtMaskIntensity=0.000000,BloomDirtMaskTint=(R=0.500000,G=0.500000,B=0.500000,A=1.000000),AmbientCubemapTint=(R=1.000000,G=1.000000,B=1.000000,A=1.000000),AmbientCubemapIntensity=1.000000,AmbientCubemap=None,CameraShutterSpeed=60.000000,CameraISO=100.000000,DepthOfFieldFstop=4.000000,DepthOfFieldMinFstop=1.200000,DepthOfFieldBladeCount=5,AutoExposureBias=0.000000,AutoExposureLowPercent=80.000000,AutoExposureHighPercent=98.300003,AutoExposureMinBrightness=0.030000,AutoExposureMaxBrightness=2.000000,AutoExposureSpeedUp=3.000000,AutoExposureSpeedDown=1.000000,HistogramLogMin=-8.000000,HistogramLogMax=4.000000,AutoExposureCalibrationConstant=16.000000,LensFlareIntensity=1.000000,LensFlareTint=(R=1.000000,G=1.000000,B=1.000000,A=1.000000),LensFlareBokehSize=3.000000,LensFlareThreshold=8.000000,LensFlareBokehShape=None,LensFlareTints[0]=(R=1.000000,G=0.800000,B=0.400000,A=0.600000),LensFlareTints[1]=(R=1.000000,G=1.000000,B=0.600000,A=0.530000),LensFlareTints[2]=(R=0.800000,G=0.800000,B=1.000000,A=0.460000),LensFlareTints[3]=(R=0.500000,G=1.000000,B=0.400000,A=0.390000),LensFlareTints[4]=(R=0.500000,G=0.800000,B=1.000000,A=0.310000),LensFlareTints[5]=(R=0.900000,G=1.000000,B=0.800000,A=0.270000),LensFlareTints[6]=(R=1.000000,G=0.800000,B=0.400000,A=0.220000),LensFlareTints[7]=(R=0.900000,G=0.700000,B=0.700000,A=0.150000),VignetteIntensity=0.400000,GrainJitter=0.000000,GrainIntensity=0.000000,AmbientOcclusionIntensity=0.500000,AmbientOcclusionStaticFraction=1.000000,AmbientOcclusionRadius=200.000000,AmbientOcclusionRadiusInWS=False,AmbientOcclusionFadeDistance=8000.000000,AmbientOcclusionFadeRadius=5000.000000,AmbientOcclusionDistance=80.000000,AmbientOcclusionPower=2.000000,AmbientOcclusionBias=3.000000,AmbientOcclusionQuality=50.000000,AmbientOcclusionMipBlend=0.600000,AmbientOcclusionMipScale=1.700000,AmbientOcclusionMipThreshold=0.010000,IndirectLightingColor=(R=1.000000,G=1.000000,B=1.000000,A=1.000000),IndirectLightingIntensity=1.000000,ColorGradingIntensity=1.000000,ColorGradingLUT=None,DepthOfFieldSensorWidth=24.576000,DepthOfFieldFocalDistance=1000.000000,DepthOfFieldDepthBlurAmount=1.000000,DepthOfFieldDepthBlurRadius=0.000000,DepthOfFieldFocalRegion=0.000000,DepthOfFieldNearTransitionRegion=300.000000,DepthOfFieldFarTransitionRegion=500.000000,DepthOfFieldScale=0.000000,DepthOfFieldMaxBokehSize=15.000000,DepthOfFieldNearBlurSize=15.000000,DepthOfFieldFarBlurSize=15.000000,DepthOfFieldOcclusion=0.400000,DepthOfFieldBokehShape=None,DepthOfFieldColorThreshold=1.000000,DepthOfFieldSizeThreshold=0.080000,DepthOfFieldSkyFocusDistance=0.000000,DepthOfFieldVignetteSize=200.000000,MotionBlurAmount=0.500000,MotionBlurMax=5.000000,MotionBlurPerObjectSize=0.500000,LPVIntensity=1.000000,LPVVplInjectionBias=0.640000,LPVSize=5312.000000,LPVSecondaryOcclusionIntensity=0.000000,LPVSecondaryBounceIntensity=0.000000,LPVGeometryVolumeBias=0.384000,LPVEmissiveInjectionIntensity=1.000000,LPVDirectionalOcclusionIntensity=0.000000,LPVDirectionalOcclusionRadius=8.000000,LPVDiffuseOcclusionExponent=6500.000000,LPVSpecularOcclusionExponent=7.000000,LPVDiffuseOcclusionIntensity=1.000000,LPVSpecularOcclusionIntensity=1.000000,ScreenSpaceReflectionIntensity=100.000000,ScreenSpaceReflectionQuality=50.000000,ScreenSpaceReflectionMaxRoughness=0.600000,LPVFadeRange=0.000000,LPVDirectionalOcclusionFadeRange=0.000000,ScreenPercentage=100.000000,WeightedBlendables=(Array=),Blendables=),bPostProcessingEnabled=True,LightingRigRotation=0.000000,RotationSpeed=2.000000,DirectionalLightRotation=(Pitch=-40.000000,Yaw=-67.500000,Roll=0.000000))
......
......@@ -50,12 +50,4 @@ bHQBuffer=False
bHQDistortion=False
bUpdateOnRT=True
[WindowsApplication.Accessibility]
StickyKeysHotkey=True
ToggleKeysHotkey=True
FilterKeysHotkey=True
StickyKeysConfirmation=True
ToggleKeysConfirmation=True
FilterKeysConfirmation=True
......@@ -6,7 +6,7 @@
#include "Components/ActorComponent.h"
#include "H5Cpp.h"
#include "Runtime/Engine/Classes/Curves/CurveVector.h"
#include "MyObject.h"
#include "SharedEnums.h"
#include "DataComponent.generated.h"
using namespace H5;
......
......@@ -7,7 +7,7 @@
#include "PointCloud.h"
#include "PointCloudActor.h"
#include "Runtime/Engine/Classes/Curves/CurveVector.h"
#include "MyObject.h"
#include "SharedEnums.h"
#include "Plot3D.generated.h"
UCLASS()
......
......@@ -106,57 +106,29 @@ void UPlotCanvas::SetYAxisType(EAxisType Type)
}
void UPlotCanvas::InitializeCanvas(const int32 pixelsH, const int32 pixelsV)
{
//dynamic texture initialization
canvasWidth = pixelsH;
canvasHeight = pixelsV;
CanvasWidth = pixelsH;
CanvasHeight = pixelsV;
dynamicCanvas = UTexture2D::CreateTransient(canvasWidth, canvasHeight);
DynamicCanvas = UTexture2D::CreateTransient(CanvasWidth, CanvasHeight);
#if WITH_EDITORONLY_DATA
dynamicCanvas->MipGenSettings = TextureMipGenSettings::TMGS_NoMipmaps;
DynamicCanvas->MipGenSettings = TextureMipGenSettings::TMGS_NoMipmaps;
#endif
dynamicCanvas->CompressionSettings = TextureCompressionSettings::TC_VectorDisplacementmap;
dynamicCanvas->SRGB = 1;
dynamicCanvas->AddToRoot();
dynamicCanvas->Filter = TextureFilter::TF_Nearest;
dynamicCanvas->UpdateResource();
DynamicCanvas->CompressionSettings = TextureCompressionSettings::TC_VectorDisplacementmap;
DynamicCanvas->SRGB = 1;
DynamicCanvas->AddToRoot();
DynamicCanvas->Filter = TextureFilter::TF_Nearest;
DynamicCanvas->UpdateResource();
echoUpdateTextureRegion = std::unique_ptr<FUpdateTextureRegion2D>(new FUpdateTextureRegion2D(0, 0, 0, 0, canvasWidth, canvasHeight));
EchoUpdateTextureRegion = std::unique_ptr<FUpdateTextureRegion2D>(new FUpdateTextureRegion2D(0, 0, 0, 0, CanvasWidth, CanvasHeight));
// buffers initialization
bytesPerPixel = 4; // r g b a
bufferPitch = canvasWidth * bytesPerPixel;
bufferSize = canvasWidth * canvasHeight * bytesPerPixel;
canvasPixelData = std::unique_ptr<uint8[]>(new uint8[bufferSize]);
BytesPerPixel = 4;
BufferPitch = CanvasWidth * BytesPerPixel;
BufferSize = CanvasWidth * CanvasHeight * BytesPerPixel;
CanvasPixelData = std::unique_ptr<uint8[]>(new uint8[BufferSize]);
ClearCanvas();
}
void UPlotCanvas::InitializeDrawingTools(const int32 brushRadius, uint8 r, uint8 g, uint8 b)
{
radius = brushRadius;
brushBufferSize = radius * radius * 4 * bytesPerPixel; //2r*2r * bpp
canvasBrushMask = std::unique_ptr<uint8[]>(new uint8[brushBufferSize]);
uint8* canvasBrushPixelPtr = canvasBrushMask.get();
for (int px = -radius; px < radius; ++px)
{
for (int py = -radius; py < radius; ++py)
{
int32 tx = px + radius;
int32 ty = py + radius;
canvasBrushPixelPtr = canvasBrushMask.get() + (tx + +ty * 2 * radius) * bytesPerPixel;
if (px*px + py * py < radius*radius)
{
setPixelColor(canvasBrushPixelPtr, r,g,b, 255); //black alpha 255 - bgra
}
else
{
setPixelColor(canvasBrushPixelPtr, 0, 0, 0, 0); // alpha 0
}
}
}
}
void UPlotCanvas::DrawScatterPlot()
{
ClearCanvas();
......@@ -166,15 +138,20 @@ void UPlotCanvas::DrawScatterPlot()
for (int i = 0; i < PawnBase->Plot3D->Points.Num(); ++i)
{
int32 x = ((*XArray)[i] - XMin) / (XMax - XMin) * CanvasWidth;
int32 y = ((*YArray)[i] - YMin) / (YMax - YMin) * CanvasHeight;
uint8 r = PawnBase->Plot3D->Points[i].Color.R;
uint8 g = PawnBase->Plot3D->Points[i].Color.G;
uint8 b = PawnBase->Plot3D->Points[i].Color.B;
if (PawnBase->Data->IsBrushed[i])
{
InitializeDrawingTools(1, 0, 0, 0);
DrawPixel(x, y, r/3, g/3, b/3, 255);
}
else
{
InitializeDrawingTools(1, PawnBase->Plot3D->Points[i].Color.R, PawnBase->Plot3D->Points[i].Color.G, PawnBase->Plot3D->Points[i].Color.B);
DrawPixel(x, y, r, g, b, 255);
}
DrawDot(((*XArray)[i] - XMin) / (XMax - XMin) * canvasWidth, ((*YArray)[i] - YMin) / (YMax - YMin) * canvasHeight);
}
UpdateCanvas();
......@@ -188,7 +165,7 @@ void UPlotCanvas::DrawHistogramPlot(int32 bins)
APawnBase* PawnBase = Cast<APawnBase>(Pawn);
float Diff = XMax - XMin;
float Thickness = canvasWidth / (float)bins;
float Thickness = CanvasWidth / (float)bins;
TArray<int32> XCount = TArray<int32>();
TArray<int32> XBrushedCount = TArray<int32>();
......@@ -223,12 +200,12 @@ void UPlotCanvas::DrawHistogramPlot(int32 bins)
int32 x1 = x0 + Thickness;
int32 y0 = 0;
int32 y1 = XCount[i] / (float)MaxCount * canvasHeight;
int32 y1 = XCount[i] / (float)MaxCount * CanvasHeight;
FVector ColorVec;
if (XBrushedCount[i] == XCount[i])
{
ColorVec = FVector(0, 0, 0);
ColorVec = PawnBase->Data->TransferFunction->GetVectorValue((i + 0.5) / (float)bins) / 3;
}
else
{
......@@ -266,17 +243,17 @@ void UPlotCanvas::DrawParallelCoordinatesPlot()
for (int i = 0; i < PawnBase->Plot3D->Points.Num(); ++i)
{
int32 x0 = 0;
int32 x1 = canvasWidth * 1 / 5;
int32 x2 = canvasWidth * 2 / 5;
int32 x3 = canvasWidth * 3 / 5;
int32 x4 = canvasWidth * 4 / 5;
int32 x5 = canvasWidth;
int32 x1 = CanvasWidth * 1 / 5;
int32 x2 = CanvasWidth * 2 / 5;
int32 x3 = CanvasWidth * 3 / 5;
int32 x4 = CanvasWidth * 4 / 5;
int32 x5 = CanvasWidth;
int32 y0;
float Diff = (PawnBase->Data->MaxX - PawnBase->Data->MinX);
if (Diff != 0)
{
y0 = (PawnBase->Data->X[i] - PawnBase->Data->MinX) / Diff * canvasHeight / 4;
y0 = (PawnBase->Data->X[i] - PawnBase->Data->MinX) / Diff * CanvasHeight / 4;
}
else
{
......@@ -287,7 +264,7 @@ void UPlotCanvas::DrawParallelCoordinatesPlot()
Diff = (PawnBase->Data->MaxY - PawnBase->Data->MinY);
if (Diff != 0)
{
y1 = (PawnBase->Data->Y[i] - PawnBase->Data->MinY) / Diff * canvasHeight / 4;
y1 = (PawnBase->Data->Y[i] - PawnBase->Data->MinY) / Diff * CanvasHeight / 4;
}
else
{
......@@ -298,7 +275,7 @@ void UPlotCanvas::DrawParallelCoordinatesPlot()
Diff = (PawnBase->Data->MaxZ - PawnBase->Data->MinZ);
if (Diff != 0)
{
y2 = (PawnBase->Data->Z[i] - PawnBase->Data->MinZ) / Diff * canvasHeight / 4;
y2 = (PawnBase->Data->Z[i] - PawnBase->Data->MinZ) / Diff * CanvasHeight / 4;
}
else
{
......@@ -309,7 +286,7 @@ void UPlotCanvas::DrawParallelCoordinatesPlot()
Diff = (PawnBase->Data->MaxU - PawnBase->Data->MinU);
if (Diff != 0)
{
y3 = (PawnBase->Data->U[i] - PawnBase->Data->MinU) / Diff * canvasHeight / 4;
y3 = (PawnBase->Data->U[i] - PawnBase->Data->MinU) / Diff * CanvasHeight / 4;
}
else
{
......@@ -320,7 +297,7 @@ void UPlotCanvas::DrawParallelCoordinatesPlot()
Diff = (PawnBase->Data->MaxV - PawnBase->Data->MinV);
if (Diff != 0)
{
y4 = (PawnBase->Data->V[i] - PawnBase->Data->MinV) / Diff * canvasHeight / 4;
y4 = (PawnBase->Data->V[i] - PawnBase->Data->MinV) / Diff * CanvasHeight / 4;
}
else
{
......@@ -331,7 +308,7 @@ void UPlotCanvas::DrawParallelCoordinatesPlot()
Diff = (PawnBase->Data->MaxW - PawnBase->Data->MinW);
if (Diff != 0)
{
y5 = (PawnBase->Data->W[i] - PawnBase->Data->MinW) / Diff * canvasHeight / 4;
y5 = (PawnBase->Data->W[i] - PawnBase->Data->MinW) / Diff * CanvasHeight / 4;
}
else
{
......@@ -362,57 +339,35 @@ void UPlotCanvas::DrawParallelCoordinatesPlot()
UpdateCanvas();
}
void UPlotCanvas::DrawDot(const int32 pixelCoordX, const int32 pixelCoordY)
{
uint8* canvasPixelPtr = canvasPixelData.get();
const uint8* canvasBrushPixelPtr = canvasBrushMask.get();
for (int px = -radius; px < radius; ++px)
{
for (int py = -radius; py < radius; ++py)
{
int32 tbx = px + radius;
int32 tby = py + radius;
canvasBrushPixelPtr = canvasBrushMask.get() + (tbx + tby * 2 * radius) * bytesPerPixel;
if (*(canvasBrushPixelPtr + 3) == 255) // check the alpha value of the pixel of the brush mask
{
int32 tx = pixelCoordX + px;
int32 ty = pixelCoordY + py;
DrawPixel(tx, ty, *(canvasBrushPixelPtr + 2), *(canvasBrushPixelPtr + 1), *(canvasBrushPixelPtr), *(canvasBrushPixelPtr + 3));
}
}
}
}
void UPlotCanvas::DrawPixel(const int32 x, const int32 y, const uint8 r, const uint8 g, const uint8 b, const uint8 a)
{
if (x >= 0 && x < canvasWidth && y >= 0 && y < canvasHeight)
if (x >= 0 && x < CanvasWidth && y >= 0 && y < CanvasHeight)
{
uint8* canvasPixelPtr = canvasPixelData.get() + (x + y * canvasWidth) * bytesPerPixel;
setPixelColor(canvasPixelPtr, r, g, b, a);
uint8* CanvasPixelPtr = CanvasPixelData.get() + (x + y * CanvasWidth) * BytesPerPixel;
SetPixelColor(CanvasPixelPtr, r, g, b, a);
}
}
void UPlotCanvas::ClearCanvas()
{
uint8* canvasPixelPtr = canvasPixelData.get();
for (int i = 0; i < canvasWidth * canvasHeight; ++i)
uint8* CanvasPixelPtr = CanvasPixelData.get();
for (int i = 0; i < CanvasWidth * CanvasHeight; ++i)
{
setPixelColor(canvasPixelPtr, 128, 128, 128, 0);
canvasPixelPtr += bytesPerPixel;
SetPixelColor(CanvasPixelPtr, 128, 128, 128, 0);
CanvasPixelPtr += BytesPerPixel;
}
UpdateCanvas();
}
void UPlotCanvas::UpdateCanvas()
{
if (echoUpdateTextureRegion)
if (EchoUpdateTextureRegion)
{
dynamicCanvas->UpdateTextureRegions((int32)0, (uint32)1, echoUpdateTextureRegion.get(), (uint32)bufferPitch, (uint32)bytesPerPixel, canvasPixelData.get());
DynamicCanvas->UpdateTextureRegions((int32)0, (uint32)1, EchoUpdateTextureRegion.get(), (uint32)BufferPitch, (uint32)BytesPerPixel, CanvasPixelData.get());
}
}
void UPlotCanvas::setPixelColor(uint8*& pointer, uint8 red, uint8 green, uint8 blue, uint8 alpha)
void UPlotCanvas::SetPixelColor(uint8*& pointer, uint8 red, uint8 green, uint8 blue, uint8 alpha)
{
*pointer = blue; //b
*(pointer + 1) = green; //g
......
......@@ -6,7 +6,7 @@
#include "UObject/NoExportTypes.h"
#include "Engine/Texture2D.h"
#include <memory>
#include "MyObject.h"
#include "SharedEnums.h"
#include "PlotCanvas.generated.h"
/**
......@@ -20,7 +20,7 @@ class IMMERSIVEANALYTICS_API UPlotCanvas : public UObject
public:
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = Variables)
UTexture2D* dynamicCanvas;
UTexture2D* DynamicCanvas;
UFUNCTION(BlueprintCallable, Category = DrawingTools)
void SetXAxisType(EAxisType Type);
......@@ -40,9 +40,6 @@ public:
UFUNCTION(BlueprintCallable, Category = DrawingTools)
void ClearCanvas();
UFUNCTION(BlueprintCallable, Category = DrawingTools)
void InitializeDrawingTools(const int32 brushRadius, uint8 r, uint8 g, uint8 b);
UFUNCTION(BlueprintCallable, Category = DrawingTools)
void DrawScatterPlot();
......@@ -52,19 +49,12 @@ public:
UFUNCTION(BlueprintCallable, Category = DrawingTools)
void DrawParallelCoordinatesPlot();
UFUNCTION(BlueprintCallable, Category = DrawingTools)
void DrawDot(const int32 pixelCoordX, const int32 pixelCoordY);
UFUNCTION(BlueprintCallable, Category = DrawingTools)
void DrawPixel(const int32 x, const int32 y, const uint8 r, const uint8 g, const uint8 b, const uint8 a);
UFUNCTION(BlueprintCallable, Category = DrawingTools)
void DrawLine(int32 x1, int32 y1, int32 x2, int32 y2, const uint8 r, const uint8 g, const uint8 b, const uint8 a);
void BrushPoints(TArray<int32> BrushPoints, bool Add, bool Rebuild);
void BrushPoint(int32 PointIndex, bool Add);
UFUNCTION(BlueprintCallable, Category = DrawingTools)
void DrawRectangle(int32 x1, int32 y1, int32 x2, int32 y2, const uint8 r, const uint8 g, const uint8 b, const uint8 a);
......@@ -78,24 +68,16 @@ public:
float YMax;
private:
// canvas
std::unique_ptr<uint8[]> canvasPixelData;
int canvasWidth;
int canvasHeight;
int bytesPerPixel;
int bufferPitch;
int bufferSize;
// draw brush tool
std::unique_ptr<uint8[]> canvasBrushMask;
int radius;
int brushBufferSize;
std::unique_ptr<FUpdateTextureRegion2D> echoUpdateTextureRegion;
void setPixelColor(uint8*& pointer, uint8 red, uint8 green, uint8 blue, uint8 alpha);
std::unique_ptr<uint8[]> CanvasPixelData;
int CanvasWidth;
int CanvasHeight;
int BytesPerPixel;
int BufferPitch;
int BufferSize;
TArray<float>* XArray;
std::unique_ptr<FUpdateTextureRegion2D> EchoUpdateTextureRegion;
void SetPixelColor(uint8*& pointer, uint8 red, uint8 green, uint8 blue, uint8 alpha);
TArray<float>* XArray;
TArray<float>* YArray;
};
// Fill out your copyright notice in the Description page of Project Settings.
#include "PlotRenderTarget.h"
#include "PawnBase.h"
#include "Plot3D.h"
#include "Runtime/Engine/Classes/Engine/Canvas.h"
#include "Runtime/Engine/Classes/Kismet/GameplayStatics.h"
UPlotRenderTarget::UPlotRenderTarget()
{
TScriptDelegate <FWeakObjectPtr> MyDelegate;
MyDelegate.BindUFunction(this, "OnUpdate");
OnCanvasRenderTargetUpdate.Add(MyDelegate);
}
void UPlotRenderTarget::OnUpdate(UCanvas * Canvas, int32 Width, int32 Height)
{
if (!MaterialDot)
{
return;
}
APawn* Pawn = UGameplayStatics::GetPlayerPawn(this, 0);
APawnBase* PawnBase = Cast<APawnBase>(Pawn);
/*
for (int i = 0; i < PawnBase->Plot3D->Points.Num(); ++i)
{
FVector2D Location = FVector2D(PawnBase->Plot3D->Points[i].Location.X * 10000 + Width / 2, PawnBase->Plot3D->U[i] * 5 + Height / 2);
FVector2D LocationB = Location + FVector2D(0, 1);
// Still not fast enough. Using other way to draw the graph.
FCanvasLineItem LineItem(Location, LocationB);
LineItem.LineThickness = 2;
LineItem.SetColor(FLinearColor(1, 1, 1));
LineItem.Draw(Canvas->Canvas);
//Canvas->K2_DrawBox(Location, FVector2D(10, 10), 5);
//Canvas->K2_DrawMaterial(MaterialDot, Location, FVector2D(10, 10), FVector2D(0, 0), FVector2D(1, 1), 0, FVector2D(0.5, 0.5));
//Canvas->K2_DrawLine(Location, LocationB, 2);
}*/
}
// Fill out your copyright notice in the Description page of Project Settings.
#pragma once
#include "CoreMinimal.h"
#include "Engine/CanvasRenderTarget2D.h"
#include "PlotRenderTarget.generated.h"
/**
*
*/
UCLASS()
class IMMERSIVEANALYTICS_API UPlotRenderTarget : public UCanvasRenderTarget2D
{
GENERATED_BODY()
public:
UPlotRenderTarget();
UFUNCTION()
void OnUpdate(UCanvas* Canvas, int32 Width, int32 Height);
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = Default)
UMaterialInterface* MaterialDot;
};
// Fill out your copyright notice in the Description page of Project Settings.
#include "MyObject.h"
#include "SharedEnums.h"
......@@ -4,7 +4,7 @@
#include "CoreMinimal.h"
#include "UObject/NoExportTypes.h"
#include "MyObject.generated.h"
#include "SharedEnums.generated.h"
UENUM(BlueprintType) //"BlueprintType" is essential to include
enum class EAxisType : uint8
......@@ -16,7 +16,7 @@ enum class EAxisType : uint8
*
*/
UCLASS()
class IMMERSIVEANALYTICS_API UMyObject : public UObject
class IMMERSIVEANALYTICS_API USharedEnums : public UObject
{
GENERATED_BODY()
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment