protected override void Draw() { /* * if(visibleTileRangeDirty) * UpdateVisibleTileRange();*/ base.Draw(); CCDrawManager drawManager = Window.DrawManager; var alphaTest = drawManager.AlphaTestEffect; alphaTest.AlphaFunction = CompareFunction.Greater; alphaTest.ReferenceAlpha = 0; drawManager.PushEffect(alphaTest); drawManager.BindTexture(tileSetTexture); foreach (var buffer in drawBufferManager.Buffers) { drawManager.DrawBuffer(buffer.QuadsVertexBuffer, buffer.IndexBuffer, 0, buffer.NumberOfTiles * NumOfPrimitivesPerQuad); } drawManager.PopEffect(); }
public virtual void Blit() { if (RenderTexture != null) { CCDrawManager drawManager = Scene.GameView.DrawManager; drawManager.BindTexture(RenderTexture.Texture); } }
protected override void Draw() { base.Draw(); Debug.Assert(batchNode == null); CCDrawManager drawManager = Window.DrawManager; drawManager.BlendFunc(BlendFunc); drawManager.BindTexture(Texture); drawManager.DrawQuad(ref quad); }
internal override void Execute(CCDrawManager drawManager) { // Set Texture drawManager.BindTexture(Texture); // Set blend mode drawManager.BlendFunc(BlendType); // Draw the Primitives Primitive.Draw(drawManager); drawManager.DrawCount++; // Drawn batches //drawManager.DrawVerticesCount = Primitive.Count; // Drawn Vertices in this batch }
protected override void Draw() { if (visibleTileRangeDirty) { UpdateVisibleTileRange(); } if (tileAnimationsDirty) { UpdateTileAnimations(); } base.Draw(); CCDrawManager drawManager = Window.DrawManager; var alphaTest = drawManager.AlphaTestEffect; alphaTest.AlphaFunction = CompareFunction.Greater; alphaTest.ReferenceAlpha = 0; drawManager.PushEffect(alphaTest); foreach (var drawBufferManager in drawBufferManagers) { drawManager.BindTexture(drawBufferManager.TileSetInfo.Texture); foreach (var buffer in drawBufferManager.Buffers) { if (buffer.ShouldDrawBuffer == false || buffer.NumberOfVisibleVertices == 0) { continue; } drawManager.DrawBuffer(buffer.QuadsVertexBuffer, buffer.IndexBuffer, 0, buffer.NumberOfVisiblePrimitives); } } drawManager.PopEffect(); }
internal override void Execute(CCDrawManager drawManager) { drawManager.BindTexture(Texture.Texture); drawManager.BlendFunc(BlendType); Texture.DrawQuads(); }
internal void UseMaterial(CCDrawManager drawManager) { drawManager.BlendFunc(BlendType); drawManager.BindTexture(Texture); }
public virtual void Blit() { CCDrawManager drawManager = Scene.Window.DrawManager; drawManager.BindTexture(Texture); }