public CCRenderTexture(CCSize contentSize, CCSize textureSizeInPixels, CCSurfaceFormat colorFormat=CCSurfaceFormat.Color, CCDepthFormat depthFormat=CCDepthFormat.None, CCRenderTargetUsage usage=CCRenderTargetUsage.DiscardContents) : this() { int textureWidth = (int)textureSizeInPixels.Width; int textureHeight = (int)textureSizeInPixels.Height; renderTarget2D = drawManager.CreateRenderTarget( textureWidth, textureHeight, colorFormat, depthFormat, usage); Texture = new CCTexture2D(renderTarget2D, colorFormat, true, false); Texture.IsAntialiased = false; Sprite = new CCSprite(Texture); Sprite.ContentSize = contentSize; Sprite.BlendFunc = CCBlendFunc.AlphaBlend; CCPoint center = contentSize.Center; renderViewMatrix = Matrix.CreateLookAt(new CCPoint3(center, 300.0f).XnaVector, new CCPoint3(center, 0.0f).XnaVector, Vector3.Up); renderProjMatrix = Matrix.CreateOrthographic(contentSize.Width, contentSize.Height, 1024f, -1024); renderViewport = new Viewport(0, 0, textureWidth, textureHeight); clearColor = CCColor4B.Transparent; drawManager.SetRenderTarget(Texture); drawManager.Clear(clearColor); drawManager.RestoreRenderTarget(); }
public CCRenderTexture(CCSize contentSize, CCSize textureSizeInPixels, CCSurfaceFormat colorFormat = CCSurfaceFormat.Color, CCDepthFormat depthFormat = CCDepthFormat.None, CCRenderTargetUsage usage = CCRenderTargetUsage.DiscardContents) : this() { int textureWidth = (int)textureSizeInPixels.Width; int textureHeight = (int)textureSizeInPixels.Height; renderTarget2D = drawManager.CreateRenderTarget( textureWidth, textureHeight, colorFormat, depthFormat, usage); Texture = new CCTexture2D(renderTarget2D, colorFormat, true, false); Texture.IsAntialiased = false; Sprite = new CCSprite(Texture); Sprite.ContentSize = contentSize; Sprite.BlendFunc = CCBlendFunc.AlphaBlend; CCPoint center = contentSize.Center; renderViewMatrix = Matrix.CreateLookAt(new CCPoint3(center, 300.0f).XnaVector, new CCPoint3(center, 0.0f).XnaVector, Vector3.Up); renderProjMatrix = Matrix.CreateOrthographic(contentSize.Width, contentSize.Height, 1024f, -1024); renderViewport = new Viewport(0, 0, textureWidth, textureHeight); clearColor = CCColor4B.Transparent; drawManager.SetRenderTarget(Texture); drawManager.Clear(clearColor); drawManager.RestoreRenderTarget(); }
internal void CreateRenderTarget(CCTexture2D texture, CCRenderTargetUsage usage) { CCSize size = texture.ContentSizeInPixels; var rtarget = CreateRenderTarget((int)size.Width, (int)size.Height, CCTexture2D.DefaultAlphaPixelFormat, platformDepthFormat, usage); texture.InitWithTexture(rtarget, CCTexture2D.DefaultAlphaPixelFormat, true, false); }
internal RenderTarget2D CreateRenderTarget(int width, int height, CCSurfaceFormat colorFormat, CCDepthFormat depthFormat, CCRenderTargetUsage usage) { if (!allowNonPower2Textures) { width = CCUtils.CCNextPOT(width); height = CCUtils.CCNextPOT(height); } return(new RenderTarget2D(graphicsDevice, width, height, false, (SurfaceFormat)colorFormat, (DepthFormat)depthFormat, 0, (RenderTargetUsage)usage)); }
public CCRenderTexture(CCSize contentSize, CCSize textureSizeInPixels, CCSurfaceFormat colorFormat=CCSurfaceFormat.Color, CCDepthFormat depthFormat=CCDepthFormat.None, CCRenderTargetUsage usage=CCRenderTargetUsage.DiscardContents) { int textureWidth = (int)textureSizeInPixels.Width; int textureHeight = (int)textureSizeInPixels.Height; firstUsage = true; renderTarget2D = CCDrawManager.SharedDrawManager.CreateRenderTarget(textureWidth, textureHeight, colorFormat, depthFormat, usage); Texture = new CCTexture2D(renderTarget2D, colorFormat, true, false); Texture.IsAntialiased = false; Sprite = new CCSprite(Texture); Sprite.ContentSize = contentSize; Sprite.BlendFunc = CCBlendFunc.AlphaBlend; AddChild(Sprite); }
public CCRenderTexture(CCSize contentSize, CCSize textureSizeInPixels, CCSurfaceFormat colorFormat = CCSurfaceFormat.Color, CCDepthFormat depthFormat = CCDepthFormat.None, CCRenderTargetUsage usage = CCRenderTargetUsage.DiscardContents) { int textureWidth = (int)textureSizeInPixels.Width; int textureHeight = (int)textureSizeInPixels.Height; firstUsage = true; renderTarget2D = CCDrawManager.SharedDrawManager.CreateRenderTarget(textureWidth, textureHeight, colorFormat, depthFormat, usage); Texture = new CCTexture2D(renderTarget2D, colorFormat, true, false); Texture.IsAntialiased = false; Sprite = new CCSprite(Texture); Sprite.ContentSize = contentSize; Sprite.BlendFunc = CCBlendFunc.AlphaBlend; AddChild(Sprite); }
internal RenderTarget2D CreateRenderTarget(int width, int height, CCSurfaceFormat colorFormat, CCRenderTargetUsage usage) { return(CreateRenderTarget(width, height, colorFormat, CCDepthFormat.None, usage)); }
internal RenderTarget2D CreateRenderTarget(int width, int height, CCRenderTargetUsage usage) { return(CreateRenderTarget(width, height, CCTexture2D.DefaultAlphaPixelFormat, CCDepthFormat.None, usage)); }