Pixel art scaling algorithms

Übersicht BlitzBasic Codearchiv

Neue Antwort erstellen

Xaymar

ehemals "Cgamer"

Betreff: Pixel art scaling algorithms

BeitragFr, Jul 02, 2010 19:07
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich werde nach und nach die meisten Algorithmen von da umsetzen!

AdvMame2x/3x
BlitzBasic: [AUSKLAPPEN]
Function AdvMame2x(InIMG)
Local InIMGW = ImageWidth(InIMG), InIMGH = ImageHeight(InIMG)
Local OutIMG = CreateImage(InIMGW*2, InIMGH*2)
If OutIMG = 0 Then Return 0

Local InIMGB = ImageBuffer(InIMG), OutIMGB = ImageBuffer(OutIMG)
LockBuffer InIMGB:LockBuffer OutIMGB

Local PixelGrid[4], PixelGrid2[3]
For X = 0 To InIMGW-1
For Y = 0 To InIMGH-1
PixelGrid[2] = ReadPixelFast(X,Y,InIMGB)
If Y-1 > 0 Then PixelGrid[0] = ReadPixelFast(X,Y-1,InIMGB) Else PixelGrid[0] = PixelGrid[2]
If X-1 > 0 Then PixelGrid[1] = ReadPixelFast(X-1,Y,InIMGB) Else PixelGrid[1] = PixelGrid[2]
If X+1 < InIMGW Then PixelGrid[3] = ReadPixelFast(X+1,Y,InIMGB) Else PixelGrid[3] = PixelGrid[2]
If Y+1 < InIMGH Then PixelGrid[4] = ReadPixelFast(X,Y+1,InIMGB) Else PixelGrid[4] = PixelGrid[2]

PixelGrid2[0] = PixelGrid[2]:PixelGrid2[1] = PixelGrid[2]
PixelGrid2[2] = PixelGrid[2]:PixelGrid2[3] = PixelGrid[2]

If PixelGrid[1] = PixelGrid[0] And PixelGrid[1] <> PixelGrid[4] And PixelGrid[0] <> PixelGrid[3] Then PixelGrid2[0] = PixelGrid[0]
If PixelGrid[0] = PixelGrid[3] And PixelGrid[0] <> PixelGrid[1] And PixelGrid[3] <> PixelGrid[4] Then PixelGrid2[1] = PixelGrid[3]
If PixelGrid[3] = PixelGrid[4] And PixelGrid[3] <> PixelGrid[0] And PixelGrid[4] <> PixelGrid[1] Then PixelGrid2[2] = PixelGrid[4]
If PixelGrid[4] = PixelGrid[1] And PixelGrid[4] <> PixelGrid[3] And PixelGrid[1] <> PixelGrid[0] Then PixelGrid2[3] = PixelGrid[1]

WritePixelFast X*2,Y*2,PixelGrid2[0],OutIMGB
WritePixelFast X*2+1,Y*2,PixelGrid2[1],OutIMGB
WritePixelFast X*2,Y*2+1,PixelGrid2[2],OutIMGB
WritePixelFast X*2+1,Y*2+1,PixelGrid2[3],OutIMGB
Next
Next

UnlockBuffer InIMGB:UnlockBuffer OutIMGB
Return OutIMG
End Function

Function AdvMame3x(InIMG)
Local InIMGW = ImageWidth(InIMG), InIMGH = ImageHeight(InIMG)
Local OutIMG = CreateImage(InIMGW*3, InIMGH*3)
If OutIMG = 0 Then Return 0

Local InIMGB = ImageBuffer(InIMG), OutIMGB = ImageBuffer(OutIMG)
LockBuffer InIMGB:LockBuffer OutIMGB

