//Constructors public Score(string key, IntPtr render) : base() { color = new SDL_Color { r = 255, g = 255, b = 255, a = 0 }; SpriteEntity scoreSprite; TextureStruct textTexture = TextGenerator.GenerateTexture(render, TextGenerator.lazyFont, "void", color); if (!SpriteEntity.TextureExists(key)) { scoreSprite = new SpriteEntity("scorePlayer1", textTexture); } else { // If it already exists, simply use existing one scoreSprite = AllSprites["scorePlayer1"]; } name = key; AddSprite(key, scoreSprite); ResetPoint(render); }
protected override void UpdateTextureMovement(Move direction) { switch (direction) { case PuzzleGame.Move.UP: texture = new TextureStruct(554, 158, 50, 42); break; case PuzzleGame.Move.RIGHT: texture = new TextureStruct(512, 108, 50, 42); break; case PuzzleGame.Move.DOWN: texture = new TextureStruct(554, 208, 50, 42); break; case PuzzleGame.Move.LEFT: texture = new TextureStruct(543, 440, 50, 42); break; default: texture = new TextureStruct(554, 208, 50, 42); break; } }
public static List <Pair <Rect, Texture2D> > CreateBordersUsingSettings() { var textureStruct = new TextureStruct(Settings.StartAlpha, Settings.EndAlpha, Settings.Color_R, Settings.Color_G, Settings.Color_B); var bordersUsingSettings = CreateBorders(Settings.BorderSize, textureStruct); return(bordersUsingSettings); }
private void UpdateTexture(IntPtr render) { string pointsSTR = "" + points; TextureStruct textTexture = TextGenerator.GenerateTexture(render, TextGenerator.lazyFont, pointsSTR, color); AllSprites[name].ReplaceTexture(textTexture); AllSprites[name].Pos.x = GameConstants.SCORE_OFFSET; AllSprites[name].Pos.y = GameConstants.WINDOWS_Y - GameConstants.SCORE_OFFSET; }
private static Texture2D GradientTexture(TextureStruct textureProto, GradientType type) { if (!UnityData.IsInMainThread) { Log.Error("Tried to create a texture from a different thread."); return(null); } var from = textureProto.ColorFrom(); var to = textureProto.ColorTo(); Texture2D texture2D; switch (type) { case GradientType.Left: texture2D = LeftGradient(ref from, ref to); break; case GradientType.TopLeft: texture2D = TopLeftGradient(ref from, ref to); break; case GradientType.BottomLeft: texture2D = BottomLeftGradient(ref from, ref to); break; case GradientType.Right: texture2D = RightGradient(ref from, ref to); break; case GradientType.TopRight: texture2D = TopRightGradient(ref from, ref to); break; case GradientType.BottomRight: texture2D = BottomRightGradient(ref from, ref to); break; case GradientType.Top: texture2D = TopGradient(ref from, ref to); break; case GradientType.Bottom: texture2D = BottomGradient(ref from, ref to); break; default: throw new ArgumentOutOfRangeException(nameof(type), type, null); } texture2D.filterMode = FilterMode.Bilinear; texture2D.Apply(); return(texture2D); }
private void DisplayTextureFromFile(string path) { TextureStruct Textures = new TextureStruct(); Textures.CoordX_YText = new double[4, 3] { { 8, 0, 8 }, { 0, 0, 8 }, { 0, 0, 0 }, { 8, 0, 0 } }; Textures.X_YText = new double[4, 2] { { 0, 0 }, { 1, 0 }, { 1, 1 }, { 0, 1 } }; Bitmap BmpImage = new Bitmap(new Bitmap(path), 512, 512); Rectangle rect = new Rectangle(0, 0, BmpImage.Width, BmpImage.Height); BitmapData BmpData = BmpImage.LockBits(rect, ImageLockMode.ReadOnly, BmpImage.PixelFormat); gl.TexImage2D( OpenGL.GL_TEXTURE_2D, 0, (int)OpenGL.GL_RGBA, BmpImage.Width, BmpImage.Height, 0, OpenGL.GL_BGRA, OpenGL.GL_UNSIGNED_BYTE, BmpData.Scan0 ); BmpImage.UnlockBits(BmpData); gl.BindTexture(OpenGL.GL_TEXTURE_2D, Textures.TextureValue); gl.TexParameter(OpenGL.GL_TEXTURE_2D, OpenGL.GL_TEXTURE_MIN_FILTER, OpenGL.GL_LINEAR); gl.TexParameter(OpenGL.GL_TEXTURE_2D, OpenGL.GL_TEXTURE_MAG_FILTER, OpenGL.GL_LINEAR); gl.Enable(OpenGL.GL_TEXTURE_2D); gl.Begin(OpenGL.GL_QUADS); for (int i = 0; i < 4; i++) { gl.TexCoord(Textures.X_YText[i, 0], Textures.X_YText[i, 1]); gl.Vertex(Textures.CoordX_YText[i, 0], Textures.CoordX_YText[i, 1], Textures.CoordX_YText[i, 2]); } gl.End(); gl.Disable(OpenGL.GL_TEXTURE_2D); }
public BaseBlock(string spriteName, TextureStruct texture, string name) : base(spriteName, texture, ObjectType.Block, name) { }
public MoveableBlock(string spriteName, TextureStruct texture, string name) : base(spriteName, texture, name) { }
public BaseEnvironment(string spriteName, TextureStruct texture, string name) : base(spriteName, texture, ObjectType.Environment, name) { }
private static List <Pair <Rect, Texture2D> > CreateBorders(float borderSize, TextureStruct textureStruct) { var topLeftGradient = GradientTexture(textureStruct, GradientType.TopLeft); var leftGradient = GradientTexture(textureStruct, GradientType.Left); var topRightGradient = GradientTexture(textureStruct, GradientType.TopRight); var rightGradient = GradientTexture(textureStruct, GradientType.Right); var topGradient = GradientTexture(textureStruct, GradientType.Top); var bottomLeft = GradientTexture(textureStruct, GradientType.BottomLeft); var bottomRight = GradientTexture(textureStruct, GradientType.BottomRight); var bottomGradient = GradientTexture(textureStruct, GradientType.Bottom); var leftTopCorner = new Rect(0, 0, borderSize, borderSize); var leftBorder = new Rect(0, borderSize, borderSize, UI.screenHeight - BottomMenuSize - borderSize - borderSize); var topBorder = new Rect(borderSize, 0, UI.screenWidth - borderSize - borderSize, borderSize); var rightTopCorner = new Rect(UI.screenWidth - borderSize, topBorder.y, borderSize, borderSize); var rightBorder = new Rect(UI.screenWidth - borderSize, borderSize, borderSize, UI.screenHeight - BottomMenuSize - borderSize - borderSize); var bottomBorder = new Rect(borderSize, UI.screenHeight - borderSize - BottomMenuSize, UI.screenWidth - borderSize - borderSize, borderSize); var rightBottomCorner = new Rect(rightBorder.x, bottomBorder.y, borderSize, borderSize); var leftBottomCorner = new Rect(0, bottomBorder.y, borderSize, borderSize); var pairs = new List <Pair <Rect, Texture2D> > { new Pair <Rect, Texture2D>(leftBorder, leftGradient), new Pair <Rect, Texture2D>(rightBorder, rightGradient), new Pair <Rect, Texture2D>(topBorder, topGradient), new Pair <Rect, Texture2D>(bottomBorder, bottomGradient), new Pair <Rect, Texture2D>(leftTopCorner, topLeftGradient), new Pair <Rect, Texture2D>(rightTopCorner, topRightGradient), new Pair <Rect, Texture2D>(rightBottomCorner, bottomRight), new Pair <Rect, Texture2D>(leftBottomCorner, bottomLeft) }; return(pairs); }
public BaseEntity(string spriteName, TextureStruct texture, string name) : base(spriteName, texture, ObjectType.Entity, name) { position = new Pos(0, 0); }
public BaseItem(string spriteName, TextureStruct texture, string name) : base(spriteName, texture, ObjectType.Item, name) { }
public BaseFloor(string spriteName, TextureStruct texture, string name) : base(spriteName, texture, ObjectType.Floor, name) { }