Hi,
I'm doing my first steps with gameview, I think I know how it works and how to use it, but I've got a little problem.
As I've seen you add the different bitmaps to the gameview, which will be redrawn in invalidate.
Now I have some bitmaps I want to be drawn in gameview, but did I have to set for each one a bitmapdata?
This code works:
If I add the single BitmapData object into a list it works again:
But I've got an unknown amount of bitmaps that will be added to the gameview, so I tried this and it does not work, only the last added bitmap will be drawn. I'm not sure where the problem is, maybe it's not possible to use it as I planned it, but maybe the is only a small mistake I did not see, so if anybody could help it would be wonderful
I understand why it only draws the last one, because I'm overwriting the BitmapData where the previous Bitmaps was in. And thats my problem, I have no idea how to manage this, that I can draw an unknown number of bitmaps to the gameview without dim an extra bitmapdata for each :/
I'm doing my first steps with gameview, I think I know how it works and how to use it, but I've got a little problem.
As I've seen you add the different bitmaps to the gameview, which will be redrawn in invalidate.
Now I have some bitmaps I want to be drawn in gameview, but did I have to set for each one a bitmapdata?
This code works:
B4X:
Dim GV as GameView
Dim BD, BD2 as BitmapData
GV.initialize("GV")
Activity.AddView(GV,0,0,100%x,100%y)
BD.Bitmap = LoadBitmap(File.DirAssets,"test.png")
BD.DestRect.Initialize(50dip,50dip,100dip,100dip)
BD2.Bitmap = LoadBitmap(File.DirAssets,"test2.png")
BD2.DestRect.Initialize(100dip,100dip,150dip,150dip)
GV.BitmapsData.Add(BD)
GV.BitmapsData.Add(BD2)
GV.invalidate
If I add the single BitmapData object into a list it works again:
B4X:
Dim GV as GameView
Dim BD, BD2 as BitmapData
Dim BDList as List
BDList.Initialize
GV.initialize("GV")
Activity.AddView(GV,0,0,100%x,100%y)
BD.Bitmap = LoadBitmap(File.DirAssets,"test.png")
BD.DestRect.Initialize(50dip,50dip,100dip,100dip)
BD2.Bitmap = LoadBitmap(File.DirAssets,"test2.png")
BD2.DestRect.Initialize(100dip,100dip,150dip,150dip)
BDList.Add(BD)
BDList.Add(BD2)
GV.BitmapsData.AddAll(BDList)
GV.invalidate
But I've got an unknown amount of bitmaps that will be added to the gameview, so I tried this and it does not work, only the last added bitmap will be drawn. I'm not sure where the problem is, maybe it's not possible to use it as I planned it, but maybe the is only a small mistake I did not see, so if anybody could help it would be wonderful
B4X:
Dim GV as GameView
Dim BD, BD2 as BitmapData
Dim BDList as List
BDList.Initialize
GV.initialize("GV")
Activity.AddView(GV,0,0,100%x,100%y)
BD.Bitmap = LoadBitmap(File.DirAssets,"test.png")
For x = 0 To 10
BD.DestRect.Initialize(50dip,50dip+(50dip*x),100dip,100dip+(50dip*x))
BDList.Add(BD)
Next
GV.BitmapsData.AddAll(BDList)
GV.invalidate
I understand why it only draws the last one, because I'm overwriting the BitmapData where the previous Bitmaps was in. And thats my problem, I have no idea how to manage this, that I can draw an unknown number of bitmaps to the gameview without dim an extra bitmapdata for each :/