Hi,
I am having an issue using
GetImage() with
DrawSprite() using
HTML5 in
AGK 2.0.19
My example takes a 220px by 220px image, does GetImage at 311 by 311. So this adds a transparent "border" around the sprite.
On my PC it shows up correctly by leaving the transparent areas transparent but when run with HTML5 it shows black for the transparent areas of the sprite.
Same when using Scissor on a sprite and the GetImage() to get the new shape.
Does anyone know what I am might be able to do different to handle this type of scenario or maybe this is an issue with AppGameKit 2.0.19 for HTML5?
Included is my test code.
Code of GetImage() with DrawSprite()
SetSpriteAngle(originalSprite, 45)
SetScissor(0,cutLocation, 1920, 1080)
DrawSprite(originalSprite)
afterCut = GetImage(GetSpriteX(originalSprite),GetSpriteY(originalSprite),311,311)
afterCut = createSprite(afterCut)
SetSpriteSize(afterCut, 311, 311)
SetSpriteOffset(afterCut, 155.5,155.5)
On my Windows 7 machine:
On Chrome/Firefox HTML5:
Thanks,
// Project: cutter test
// Created: 2016-05-08
// set window properties
SetWindowTitle( "cutter test" )
SetWindowSize( 1024, 768, 0 )
backdrop = CreateSprite ( LoadImage ( "background.png" ) )
SetSpriteSize ( backdrop, 1920, 1080 )
// set display properties
SetVirtualResolution( 1920, 1080 )
SetOrientationAllowed( 0, 0, 1, 1 )
rawProductImage = LoadImage("rawproductsquare.png")
originalSprite = createSprite(rawProductImage)
//SetSpriteAngle(originalSprite, 45)
SetSpriteOffset(originalSprite, 110,110)
SetSpritePositionByOffset(originalSprite, 250,450)
SetScissor(0,0,0, 0)
DrawSprite(originalSprite)
afterRotate = GetImage(GetSpriteX(originalSprite)-45.5,GetSpriteY(originalSprite)-45.5,311,311)
ClearScreen()
Swap()
//replace original sprite with aftercut
SetSpriteImage(originalSprite, afterRotate,0)
SetSpriteSize(originalSprite, 311, 311)
SetSpriteOffset(originalSprite, 155.5,155.5)
SetSpritePositionByOffset(originalSprite, 250,450)
afterRotate = createSprite(afterRotate)
//SetSpriteImage(originalSprite, afterCut,0)
setSpriteSize(afterRotate, 311, 311)
SetSpriteOffset(afterRotate, 155.5,155.5)
SetSpriteScale(afterCut, 1,1)
SetSpritePositionByOffset(afterRotate, 1000, 450)
mycolor = (160) || (8) || (10)
cutLocation=GetSpriteY(originalSprite)+110
oldlocation=GetSpriteY(originalSprite)
SetSpriteAngle(originalSprite, 45)
SetScissor(0,cutLocation, 1920, 1080)
DrawSprite(originalSprite)
afterCut = GetImage(GetSpriteX(originalSprite),GetSpriteY(originalSprite),311,311)
afterCut = createSprite(afterCut)
SetSpriteSize(afterCut, 311, 311)
SetSpriteOffset(afterCut, 155.5,155.5)
SetSpritePositionByOffset(afterCut, 600, 450)
SetScissor(0,0,0, 0)
do
//i=i+5
//SetSpriteAngle(afterCut, i)
//SetSpriteAngle(originalSprite, i)
Print( ScreenFPS() )
Sync()
loop