Local PixelGrid[8], PixelGrid2[8]
For X = 0 To InIMGW-1
For Y = 0 To InIMGH-1
For X2 = -1 To 1
For Y2 = -1 To 1
PixelGrid[(X2+1)+(Y2+1)*3] = ReadPixelFast(iMax(iMin(X+X2,0),InIMGW),iMax(iMin(Y+Y2,0),InIMGH-1),InIMGB)
Next
Next
For X2 = -1 To 1
For Y2 = -1 To 1
PixelGrid2[(X2+1)+(Y2+1)*3] = PixelGrid[4]
Next
Next
If PixelGrid[3] = PixelGrid[1] And PixelGrid[7] <> PixelGrid[5] And PixelGrid[1] <> PixelGrid[5] Then PixelGrid2[0] = PixelGrid[3]
If PixelGrid[1] = PixelGrid[5] And PixelGrid[1] <> PixelGrid[3] And PixelGrid[5] <> PixelGrid[7] Then PixelGrid2[2] = PixelGrid[5]
If PixelGrid[7] = PixelGrid[3] And PixelGrid[7] <> PixelGrid[5] And PixelGrid[3] <> PixelGrid[1] Then PixelGrid2[6] = PixelGrid[3]
If PixelGrid[5] = PixelGrid[7] And PixelGrid[5] <> PixelGrid[1] And PixelGrid[7] <> PixelGrid[3] Then PixelGrid2[8] = PixelGrid[5]
If (PixelGrid[3] = PixelGrid[1] And PixelGrid[3] <> PixelGrid[7] And PixelGrid[1] <> PixelGrid[5] And PixelGrid[4] <> PixelGrid[2]) Or (PixelGrid[1]=PixelGrid[5] And PixelGrid[1] <> PixelGrid[3] And PixelGrid[5] <> PixelGrid[7] And PixelGrid[4] <> PixelGrid[0]) Then PixelGrid2[1] = PixelGrid[1]
If (PixelGrid[7] = PixelGrid[3] And PixelGrid[7] <> PixelGrid[5] And PixelGrid[3] <> PixelGrid[1] And PixelGrid[4] <> PixelGrid[0]) Or (PixelGrid[3]=PixelGrid[1] And PixelGrid[3] <> PixelGrid[7] And PixelGrid[1] <> PixelGrid[5] And PixelGrid[4] <> PixelGrid[6]) Then PixelGrid2[3] = PixelGrid[3]
If (PixelGrid[1] = PixelGrid[5] And PixelGrid[1] <> PixelGrid[3] And PixelGrid[5] <> PixelGrid[7] And PixelGrid[4] <> PixelGrid[8]) Or (PixelGrid[5]=PixelGrid[7] And PixelGrid[5] <> PixelGrid[1] And PixelGrid[7] <> PixelGrid[3] And PixelGrid[4] <> PixelGrid[2]) Then PixelGrid2[5] = PixelGrid[5]
If (PixelGrid[5] = PixelGrid[7] And PixelGrid[5] <> PixelGrid[1] And PixelGrid[7] <> PixelGrid[3] And PixelGrid[4] <> PixelGrid[6]) Or (PixelGrid[7]=PixelGrid[3] And PixelGrid[7] <> PixelGrid[5] And PixelGrid[3] <> PixelGrid[1] And PixelGrid[4] <> PixelGrid[8]) Then PixelGrid2[7] = PixelGrid[7]
For X2 = 0 To 2
For Y2 = 0 To 2
WritePixelFast X*3+X2,Y*3+Y2,PixelGrid2[X2+Y2*3],OutIMGB
Next
Next
Next
Next

UnlockBuffer InIMGB:UnlockBuffer OutIMGB
Return OutIMG
End Function

Function iMax(iA,iB)
If iA > iB Then Return iB
Return iA
End Function
Function iMin(iA,iB)
If iA < iB Then Return iB
Return iA
End Function


Eagle:
BlitzBasic: [AUSKLAPPEN]
Function Eagle(InIMG)
Local InIMGW = ImageWidth(InIMG), InIMGH = ImageHeight(InIMG)
Local OutIMG = CreateImage(InIMGW*2, InIMGH*2)
If OutIMG = 0 Then Return 0

Local InIMGB = ImageBuffer(InIMG), OutIMGB = ImageBuffer(OutIMG)
LockBuffer InIMGB:LockBuffer OutIMGB

