public FullScreenWindow(ref GLRenderer renderer, ref GLCamera camera, ref AnimationController animationController, ref GLControl control, float fieldOfView, float nearPlane, float farPlane) { // Store references this.renderer = renderer; this.camera = camera; this.animationController = animationController; this.fieldOfView = fieldOfView; this.nearPlane = nearPlane; this.farPlane = farPlane; this.mainGLControl = control; InitializeComponent(); // // Set up callbacks. // // GLControl Callbacks glControlMain.Load += new EventHandler(GLControlMainOnLoad); glControlMain.Resize += new EventHandler(GLControlMainOnResize); glControlMain.Paint += new PaintEventHandler(GLControlMainOnPaint); // Set mouse events glControlMain.MouseDown += new MouseEventHandler(GLControlOnMouseDown); glControlMain.MouseUp += new MouseEventHandler(GLControlOnMouseUp); glControlMain.MouseWheel += new MouseEventHandler(GLControlOnMouseWheel); glControlMain.MouseMove += new MouseEventHandler(GLControlOnMouseMove); // Set keyboard events glControlMain.KeyDown += new KeyEventHandler(GLControlMainOnKeyDown); glControlMain.KeyUp += new KeyEventHandler(GLControlMainOnKeyUp); }
private void GenerateVideo(ISampleSource source) { Console.WriteLine("Initializing video writer..."); using (var writer = new VideoWriter(options.OutputFile.FullName)) { writer.Width = 1920; writer.Height = 1080; writer.Fps = options.Fps; writer.AudioSampleRate = source.WaveFormat.SampleRate; writer.Open(); double totalFrames = FrameMath.CalculateTotalFrames(source, options); Console.WriteLine("Initializing renderer..."); using (var renderer = new GLRenderer(false)) { var wallpaper = Image.FromFile(options.WallpaperFile.FullName) as Bitmap; wallpaperTexture = renderer.LoadTexture(wallpaper); effectChain.Initialize(source.ToMono(), options); Console.WriteLine("Generating video..."); float[] sampleBuffer = new float[writer.AudioSamplesPerFrame]; var frameNumber = 0; while (true) { if (writer.WriteVideo) { renderer.Clear(); RenderFrame(renderer, new Frame(frameNumber, TimeSpan.FromSeconds(frameNumber / (double)options.Fps))); var frame = renderer.Snapshot(); writer.WriteVideoFrame(frame); if (frameNumber % 60 == 0) { ProgressHandler?.Invoke(Math.Round(frameNumber / totalFrames * 100.0, 2)); } frameNumber++; } else { var read = source.Read(sampleBuffer, 0, sampleBuffer.Length); if (read > 0) { writer.WriteAudioFrame(sampleBuffer); } else { break; } } } ProgressHandler?.Invoke(Math.Round(frameNumber / totalFrames * 100.0, 2)); } } }
void Start() { Application.runInBackground = true; RectTransform rectTransform = GetComponent <RectTransform>(); Renderer renderer = GetComponent <Renderer>(); videoWidth = (int)rectTransform.rect.width; videoHeight = (int)rectTransform.rect.height; if (IsWebcam) { WebCamDevice[] devices = WebCamTexture.devices; webcamTexture = new WebCamTexture(devices[0].name, videoWidth, videoHeight, FPS); renderer.material.mainTexture = webcamTexture; webcamTexture.Play(); texture = new Texture2D(webcamTexture.width, webcamTexture.height); } else { VideoPlayer videoPlayer = GetComponent <VideoPlayer>(); videoTexture = new RenderTexture(videoWidth, videoHeight, 24); videoPlayer.targetTexture = videoTexture; renderer.material.mainTexture = videoTexture; videoPlayer.Play(); texture = new Texture2D(videoTexture.width, videoTexture.height); } scaleTexture = new Texture2D(detectWidth, detectHeight, TextureFormat.ARGB32, true); scaleRenderTexture = new RenderTexture(detectWidth, detectHeight, 32); TextAsset graphModel = Resources.Load("frozen_model") as TextAsset; graph = new TFGraph(); graph.Import(graphModel.bytes); session = new TFSession(graph); gl = GameObject.Find("GLRender").GetComponent <GLRenderer>(); var vroid = GameObject.Find("VRoid"); Dictionary <string, GameObject> tmp = new Dictionary <string, GameObject>(); GetJoints(vroid, ref tmp); dst["hips"] = tmp["J_Bip_C_Hips"]; dst["spine"] = tmp["J_Bip_C_Spine"]; dst["chest"] = tmp["J_Bip_C_Chest"]; dst["upperChest"] = tmp["J_Bip_C_UpperChest"]; dst["neck"] = tmp["J_Bip_C_Neck"]; dst["head"] = tmp["J_Bip_C_Head"]; dst["upperArmL"] = tmp["J_Bip_L_UpperArm"]; dst["upperArmR"] = tmp["J_Bip_R_UpperArm"]; dst["lowerArmL"] = tmp["J_Bip_L_LowerArm"]; dst["lowerArmR"] = tmp["J_Bip_R_LowerArm"]; dst["handL"] = tmp["J_Bip_L_Hand"]; dst["handR"] = tmp["J_Bip_R_Hand"]; dst["upperLegL"] = tmp["J_Bip_L_UpperLeg"]; dst["upperLegR"] = tmp["J_Bip_R_UpperLeg"]; dst["lowerLegL"] = tmp["J_Bip_L_LowerLeg"]; dst["lowerLegR"] = tmp["J_Bip_R_LowerLeg"]; dst["footL"] = tmp["J_Bip_L_Foot"]; dst["footR"] = tmp["J_Bip_R_Foot"]; }
public void Update(double delta_time, List <Entity> entities) { foreach (var entity in entities) { var transform = entity.GetComponent <Transform>(); var player = entity.GetComponent <Player>(); var mob = entity.GetComponent <Mob>(); GLRenderer.DrawTexture(player.texture, new Rectangle(transform.postion, player.width, player.height)); } }
private void Awake() { InitSplineMaterial(); GLRenderer glRenderer = FindObjectOfType <GLRenderer>(); if (glRenderer == null) { GameObject go = new GameObject(); go.name = "GLRenderer"; go.AddComponent <GLRenderer>(); } m_spline = GetComponent <SplineBase>(); }
public void Update(double delta_time, List <Entity> entities) { var glyph_uv_offset = new Vector2(GLRenderer.GlyphSize, GLRenderer.GlyphSize); foreach (var entity in entities) { var gui_text = entity.GetComponent <GUIText>(); var transform = entity.GetComponent <Transform>(); var pos = transform.postion; pos.Z = -1; GLRenderer.DrawText(transform.postion, gui_text.CharSize, gui_text.Text); } }
public void Render(Matrix4 view, Matrix4 projection) { GLRenderer renderer = Engine.Renderer; uniforms.SetUniform("mvp", new Uniform(UniformType.Matrix4, view * projection)); renderer.PushDrawData(DrawType.Opaque, new GLDrawData { Mesh = mesh, Shader = shader, Uniforms = uniforms }); }
public void Update(double delta_time, List <Entity> entities) { for (int i = 0; i < entities.Count; i++) { var transform = entities[i].GetComponent <Transform>(); var cursor = entities[i].GetComponent <Cursor>(); GLRenderer.SetColor(cursor.Color); var pos = transform.postion; pos.Xy /= GLRenderer.Zoom; var rec = new Rectangle(pos, 0.05f, 0.05f); GLRenderer.FillRectangle(rec); } }
// Use this for initialization void Start() { WebCamDevice[] devices = WebCamTexture.devices; webcamTexture = new WebCamTexture(devices[0].name, Width, Height, FPS); GetComponent <Renderer>().material.mainTexture = webcamTexture; webcamTexture.Play(); TextAsset graphModel = Resources.Load("frozen_model") as TextAsset; graph = new TFGraph(); graph.Import(graphModel.bytes); session = new TFSession(graph); gl = GameObject.Find("GLRender").GetComponent <GLRenderer>(); }
// Use this for initialization void Start() { var heatmap = GetResourcesToFloats("heatmaps", 33, 33, 17); var offsets = GetResourcesToFloats("offsets", 33, 33, 34); var displacementsFwd = GetResourcesToFloats("displacementsFwd", 33, 33, 32); var displacementsBwd = GetResourcesToFloats("displacementsBwd", 33, 33, 32); poses = posenet.DecodeMultiplePoses( heatmap, offsets, displacementsFwd, displacementsBwd, outputStride: 16, maxPoseDetections: 15, scoreThreshold: 0.5f, nmsRadius: 20); gl = glgo.GetComponent <GLRenderer>(); }
public static int GLCheckInstallation( GLRenderer rendererToCheck, GLMode modeToCheck, out string glVendor, out string glRenderer, out string glVersion) { Logger.Info("Checking for GLRenderer: {0}, GLMode: {1}", (object)rendererToCheck, (object)modeToCheck); string str1 = ""; string str2 = ""; string str3 = ""; glVendor = str1; glRenderer = str2; glVersion = str3; return(BlueStacksGL.Run(BlueStacksGL.BinaryPath, BlueStacksGL.GetArgs(rendererToCheck, modeToCheck), true, true, out glVendor, out glRenderer, out glVersion, 10000)); }
// Use this for initialization void Start() { _camera = GetComponent <Camera>(); WebCamDevice[] devices = WebCamTexture.devices; if (devices.Length > 1) { webcamTexture = new WebCamTexture(devices[1].name, Screen.width, (Screen.height / 2), FPS); } else { webcamTexture = new WebCamTexture(devices[0].name, Screen.width, (Screen.height / 2), FPS); } if (posenet == null) { posenet = new PoseNet(); debugText.text = "Model Loaded"; } // GetComponent<Renderer>().material.mainTexture = webcamTexture; m_Display.material.mainTexture = webcamTexture; // model = ModelLoader.LoadFromStreamingAssets(modelName + ".bytes"); // worker = BarracudaWorkerFactory.CreateWorker(BarracudaWorkerFactory.Type.Compute, model); webcamTexture.Play(); // gl = GameObject.Find("GLRenderer").GetComponent<GLRenderer>(); gl = GameObject.FindGameObjectWithTag("GLRenderer").GetComponent <GLRenderer>(); // StartCoroutine(PoseUpdateFromStart()); Debug.Log("Made it to the end of start"); // worker.Dispose(); }
// Start is called before the first frame update void Start() { var model = ModelLoader.LoadFromStreamingAssets(modelName + ".bytes"); var worker = BarracudaWorkerFactory.CreateWorker(BarracudaWorkerFactory.Type.Compute, model); foreach (var layer in model.layers) { Debug.Log("Layer " + layer.name + " does: " + layer.inputs); } var inputs = new Dictionary <string, Tensor>(); Texture2D img = Resources.Load("tennis_in_crowd") as Texture2D; // Texture2D img = testImage.mainTexture as Texture2D; var tensor = new Tensor(img, 3); inputs.Add("image", tensor); worker.ExecuteAndWaitForCompletion(inputs); var Heatmap = worker.Fetch("heatmap"); var Offset = worker.Fetch("offset_2"); var Dis_fwd = worker.Fetch("displacement_fwd_2"); var Dis_bwd = worker.Fetch("displacement_bwd_2"); poses = posenet.DecodeMultiplePosesOG(Heatmap, Offset, Dis_fwd, Dis_bwd, outputStride: 16, maxPoseDetections: 2, scoreThreshold: 0.02f, nmsRadius: 20); gl = GameObject.Find("GLRenderer").GetComponent <GLRenderer>(); Debug.Log(poses.Length); // Debug.Log(Heatmap.height); Heatmap.Dispose(); Offset.Dispose(); Dis_fwd.Dispose(); Dis_bwd.Dispose(); worker.Dispose(); }
void Start() { TextAsset graphModel = Resources.Load("frozen_model") as TextAsset; var graph = new TFGraph(); graph.Import(graphModel.bytes); var session = new TFSession(graph); Texture2D image = Resources.Load("tennis_in_crowd") as Texture2D; image = scaled(image, ImageSize, ImageSize); var tensor = TransformInput(image.GetPixels32(), ImageSize, ImageSize); var runner = session.GetRunner(); runner.AddInput(graph ["image"] [0], tensor); runner.Fetch( graph ["heatmap"] [0], graph ["offset_2"] [0], graph ["displacement_fwd_2"] [0], graph ["displacement_bwd_2"] [0] ); var result = runner.Run(); var heatmap = (float [, , , ])result [0].GetValue(jagged: false); var offsets = (float [, , , ])result [1].GetValue(jagged: false); var displacementsFwd = (float [, , , ])result [2].GetValue(jagged: false); var displacementsBwd = (float [, , , ])result [3].GetValue(jagged: false); //Debug.Log(mean(heatmap)); poses = posenet.DecodeMultiplePoses( heatmap, offsets, displacementsFwd, displacementsBwd, outputStride: 16, maxPoseDetections: 15, scoreThreshold: 0.5f, nmsRadius: 20); gl = glgo.GetComponent <GLRenderer>(); }
public static void AddRenderDelegate(GL_RenderDelegate func) { if (glRenderer == null) { glRenderer = Camera.main.gameObject.AddComponent<GLRenderer>(); } if (renderDelegates == null) { renderDelegates = new List<GL_RenderDelegate>(); } if (!renderDelegates.Contains(func)) { renderDelegates.Add(func); } }
public MainWindow() { logger = new Logger(DEFAULT_LOG_FILE); // Not checking result. logger.Event("Program Start."); isGLLoaded = false; timer = new Stopwatch(); camera = new GLCamera(); camera.SetViewParameters(new Vector3(0.0f, 0.0f, 2.0f), Vector3.Zero); renderer = new GLRenderer(); // Set up the reader and initialize its root to the value in 'lolviewer.dat' if // the file exists. { reader = new LOLDirectoryReader(); bool isFileOpen = false; FileStream file = null; try { FileInfo fileInfo = new FileInfo(DEFAULT_DATA_FILE); if (fileInfo.Exists == true) { file = new FileStream(fileInfo.FullName, FileMode.Open); isFileOpen = true; } else { logger.Warning("Failed to locate " + DEFAULT_DATA_FILE + "."); } } catch { logger.Warning("Failed to open " + DEFAULT_DATA_FILE + "."); } if (isFileOpen == true) { BinaryReader fileReader = null; if (file != null) { try { logger.Event("Reading " + DEFAULT_DATA_FILE + "."); fileReader = new BinaryReader(file); reader.Root = fileReader.ReadString(); fileReader.Close(); } catch { logger.Warning("Failed to read " + DEFAULT_DATA_FILE + "."); file.Close(); } } } } InitializeComponent(); mainWindowProgressBar.Style = ProgressBarStyle.Marquee; mainWindowProgressBar.Value = 100; lastSearch = String.Empty; currentSearchSubset = new List <String>(); // Main window Callbacks this.Shown += new EventHandler(OnMainWindowShown); // GLControl Callbacks glControlMain.Load += new EventHandler(GLControlMainOnLoad); glControlMain.Resize += new EventHandler(GLControlMainOnResize); glControlMain.Paint += new PaintEventHandler(GLControlMainOnPaint); glControlMain.Disposed += new EventHandler(GLControlMainOnDispose); // Set mouse events glControlMain.MouseDown += new MouseEventHandler(GLControlOnMouseDown); glControlMain.MouseUp += new MouseEventHandler(GLControlOnMouseUp); glControlMain.MouseWheel += new MouseEventHandler(GLControlOnMouseWheel); glControlMain.MouseMove += new MouseEventHandler(GLControlOnMouseMove); // Set keyboard events glControlMain.KeyDown += new KeyEventHandler(GLControlMainOnKeyDown); glControlMain.KeyUp += new KeyEventHandler(GLControlMainOnKeyUp); // Menu Callbacks exitToolStripMenuItem.Click += new EventHandler(OnExit); aboutToolStripMenuItem.Click += new EventHandler(OnAbout); readDirectoryMainMenuStripItem.Click += new EventHandler(OnReadModels); readMainMenuStripItem.Click += new EventHandler(OnSetDirectory); // Model View Callbacks modelListBox.DoubleClick += new EventHandler(OnModelListDoubleClick); modelListBox.KeyPress += new KeyPressEventHandler(OnModelListKeyPress); // Buttons resetCameraButton.Click += new EventHandler(OnResetCameraButtonClick); backgroundColorButton.Click += new EventHandler(OnBackgroundColorButtonClick); fullscreenButton.Click += new EventHandler(OnFullscreenButtonClick); // // Animation Controller // // TODO: Pass the references and callbacks into constructor instead of doing them out here. // Kind of ugly code. :( animationController = new AnimationController(); // Set references animationController.enableAnimationButton = enableAnimationButton; animationController.currentAnimationComboBox = currentAnimationComboBox; animationController.playAnimationButton = playAnimationButton; animationController.glControlMain = glControlMain; animationController.timelineTrackBar = timelineTrackBar; animationController.mainWindowStatusLabel = mainWindowStatusLabel; animationController.renderer = renderer; // Set callbacks. enableAnimationButton.Click += new EventHandler(animationController.OnEnableAnimationButtonClick); playAnimationButton.Click += new EventHandler(animationController.OnPlayAnimationButtonClick); currentAnimationComboBox.SelectedIndexChanged += new EventHandler(animationController.OnCurrentAnimationComboBoxSelectedIndexChanged); timelineTrackBar.Scroll += new EventHandler(animationController.OnTimelineTrackBar); animationController.DisableAnimation(); // // End Animation Controller // // Search Box modelSearchBox.TextChanged += new EventHandler(OnModelSearchBoxTextChanged); modelSearchBox.KeyPress += new KeyPressEventHandler(OnModelSearchBoxKeyPress); modelSearchBox.KeyDown += new KeyEventHandler(OnModelSearchBoxKeyDown); }
public MainWindow() { logger = new Logger(DEFAULT_LOG_FILE); // Not checking result. logger.Event("Program Start."); isGLLoaded = false; timer = new Stopwatch(); camera = new GLCamera(); camera.SetViewParameters(new Vector3(0.0f, 0.0f, 2.0f), Vector3.Zero); renderer = new GLRenderer(); // Set up the reader and initialize its root to the value in 'lolviewer.dat' if // the file exists. { reader = new LOLDirectoryReader(); bool isFileOpen = false; FileStream file = null; try { FileInfo fileInfo = new FileInfo(DEFAULT_DATA_FILE); if (fileInfo.Exists == true) { file = new FileStream(fileInfo.FullName, FileMode.Open); isFileOpen = true; } else { logger.Warning("Failed to locate " + DEFAULT_DATA_FILE + "."); } } catch { logger.Warning("Failed to open " + DEFAULT_DATA_FILE + "."); } if (isFileOpen == true) { BinaryReader fileReader = null; if (file != null) { try { logger.Event("Reading " + DEFAULT_DATA_FILE + "."); fileReader = new BinaryReader(file); reader.Root = fileReader.ReadString(); fileReader.Close(); } catch { logger.Warning("Failed to read " + DEFAULT_DATA_FILE + "."); file.Close(); } } } } InitializeComponent(); mainWindowProgressBar.Style = ProgressBarStyle.Marquee; mainWindowProgressBar.Value = 100; lastSearch = String.Empty; currentSearchSubset = new List<String>(); // Main window Callbacks this.Shown += new EventHandler(OnMainWindowShown); // GLControl Callbacks glControlMain.Load += new EventHandler(GLControlMainOnLoad); glControlMain.Resize += new EventHandler(GLControlMainOnResize); glControlMain.Paint += new PaintEventHandler(GLControlMainOnPaint); glControlMain.Disposed += new EventHandler(GLControlMainOnDispose); // Set mouse events glControlMain.MouseDown += new MouseEventHandler(GLControlOnMouseDown); glControlMain.MouseUp += new MouseEventHandler(GLControlOnMouseUp); glControlMain.MouseWheel += new MouseEventHandler(GLControlOnMouseWheel); glControlMain.MouseMove += new MouseEventHandler(GLControlOnMouseMove); // Set keyboard events glControlMain.KeyDown += new KeyEventHandler(GLControlMainOnKeyDown); glControlMain.KeyUp += new KeyEventHandler(GLControlMainOnKeyUp); // Menu Callbacks exitToolStripMenuItem.Click += new EventHandler(OnExit); aboutToolStripMenuItem.Click += new EventHandler(OnAbout); readDirectoryMainMenuStripItem.Click += new EventHandler(OnReadModels); readMainMenuStripItem.Click += new EventHandler(OnSetDirectory); // Model View Callbacks modelListBox.DoubleClick += new EventHandler(OnModelListDoubleClick); modelListBox.KeyPress += new KeyPressEventHandler(OnModelListKeyPress); // Buttons resetCameraButton.Click += new EventHandler(OnResetCameraButtonClick); backgroundColorButton.Click += new EventHandler(OnBackgroundColorButtonClick); fullscreenButton.Click += new EventHandler(OnFullscreenButtonClick); // // Animation Controller // // TODO: Pass the references and callbacks into constructor instead of doing them out here. // Kind of ugly code. :( animationController = new AnimationController(); // Set references animationController.enableAnimationButton = enableAnimationButton; animationController.currentAnimationComboBox = currentAnimationComboBox; animationController.playAnimationButton = playAnimationButton; animationController.glControlMain = glControlMain; animationController.timelineTrackBar = timelineTrackBar; animationController.mainWindowStatusLabel = mainWindowStatusLabel; animationController.renderer = renderer; // Set callbacks. enableAnimationButton.Click += new EventHandler(animationController.OnEnableAnimationButtonClick); playAnimationButton.Click += new EventHandler(animationController.OnPlayAnimationButtonClick); currentAnimationComboBox.SelectedIndexChanged += new EventHandler(animationController.OnCurrentAnimationComboBoxSelectedIndexChanged); timelineTrackBar.Scroll += new EventHandler(animationController.OnTimelineTrackBar); animationController.DisableAnimation(); // // End Animation Controller // // Search Box modelSearchBox.TextChanged += new EventHandler(OnModelSearchBoxTextChanged); modelSearchBox.KeyPress += new KeyPressEventHandler(OnModelSearchBoxKeyPress); modelSearchBox.KeyDown += new KeyEventHandler(OnModelSearchBoxKeyDown); }
private static string GetArgs(GLRenderer rendererToCheck, GLMode modeToCheck) { return(string.Format("{0} {1}", (object)(int)rendererToCheck, (object)(int)modeToCheck)); }
public TestPhysics(GLRenderer renderer) : base(renderer) { }
public static void AddObject(GLObject o) { if(glRenderer == null) { glRenderer = Camera.main.gameObject.AddComponent<GLRenderer>(); } if(glObjects == null) { glObjects = new List<GLObject>(); } if(!glObjects.Contains(o)) { glObjects.Add(o); } }
public TestPBR(GLRenderer renderer) : base(renderer) { }