public void Attach(RenderHandle renderHandle) { // This component never renders, so we can ignore the renderHandle }
void IComponent.Attach(RenderHandle renderHandle) { _registry = renderHandle.Dispatcher.SectionRegistry; }
public void Attach(RenderHandle renderHandle) { }
/// <summary> /// /// </summary> /// <param name="renderHandle"></param> public void Attach(RenderHandle renderHandle) => ServiceProviderHelper.RegisterProviderRoot(Provider);
public void Init(RenderHandle renderHandle) { _renderHandle = renderHandle; }
public void Init(RenderHandle renderHandle) => RenderHandle = renderHandle;
public void Attach(RenderHandle renderHandle) { _renderHandle = renderHandle; }
public void Attach(RenderHandle renderHandle) => throw new InvalidTimeZoneException();
private void _initOpenGL() { _loadExtensions(); GL.Enable(EnableCap.Blend); GL.BlendFunc(BlendingFactor.SrcAlpha, BlendingFactor.OneMinusSrcAlpha); var vendor = GL.GetString(StringName.Vendor); var renderer = GL.GetString(StringName.Renderer); var version = GL.GetString(StringName.Version); Logger.DebugS("ogl", "OpenGL Vendor: {0}", vendor); Logger.DebugS("ogl", "OpenGL Renderer: {0}", renderer); Logger.DebugS("ogl", "OpenGL Version: {0}", version); _loadVendorSettings(vendor, renderer, version); #if DEBUG _hijackDebugCallback(); #endif _loadStockTextures(); Vertex2DProgram = _compileProgram( new ResourcePath("/Shaders/Internal/sprite.vert"), new ResourcePath("/Shaders/Internal/sprite.frag"), "Vertex2DProgram"); Vertex2DProgram.BindBlock("projectionViewMatrices", ProjViewBindingIndex); Vertex2DArrayProgram = _compileProgram( new ResourcePath("/Shaders/Internal/sprite-arrayed.vert"), new ResourcePath("/Shaders/Internal/sprite-arrayed.frag"), "Vertex2DArrayProgram"); Vertex2DArrayProgram.BindBlock("projectionViewMatrices", ProjViewBindingIndex); var quadVertices = new[] { new Vertex2D(1, 0, 1, 1, 1), new Vertex2D(0, 0, 0, 1, 1), new Vertex2D(1, 1, 1, 0, 1), new Vertex2D(0, 1, 0, 0, 1), }; QuadVBO = new Buffer <Vertex2D>(this, BufferTarget.ArrayBuffer, BufferUsageHint.StaticDraw, quadVertices, "QuadVBO"); QuadVAO = new OGLHandle(GL.GenVertexArray()); GL.BindVertexArray(QuadVAO.Handle); _objectLabelMaybe(ObjectLabelIdentifier.VertexArray, QuadVAO, "QuadVAO"); // Vertex Coords GL.VertexAttribPointer(0, 2, VertexAttribPointerType.Float, false, Vertex2D.SizeOf, 0); GL.EnableVertexAttribArray(0); // Texture Coords. GL.VertexAttribPointer(1, 2, VertexAttribPointerType.Float, false, Vertex2D.SizeOf, 2 * sizeof(float)); GL.EnableVertexAttribArray(1); // Texture Array Index. GL.VertexAttribPointer(2, 1, VertexAttribPointerType.Float, false, Vertex2D.SizeOf, 4 * sizeof(float)); GL.EnableVertexAttribArray(2); BatchVBO = new Buffer(this, BufferTarget.ArrayBuffer, BufferUsageHint.DynamicDraw, Vertex2D.SizeOf * BatchVertexData.Length, "BatchVBO"); BatchVAO = new OGLHandle(GL.GenVertexArray()); GL.BindVertexArray(BatchVAO.Handle); _objectLabelMaybe(ObjectLabelIdentifier.VertexArray, BatchVAO, "BatchVAO"); // Vertex Coords GL.VertexAttribPointer(0, 2, VertexAttribPointerType.Float, false, Vertex2D.SizeOf, 0); GL.EnableVertexAttribArray(0); // Texture Coords. GL.VertexAttribPointer(1, 2, VertexAttribPointerType.Float, false, Vertex2D.SizeOf, 2 * sizeof(float)); GL.EnableVertexAttribArray(1); BatchEBO = new Buffer(this, BufferTarget.ElementArrayBuffer, BufferUsageHint.DynamicDraw, sizeof(ushort) * BatchIndexData.Length, "BatchEBO"); BatchArrayedVAO = new OGLHandle(GL.GenVertexArray()); BatchVBO.Use(); BatchEBO.Use(); GL.BindVertexArray(BatchArrayedVAO.Handle); _objectLabelMaybe(ObjectLabelIdentifier.VertexArray, BatchArrayedVAO, "BatchArrayedVAO"); // Vertex Coords GL.VertexAttribPointer(0, 2, VertexAttribPointerType.Float, false, Vertex2D.SizeOf, 0); GL.EnableVertexAttribArray(0); // Texture Coords. GL.VertexAttribPointer(1, 2, VertexAttribPointerType.Float, false, Vertex2D.SizeOf, 2 * sizeof(float)); GL.EnableVertexAttribArray(1); // Texture Array Index. GL.VertexAttribPointer(2, 1, VertexAttribPointerType.Float, false, Vertex2D.SizeOf, 4 * sizeof(float)); GL.EnableVertexAttribArray(2); ProjViewUBO = new Buffer(this, BufferTarget.UniformBuffer, BufferUsageHint.StreamDraw, "ProjViewUBO"); unsafe { ProjViewUBO.Reallocate(sizeof(ProjViewMatrices)); } GL.BindBufferBase(BufferRangeTarget.UniformBuffer, ProjViewBindingIndex, ProjViewUBO.Handle); _drawingSplash = true; _renderHandle = new RenderHandle(this); GL.Viewport(0, 0, _window.Width, _window.Height); Render(null); }
void IComponent.Attach(RenderHandle renderHandle) => renderHandle.Render(BuildRenderTree);
public void Configure(RenderHandle renderHandle) { this.renderHandle = renderHandle; UriHelper.OnLocationChanged += OnLocationChanged; }
public void Attach(RenderHandle renderHandle) { this.renderHandle = renderHandle; NavigationManager.LocationChanged += OnLocationChanged; }
public abstract void Attach(RenderHandle renderHandle);
void IComponent.Attach(RenderHandle renderHandle) { }
public void Attach(RenderHandle renderHandle) => handle = renderHandle;
public DrawingHandleScreenImpl(RenderHandle renderHandle) { _renderHandle = renderHandle; }
public void Init(RenderHandle renderHandle) => _renderHandles.Add(renderHandle);
public DrawingHandleWorldImpl(RenderHandle renderHandle) { _renderHandle = renderHandle; }
public void Configure(RenderHandle renderHandle) { }
public void Configure(RenderHandle renderHandle) => throw new NotImplementedException();
public void Attach(RenderHandle renderHandle) { throw new System.NotImplementedException(); }
public Task SetParametersAsync(ParameterCollection parameters) { RenderHandle.Render(CreateRenderFragment(parameters)); return(Task.CompletedTask); }
public void Configure(RenderHandle renderHandle) { _renderHandle = renderHandle; }
public void Configure(RenderHandle renderHandle) => throw new InvalidTimeZoneException();
public void Init(RenderHandle renderHandle) => throw new NotImplementedException();
private void InitOpenGL() { var vendor = GL.GetString(StringName.Vendor); var renderer = GL.GetString(StringName.Renderer); var version = GL.GetString(StringName.Version); var major = GL.GetInteger(GetPName.MajorVersion); var minor = GL.GetInteger(GetPName.MinorVersion); _sawmillOgl.Debug("OpenGL Vendor: {0}", vendor); _sawmillOgl.Debug("OpenGL Renderer: {0}", renderer); _sawmillOgl.Debug("OpenGL Version: {0}", version); var overrideVersion = ParseGLOverrideVersion(); if (overrideVersion != null) { (major, minor) = overrideVersion.Value; _sawmillOgl.Debug("OVERRIDING detected GL version to: {0}.{1}", major, minor); } DetectOpenGLFeatures(major, minor); SetupDebugCallback(); LoadVendorSettings(vendor, renderer, version); var glVersion = new OpenGLVersion((byte)major, (byte)minor, _isGLES, _isCore); DebugInfo = new ClydeDebugInfo(glVersion, renderer, vendor, version, overrideVersion != null); GL.Enable(EnableCap.Blend); if (_hasGLSrgb) { GL.Enable(EnableCap.FramebufferSrgb); CheckGlError(); } if (_hasGLPrimitiveRestart) { GL.Enable(EnableCap.PrimitiveRestart); CheckGlError(); GL.PrimitiveRestartIndex(PrimitiveRestartIndex); CheckGlError(); } if (!HasGLAnyVertexArrayObjects) { _sawmillOgl.Warning("NO VERTEX ARRAY OBJECTS! Things will probably go terribly, terribly wrong (no fallback path yet)"); } ResetBlendFunc(); CheckGlError(); // Primitive Restart's presence or lack thereof changes the amount of required memory. InitRenderingBatchBuffers(); _sawmillOgl.Debug("Loading stock textures..."); LoadStockTextures(); _sawmillOgl.Debug("Loading stock shaders..."); LoadStockShaders(); _sawmillOgl.Debug("Creating various GL objects..."); CreateMiscGLObjects(); _sawmillOgl.Debug("Setting up RenderHandle..."); _renderHandle = new RenderHandle(this); _sawmillOgl.Debug("Setting viewport and rendering splash..."); GL.Viewport(0, 0, ScreenSize.X, ScreenSize.Y); CheckGlError(); // Quickly do a render with _drawingSplash = true so the screen isn't blank. Render(); }
public void Init(RenderHandle renderHandle) { }
void IComponent.Configure(RenderHandle renderHandle) { _renderHandle = renderHandle; }
public void Attach(RenderHandle renderHandle) { _renderHandle = renderHandle; _location = NavigationManager.Uri; NavigationManager.LocationChanged += HandleLocationChanged; }
public new void Attach(RenderHandle renderHandle) { base.Attach(renderHandle); ModuleManager.OnModulesChanged += OnModulesChanged; }