Local PixelGrid[8], PixelGrid2[3]
For X = 0 To InIMGW-1
For Y = 0 To InIMGH-1
For X2 = -1 To 1
For Y2 = -1 To 1
PixelGrid[(X2+1)+(Y2+1)*3] = ReadPixelFast(iMax(iMin(X+X2,0),InIMGW),iMax(iMin(Y+Y2,0),InIMGH-1),InIMGB)
Next
Next
PixelGrid2[0] = PixelGrid[4]:PixelGrid2[1] = PixelGrid[4]
PixelGrid2[2] = PixelGrid[4]:PixelGrid2[3] = PixelGrid[4]

If PixelGrid[3] = PixelGrid[0] And PixelGrid[0] = PixelGrid[1] Then PixelGrid2[0] = PixelGrid[0]
If PixelGrid[1] = PixelGrid[2] And PixelGrid[2] = PixelGrid[5] Then PixelGrid2[1] = PixelGrid[2]
If PixelGrid[3] = PixelGrid[6] And PixelGrid[6] = PixelGrid[7] Then PixelGrid2[2] = PixelGrid[6]
If PixelGrid[5] = PixelGrid[8] And PixelGrid[8] = PixelGrid[7] Then PixelGrid2[3] = PixelGrid[8]

WritePixelFast X*2,Y*2,PixelGrid2[0],OutIMGB
WritePixelFast X*2+1,Y*2,PixelGrid2[1],OutIMGB
WritePixelFast X*2,Y*2+1,PixelGrid2[2],OutIMGB
WritePixelFast X*2+1,Y*2+1,PixelGrid2[3],OutIMGB
Next
Next

UnlockBuffer InIMGB:UnlockBuffer OutIMGB
Return OutIMG
End Function


Super2xSaI/SuperEagle:
BlitzBasic: [AUSKLAPPEN]
Function Super2xSaI(InIMG)
Local InIMGW = ImageWidth(InIMG), InIMGH = ImageHeight(InIMG)
Local OutIMG = CreateImage(InIMGW*2, InIMGH*2)
If OutIMG = 0 Then Return 0

Local InIMGB = ImageBuffer(InIMG), OutIMGB = ImageBuffer(OutIMG)
LockBuffer InIMGB:LockBuffer OutIMGB

Local PixelGrid[15], PixelGrid2[3]
For Y = 0 To InIMGH-1
For X = 0 To InIMGW-1
For X2 = -1 To 2
For Y2 = -1 To 2
PixelGrid[(X2+1)+(Y2+1)*4] = ReadPixelFast(iMax(iMin(X+X2,0),InIMGW),iMax(iMin(Y+Y2,0),InIMGH-1),InIMGB)
Next
Next
If (PixelGrid[9] = PixelGrid[6] And PixelGrid[5] <> PixelGrid[10])
PixelGrid2[3] = PixelGrid[9]
PixelGrid2[1] = PixelGrid[9]
ElseIf (PixelGrid[5] = PixelGrid[10] And PixelGrid[9] <> PixelGrid[6])
PixelGrid2[3] = PixelGrid[5]
PixelGrid2[1] = PixelGrid[5]
ElseIf (PixelGrid[5] = PixelGrid[10] And PixelGrid[9] = PixelGrid[6])
Local r = 0
r = r + TempGetResult(PixelGrid[6], PixelGrid[5], PixelGrid[8], PixelGrid[13])
r = r + TempGetResult(PixelGrid[6], PixelGrid[5], PixelGrid[4], PixelGrid[1])
r = r + TempGetResult(PixelGrid[6], PixelGrid[5], PixelGrid[14], PixelGrid[11])
r = r + TempGetResult(PixelGrid[6], PixelGrid[5], PixelGrid[2], PixelGrid[7])

If (r > 0)
PixelGrid2[1] = PixelGrid[6]
ElseIf (r < 0)
PixelGrid2[1] = PixelGrid[5]
Else
PixelGrid2[1] = TempInterpolate(PixelGrid[5],PixelGrid[6])
EndIf

