MaxSoldier
Messages postés289Date d'inscriptiondimanche 10 août 2003StatutMembreDernière intervention28 février 2009
-
30 janv. 2006 à 20:23
MaxSoldier
Messages postés289Date d'inscriptiondimanche 10 août 2003StatutMembreDernière intervention28 février 2009
-
30 janv. 2006 à 21:51
Bonjour, je me suis remis à mon moteur 2D et j'ai toujours ce même problème de texture :
Voici mon code :
Sub SpeedLoadTex(TexPath As String, ByVal iX As Single, ByVal iY As Single, Height As Long, Width As Long)
Dim TexInfo As BITMAPINFO
Dim TexBitArray() As Byte
If iY <> 0 And iX <> 0 Then
TexPicture.Picture = LoadPicture(TexPath)
' Initialisation des données de l'image
' -----------------------------------------------
TexInfo.bmiHeader.biSize = Len(TexInfo.bmiHeader)
' Redimension du tableau et récupération des données
' ------------------------------------------------------------------------------------------------------------------------
ReDim TexBitArray(1 To 4, 1 To TexPicture.Width, 1 To TexPicture.Height)
DoEvents
pourquoi iX et iY puisque toute la table est utilisée
à quoi sert Height et With en paramètres.
si tu veux limiter il faut jouer sur nStartScan et nNumScans,
donc sur le nombre de Lignes, iX devrait toujours commencer à 1, et si
iY est différent de 1, le bArray devrait être plus grand ou le biHeight
plus petit, ce qui n'est pas le cas ici puisque toute la taille de
TexPicture est utilisée.
Gobillot
Messages postés3140Date d'inscriptionvendredi 14 mai 2004StatutMembreDernière intervention11 mars 201934 30 janv. 2006 à 21:29
bArray(1,iX, iY) impossible
iX et iY ne sont pas reconnus comme paramètres par
GetDIBits
il s'agit seulement d'une adresse et c'est à partir de cette adresse
que le tableau sera rempli en commençant par la Ligne debut=nStartScan pour un nombre de Lignes=nNumScans
dans l'exemple 800x600 tous les 800 pixels d'une Ligne seront pris, il n'y a pas de paramètres X début.
MaxSoldier
Messages postés289Date d'inscriptiondimanche 10 août 2003StatutMembreDernière intervention28 février 20092 30 janv. 2006 à 21:44
Pendant que j'y suis comment je peux faire alors pour copier mon
tableau de byte dans le tableau principale à une certaine place et le
plus rapidement possible ?