private void OnEnable() { if (m_drawing == null) { m_drawing = new CustomDrawing() { renderPassEvent = RenderPassEvent.AfterRenderingSkybox, }; m_drawing.drawer += OnRenderObjectSRP; } m_planerShadowDirParam = Shader.PropertyToID("_planerLightDir"); MeshFilter[] meshFileters = GetComponentsInChildren <MeshFilter>(); Transform[] trans = GetComponentsInChildren <Transform>(); m_meshToTransform = new Dictionary <int, int>(); for (int i = 0; i < meshFileters.Length; i++) { for (int j = 0; j < trans.Length; j++) { if (meshFileters[i].name == trans[j].name) { m_meshToTransform.Add(i, j); break; } } } if (planerLight) { m_planerShadowDirTransform = planerLight.GetComponent <Transform>(); } if (!ScriptableRenderer.staticDrawingRender.Contains(m_drawing)) { ScriptableRenderer.staticDrawingRender.Add(m_drawing); } }
public ContainerView(View view, LayoutBorder padding = default(LayoutBorder)) { _view = view; var node = view.GetNode(); var container = new Container(view.Size + padding.Size, padding); container.AddChild(node); _container = container; _container.AddComponent(new Drawable() { Draw = (_, ctx) => CustomDrawing.DrawRect(ctx.Position, Size, BackgroundColor) }); }
private CustomDrawing AddDrawcall(RenderPassEvent rendereveent, CustomDrawing.DrawFunction func) { CustomDrawing drawing = new CustomDrawing() { renderPassEvent = rendereveent, }; drawing.drawer = func; if (!ScriptableRenderer.staticDrawingRender.Contains(drawing)) { ScriptableRenderer.staticDrawingRender.Add(drawing); } return(drawing); }
private void OnEnable() { if (m_drawing == null) { m_drawing = AddDrawcall(RenderPassEvent.BeforeRenderingSkybox + 2, OnParticlesDrawing); } if (m_depthBoundDrawing == null) { m_depthBoundDrawing = AddDrawcall(RenderPassEvent.BeforeRenderingSkybox + 1, OnDepthBounds); } if (m_beginFrame == null) { m_beginFrame = AddDrawcall(RenderPassEvent.BeforeRendering, OnBeginFrame); } if (m_endFrame == null) { m_endFrame = AddDrawcall(RenderPassEvent.AfterRendering, OnEndFrame); } OnInit(); }
void MainFormLoad(object sender, EventArgs e) { Image intImg = Image.FromFile("diamond.png"); Image tImg = Image.FromFile("table.png"); const int k = 5; Random r = new Random(255); try { for (int i = 0; i < k; i++) { Structure di = new Structure(diagramContainer1, "ITEM" + i.ToString()); di.TitleImage = tImg; Node cols = new Node("Columns", di); cols.AddNode(new Node("id", true, intImg, di)); cols.AddNode(new Node("type", true, intImg, di)); cols.AddNode(new Node("name", di)); cols.AddNode(new Node("surname", di)).AddNode(new Node("child1", di)).AddNode(new Node("child2", di)); cols.AddNode(new Node("key", di)); cols.AddNode(new Node("anotherKey", di)); cols.AddNode(new Node("valid", di)).AddNode(new Node("child3", di)).AddNode(new Node("child4", di)); di.AddNode(cols); di.AddOnDiagram(diagramContainer1, Color.FromArgb(r.Next(255), r.Next(255), r.Next(255))); di.Drawing.Location = new Point(r.Next(300), r.Next(300)); } } catch (Exception ex) { MessageBox.Show(ex.Message); } for (int i = 0; i < k; i++) { Color c = Color.FromArgb(r.Next(255), r.Next(255), r.Next(255)); int x = r.Next(k); int y = r.Next(k); if (x != y) { diagramContainer1.AddLink(diagramContainer1.DiagramItems[x], diagramContainer1.DiagramItems[y]); } } diagramContainer1.Invalidate(); CustomItem customItem = new CustomItem(); customItem.Color = Color.Red; customItem.Name = "CustomItem"; CustomDrawing customDrawing = new CustomDrawing(customItem); customDrawing.Movable = true; customDrawing.Size = new Size(100, 100); customItem.Drawing = customDrawing; Structure stru = (diagramContainer1.DiagramItems[0] as Structure); diagramContainer1.AddLink(stru.Nodes[0].Nodes[3], customItem); diagramContainer1.AddItem(customItem, customDrawing, true, true); diagramContainer1.AddLink(customItem, diagramContainer1.DiagramItems[0]); CircleDrawing customDrawing2 = new CircleDrawing(130, 130); customDrawing2.Movable = true; customDrawing2.Size = new Size(100, 100); diagramContainer1.AddDrawing(customDrawing2, true); diagramContainer1.AddLinkDrawing(customDrawing2, customDrawing); diagramContainer1.Invalidate(); diagramContainer1.DrawableHeight = 705; diagramContainer1.DrawableWidth = 758; }