PixelGrid2[3] = PixelGrid2[1]
Else
If (PixelGrid[6] = PixelGrid[10] And PixelGrid[10] = PixelGrid[13] And PixelGrid[9] <> PixelGrid[14] And PixelGrid[10] <> PixelGrid[12])
PixelGrid2[3] = TempQ_Interpolate(PixelGrid[10], PixelGrid[10], PixelGrid[10], PixelGrid[9])
ElseIf (PixelGrid[5] = PixelGrid[9] And PixelGrid[9] = PixelGrid[14] And PixelGrid[13] <> PixelGrid[10] And PixelGrid[9] <> PixelGrid[15])
PixelGrid2[3] = TempQ_Interpolate(PixelGrid[10], PixelGrid[9], PixelGrid[9], PixelGrid[9])
Else
PixelGrid2[3] = TempInterpolate(PixelGrid[9], PixelGrid[10])
EndIf

If (PixelGrid[6] = PixelGrid[10] And PixelGrid[6] = PixelGrid[1] And PixelGrid[5] <> PixelGrid[2] And PixelGrid[6] <> PixelGrid[0])
PixelGrid2[1] = TempQ_Interpolate(PixelGrid[6], PixelGrid[6], PixelGrid[6], PixelGrid[5])
ElseIf (PixelGrid[5] = PixelGrid[9] And PixelGrid[5] = PixelGrid[2] And PixelGrid[2] <> PixelGrid[1] And PixelGrid[5] <> PixelGrid[3])
PixelGrid2[1] = TempQ_Interpolate(PixelGrid[6], PixelGrid[5], PixelGrid[5], PixelGrid[5])
Else
PixelGrid2[1] = TempInterpolate(PixelGrid[5], PixelGrid[6])
EndIf
EndIf

If (PixelGrid[5] = PixelGrid[10] And PixelGrid[9] <> PixelGrid[6] And PixelGrid[4] = PixelGrid[5] And PixelGrid[5] <> PixelGrid[14])
PixelGrid2[2] = TempInterpolate(PixelGrid[9], PixelGrid[5])
ElseIf (PixelGrid[5] = PixelGrid[8] And PixelGrid[6] = PixelGrid[5] And PixelGrid[4] <> PixelGrid[9] And PixelGrid[5] <> PixelGrid[12])
PixelGrid2[2] = TempInterpolate(PixelGrid[9], PixelGrid[5])
Else
PixelGrid2[2] = PixelGrid[9]
EndIf

If (PixelGrid[9] = PixelGrid[6] And PixelGrid[5] <> PixelGrid[10] And PixelGrid[8] = PixelGrid[9] And PixelGrid[9] <> PixelGrid[2])
PixelGrid2[0] = TempInterpolate(PixelGrid[9], PixelGrid[5])
ElseIf (PixelGrid[4] = PixelGrid[9] And PixelGrid[10] = PixelGrid[9] And PixelGrid[8] <> PixelGrid[5] And PixelGrid[9] <> PixelGrid[0])
PixelGrid2[0] = TempInterpolate(PixelGrid[9], PixelGrid[5])
Else
PixelGrid2[0] = PixelGrid[5]
EndIf

WritePixelFast X*2,Y*2,PixelGrid2[0],OutIMGB
WritePixelFast X*2+1,Y*2,PixelGrid2[1],OutIMGB
WritePixelFast X*2,Y*2+1,PixelGrid2[2],OutIMGB
WritePixelFast X*2+1,Y*2+1,PixelGrid2[3],OutIMGB
Next
Next

UnlockBuffer InIMGB:UnlockBuffer OutIMGB
Return OutIMG
End Function

Function TempGetResult(A,B,C,D):Return ((A <> C Or A <> D) - (B <> C Or B <> D)):End Function
Function TempInterpolate(A,B):Return (A Shr 1) + (B Shr 1):End Function
Function TempQ_Interpolate(A,B,C,D):Return (A Shr 2) + (B Shr 2) + (C Shr 2) + (D Shr 2) + (((A + B + C + D) Shr 2)):End Function

