Simply put, I made an animated sprite, and I decided to test performance to see how many clones of a sprite I can have on screen at a time before I hit 60 FPS.
The animation comes from a 512x512 atlas, and the sprites are 32x32. I hit 12570 sprites before I hit 60 FPS, and then they all disappear. Does anyone get this? I uploaded the .exe in the zip.
**EDIT**
As my next post points out, the issue is not a limit of allowable sprites, but seems to be an incompatibility issue with AppGameKit and AMD hardware/software. That makes the title to the thread now invalid. I am running more tests to see if this effects anything else.
I recreated the app in tier 1, and I am still getting the issue. This time it happened after 12500 was created. Here is the tier 1 code:
// Project: Test
// Created: 2015-04-27
// set window properties
SetWindowTitle( "Test" )
SetWindowSize( 1024, 768, 0 )
// set display properties
SetVirtualResolution( 1024, 768 )
SetOrientationAllowed( 1, 1, 1, 1 )
SetSyncRate(0,0)
atlasImage = LoadImage("Spritesheets/Male/1/r2c_male_base_brown.png")
sprite = CreateSprite(0)
AddSpriteAnimationFrame(sprite, LoadSubImage(atlasImage, "IdleD1"))
AddSpriteAnimationFrame(sprite, LoadSubImage(atlasImage, "RunD1"))
AddSpriteAnimationFrame(sprite, LoadSubImage(atlasImage, "IdleD1"))
AddSpriteAnimationFrame(sprite, LoadSubImage(atlasImage, "RunD2"))
SetSpritePosition(sprite, 512, 300)
PlaySprite(sprite, 7, 1, 1, 4)
amount = 0
clones as integer[100000]
do
if (amount < 100000)
clones[amount] = CloneSprite(sprite)
SetSpritePosition(clones[amount], random(0,992), random(0, 736))
amount = amount + 1
endif
Print( ScreenFPS() )
print(amount)
Sync()
loop
**UPDATE**
It seems adding particles does not effect it. Also, once the sprites disappear, the particles are still visible.