Function SuperEagle(InIMG)
Local InIMGW = ImageWidth(InIMG), InIMGH = ImageHeight(InIMG)
Local OutIMG = CreateImage(InIMGW*2, InIMGH*2)
If OutIMG = 0 Then Return 0

Local InIMGB = ImageBuffer(InIMG), OutIMGB = ImageBuffer(OutIMG)
LockBuffer InIMGB:LockBuffer OutIMGB

Local PixelGrid[11], PixelGrid2[3]
For Y = 0 To InIMGH-1
For X = 0 To InIMGW-1
For X2 = 0 To 1
PixelGrid[X2] = ReadPixelFast(iMax(iMin(X+X2,0),InIMGW),iMax(iMin(Y-1,0),InIMGH-1),InIMGB)
PixelGrid[X2+9] = ReadPixelFast(iMax(iMin(X+X2,0),InIMGW),iMax(iMin(Y+2,0),InIMGH-1),InIMGB)
Next
For X2 = -1 To 2
PixelGrid[X2+2] = ReadPixelFast(iMax(iMin(X+X2,0),InIMGW-1),iMax(iMin(Y,0),InIMGH-1),InIMGB)
PixelGrid[X2+6] = ReadPixelFast(iMax(iMin(X+X2,0),InIMGW-1),iMax(iMin(Y+1,0),InIMGH-1),InIMGB)
Next

If PixelGrid[7] = PixelGrid[4] And PixelGrid[3] <> PixelGrid[8]
PixelGrid2[1] = PixelGrid[7]
PixelGrid2[2] = PixelGrid[7]

If PixelGrid[6] = PixelGrid[7] Or PixelGrid[4] = PixelGrid[1]
PixelGrid2[0] = TempInterpolate(PixelGrid[7], TempInterpolate(PixelGrid[7], PixelGrid[3]))
Else
PixelGrid2[0] = TempInterpolate(PixelGrid[3], PixelGrid[4])
EndIf

If PixelGrid[4] = PixelGrid[5] Or PixelGrid[7] = PixelGrid[10]
PixelGrid2[3] = TempInterpolate(PixelGrid[7], TempInterpolate(PixelGrid[7], PixelGrid[8]))
Else
PixelGrid2[3] = TempInterpolate(PixelGrid[7], PixelGrid[8])
EndIf
ElseIf PixelGrid[3] = PixelGrid[8] And PixelGrid[7] <> PixelGrid[4]
PixelGrid2[3] = PixelGrid[3]
PixelGrid2[0] = PixelGrid[3]

If (PixelGrid[0] = PixelGrid[3]) Or (PixelGrid[5] = PixelGrid[9])
PixelGrid2[1] = TempInterpolate(PixelGrid[3], TempInterpolate(PixelGrid[3], PixelGrid[4]))
Else
PixelGrid2[1] = TempInterpolate(PixelGrid[3], PixelGrid[1])
EndIf

If PixelGrid[8] = PixelGrid[11] Or PixelGrid[2] = PixelGrid[3]
PixelGrid2[2] = TempInterpolate(PixelGrid[3], TempInterpolate(PixelGrid[3], PixelGrid[2]))
Else
PixelGrid2[2] = TempInterpolate(PixelGrid[7], PixelGrid[8])
EndIf
ElseIf PixelGrid[3] = PixelGrid[8] And PixelGrid[7] = PixelGrid[4]
Local r = 0
r = r + TempGetResult(PixelGrid[4], PixelGrid[3], PixelGrid[6], PixelGrid[10])
r = r + TempGetResult(PixelGrid[4], PixelGrid[3], PixelGrid[2], PixelGrid[0])
r = r + TempGetResult(PixelGrid[4], PixelGrid[3], PixelGrid[11], PixelGrid[9])
r = r + TempGetResult(PixelGrid[4], PixelGrid[3], PixelGrid[1], PixelGrid[5])

If (r > 0)
PixelGrid2[1] = PixelGrid[7]
PixelGrid2[2] = PixelGrid[7]
PixelGrid2[0] = TempInterpolate(PixelGrid[3], PixelGrid[4])
PixelGrid2[3] = PixelGrid2[0]
ElseIf (r < 0)
PixelGrid2[2] = PixelGrid[3]
PixelGrid2[0] = PixelGrid[3]
PixelGrid2[1] = TempInterpolate(PixelGrid[3], PixelGrid[4])
PixelGrid2[2] = PixelGrid2[1]
Else
PixelGrid2[3] = PixelGrid[3]
PixelGrid2[0] = PixelGrid[3]
PixelGrid2[1] = PixelGrid[7]
PixelGrid2[2] = PixelGrid[7]
EndIf
Else
PixelGrid2[3] = TempInterpolate(PixelGrid[7], PixelGrid[4])
PixelGrid2[0] = PixelGrid2[3]
PixelGrid2[3] = TempQ_Interpolate(PixelGrid[8], PixelGrid[8], PixelGrid[8], PixelGrid2[3])
PixelGrid2[0] = TempQ_Interpolate(PixelGrid[3], PixelGrid[3], PixelGrid[3], PixelGrid2[0])

PixelGrid2[2] = TempInterpolate(PixelGrid[3], PixelGrid[8])
PixelGrid2[1] = PixelGrid2[2]
PixelGrid2[2] = TempQ_Interpolate(PixelGrid[7], PixelGrid[7], PixelGrid[7], PixelGrid2[2])
PixelGrid2[1] = TempQ_Interpolate(PixelGrid[4], PixelGrid[4], PixelGrid[4], PixelGrid2[1])
EndIf

WritePixelFast X*2,Y*2,PixelGrid2[0],OutIMGB
WritePixelFast X*2+1,Y*2,PixelGrid2[1],OutIMGB
WritePixelFast X*2,Y*2+1,PixelGrid2[2],OutIMGB
WritePixelFast X*2+1,Y*2+1,PixelGrid2[3],OutIMGB
Next
Next

UnlockBuffer InIMGB:UnlockBuffer OutIMGB
Return OutIMG
End Function


HQ2X:
BlitzBasic: [AUSKLAPPEN]
Function HQ2X(IMG)
Local IMG2, X, Y, X2, Y2
Local A,B,C
Local D,E,F
Local G,H,I
Local IMGw = ImageWidth(IMG), IMGh = ImageHeight(IMG)

Dim Pixel3x3(3,3)
Dim PixelO2x2(2,2)

IMG2 = CreateImage(ImageWidth(IMG)*2,ImageHeight(IMG)*2)
LockBuffer ImageBuffer(IMG):LockBuffer ImageBuffer(IMG2)

For X = 0 To ImageWidth(IMG)-1
For Y = 0 To ImageHeight(IMG)-1
For X2 = -1 To 1
For Y2 = -1 To 1
Pixel3x3((X2+1),(1+Y2)) = ReadPixelFast(X,Y, ImageBuffer(IMG))
If X2+X >= 0 And X2+X < IMGw And Y2+Y >= 0 And Y2+Y < IMGh
Pixel3x3((1+X2),(1+Y2)) = ReadPixelFast(X+X2,Y+Y2, ImageBuffer(IMG))
EndIf
Next
Next
A = Pixel3x3(0,0):B = Pixel3x3(1,0):C = Pixel3x3(2,0)
D = Pixel3x3(0,1):E = Pixel3x3(1,1):F = Pixel3x3(2,1)
G = Pixel3x3(0,2):H = Pixel3x3(1,2):I = Pixel3x3(2,2)

PixelO2x2(0,0) = E:PixelO2x2(1,0) = E
PixelO2x2(0,1) = E:PixelO2x2(1,1) = E
If B <> H And D <> F
If D = B Then PixelO2x2(0,0) = D
If B = F Then PixelO2x2(1,0) = F
If D = H Then PixelO2x2(0,1) = D
If H = F Then PixelO2x2(1,1) = F
EndIf

WritePixelFast X*2+0, Y*2+0, PixelO2x2(0,0), ImageBuffer(IMG2)
WritePixelFast X*2+1, Y*2+0, PixelO2x2(1,0), ImageBuffer(IMG2)
WritePixelFast X*2+0, Y*2+1, PixelO2x2(0,1), ImageBuffer(IMG2)
WritePixelFast X*2+1, Y*2+1, PixelO2x2(1,1), ImageBuffer(IMG2)
Next
Next

UnlockBuffer ImageBuffer(IMG):UnlockBuffer ImageBuffer(IMG2)
Return IMG2
End Function
  • Zuletzt bearbeitet von Xaymar am Fr, Jul 02, 2010 22:55, insgesamt 6-mal bearbeitet

Chrise

BeitragFr, Jul 02, 2010 19:13
Antworten mit Zitat
Benutzer-Profile anzeigen
Krasse Sache! Und sehr gute Idee mehrere dieser Algorithmen zu programmieren! Ich werde sie jeden Fall benutzen (können) Smile
Bin gespannt auf mehr!

lg Chrise
Llama 1 Llama 2 Llama 3
Vielen Dank an Pummelie, der mir auf seinem Server einen Platz für LlamaNet bietet.

Xaymar

ehemals "Cgamer"

BeitragFr, Jul 02, 2010 19:19
Antworten mit Zitat
Benutzer-Profile anzeigen
Eagle ist nu auch drin. Es folgt nun also 2xSaI. HQ2X habe ich ja schon für BB konvertiert Smile

ComNik

BeitragFr, Jul 02, 2010 19:26
Antworten mit Zitat
Benutzer-Profile anzeigen
Nicht schlecht!
Habs gerade getestet. Gute Ergebnisse.

Danke Wink

lg
ComNik
WIP: Vorx.Engine

Alkan

Betreff: Super ;D

BeitragFr, Jul 02, 2010 19:52
Antworten mit Zitat
Benutzer-Profile anzeigen
wow...sieht doch gut aus Wink
Das klappt schon gut...weiter so!

MfG
Alkan
Hauptrechner: Win7 Ultimate x64|AMD Phenom II X4 965 BlackEdition 4x3.4GHz|4 GB DualKit DDR3-1600 Ram|1.5 TB Samsung EcoGreen|Cougar CM 700Watt|ASRock M3A790GFX/120M|Nvidia GeForce 9500GT|Ati Radeon HD3300(Onboard-Deaktiviert)
Server(früher Hauptrechner): Ubuntu 9.1 x86|Intel P4 HT 3GHz|Ati Radeon X600Pro|200 GB HDD
Worklog: Planetensimulation
Homepage(Under Construction): alkan96.dyndns.org
Wenn schon falsch, dann richtig falsch.

Pummelie

BeitragFr, Jul 02, 2010 20:22
Antworten mit Zitat
Benutzer-Profile anzeigen
Klappt gut, geht gut: perfekt!

Schön da du ein paar Rechnungen umschreibst, dafür das du mit BB aufhören wolltest Wink
It's done when it's done.

Xaymar

ehemals "Cgamer"

BeitragFr, Jul 02, 2010 20:53
Antworten mit Zitat
Benutzer-Profile anzeigen
Super2xSaI ist nu auch drin. zum normalen 2xSaI fand ich leider keinen C++ Code o.ä. Edit: Bug fixed.
SuperEagle ist auch fertig. Beide sind nicht für transparente Bilder gedacht wegen AA.

Nova

BeitragSa, Jul 10, 2010 12:59
Antworten mit Zitat
Benutzer-Profile anzeigen
Und was ist das ganze jetzt genau?
AMD Athlon II 4x3,1GHz, 8GB Ram DDR3, ATI Radeon HD 6870, Win 7 64bit

Pummelie

BeitragSa, Jul 10, 2010 13:05
Antworten mit Zitat
Benutzer-Profile anzeigen
Sehe doch einfach in den von CGamer gesporteten link Rolling Eyes http://en.wikipedia.org/wiki/P...algorithms
It's done when it's done.

Neue Antwort erstellen


Übersicht BlitzBasic Codearchiv

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group