Журнал о программированнии на языках Blitz3D, BlitzPlus, BlitzMax

Blitz3D-код:ParallaxFake.bb

Материал из Blitz Et Cetera

Перейти к: навигация, поиск
;Project Title: Parallax Fake

;Author: MadMedic
;Email: MadMedic@rambler.ru


AppTitle "Parallax fake by MadMedic"
Graphics3D 640,480,0,2
SetBuffer BackBuffer()
SetFont LoadFont("arial",14,1)

;Write files
Gosub CreateAlphaBmp
Gosub CreateTexBmp

;camera
        Pivot=CreatePivot()
        cam=CreateCamera(Pivot)
        CameraRange cam,0.01,10000
        PositionEntity cam,0,4,-4
        RotateEntity cam,45,0,0
        DestCamYaw#=0
        CamYaw#=0
        DestCamPitch#=45
        CamPitch#=45
;Mouse sensivity (0-1)
        mSens#=0.9
;Mouse move inertion (0-1)
        mInert#=0.05
;WireFrame
        wf=0   
;
        MoveMouse 320,240
        FlushMouse()
;Delta time init
        LastFrame=MilliSecs()
CreateLight
;Levels
Levels=20
DecalSize=64
DecalDepth#=-1.3



Dim LevelPorogs(Levels)
For i=0 To Levels
        LevelPorogs(i)=(255/Float(Levels))*i
Next

HeightImage=LoadImage("alpha.bmp")
DiffImage=LoadImage("tex.bmp")

Dim HeightValue(DecalSize-1,DecalSize-1,Levels)
SetBuffer ImageBuffer(HeightImage)
LockBuffer ImageBuffer(HeightImage)
        For x=0 To DecalSize-1
        For y=0 To DecalSize-1
                rcolor=(ReadPixelFast(x,y) Shr 16) And 255
                For level=0 To levels
                        HeightValue(x,y,level)=(rcolor>=LevelPorogs(level) ) ;And  (rcolor<=LevelPorogs(level-1))
                Next
        Next
        Next
UnlockBuffer ImageBuffer(HeightImage)
SetBuffer BackBuffer()

Dim MaskedImage(Levels)

;FreeImage HeightImage
For level=0 To levels
        Cls
        MaskedImage(Level)=CopyImage(DiffImage)
       
        MaskImage MaskedImage(Level),0,0,0
        SetBuffer ImageBuffer(MaskedImage(Level))
        Color 0,0,0
        For x=0 To DecalSize-1
        For y=0 To DecalSize-1
                If HeightValue(x,y,level)=0
                        Plot x,y
                EndIf
        Next
        Next
        SetBuffer BackBuffer()
        DrawImage MaskedImage(Level),0,0

        Color 255,0,0
        Text 10,10,level
Flip

Next

FreeImage DiffImage
FreeImage HeightImage

;Create mesh
mesh=CreateMesh()
surf=CreateSurface(Mesh)
msz#=2
v0=AddVertex(surf,-msz,0,msz,0,0)
v1=AddVertex(surf,msz,0,msz,1,0)
v2=AddVertex(surf,msz,0,-msz,1,1)
v3=AddVertex(surf,-msz,0,-msz,0,1)
AddTriangle(surf,0,1,2)
AddTriangle(surf,0,2,3)

Tex=CreateTexture(DecalSize,DecalSize,256)
EntityTexture mesh,tex,0,0

EntityFX mesh,1


;main loop
Repeat



;toogle wireframe
        If KeyHit(59) Then
        wf=1-wf
        WireFrame wf
        EndIf


If KeyHit(57)
        controls=1-controls

        If controls=1
                EntityParent(cam,0)
                DestCamYaw#=EntityYaw(cam)
                CamYaw#=EntityYaw(cam)
                DestCamPitch#=EntityPitch(cam)
                CamPitch#=EntityPitch(cam)
                MoveMouse 320,240
                FlushMouse()
        Else
                EntityParent(cam,pivot)
                PositionEntity(cam,0,4,-4,1)
                RotateEntity(cam,55,0,0,1)
        EndIf
       
EndIf
;delta time
        Dt#=(MilliSecs()-LastFrame)*0.001
        LastFrame=MilliSecs()
;exit
        If KeyHit(1) End
;stop
        If KeyHit(88) Stop
;camera control
        If controls=1
                DestCamYaw#=DestCamYaw#-MouseXSpeed()*mSens#
                DestCamPitch#=DestCamPitch#+MouseYSpeed()*mSens#
                If DestCamPitch#>90 Then DestCamPitch#=90
                If DestCamPitch#<-90 Then DestCamPitch#=-90
                CamYaw#=CamYaw#+(DestCamYaw#-CamYaw#)*mInert#*dt#*100
                CamPitch#=CamPitch#+(DestCamPitch#-CamPitch#)*mInert#*dt#*100
                If Abs(DestCamYaw#-CamYaw#)<0.1 Then CamYaw#=DestCamYaw#
                If Abs(DestCamPitch#-CamPitch#)<0.1 Then CamPitch#=DestCamPitch#
                RotateEntity cam,CamPitch#,CamYaw#,0
                MoveMouse 320,240
                MoveEntity cam,(KeyDown(32)-KeyDown(30))*Dt#*10,0,(KeyDown(17)-KeyDown(31))*Dt#*10
        Else
                TurnEntity Pivot,0,dt#*100,0
        EndIf

        If KeyDown(200)
                DecalDepth=DecalDepth+dt
        EndIf
        If KeyDown(208)
                DecalDepth=DecalDepth-dt
        EndIf
       
        ;parallax fake update
        dx#=EntityX(mesh)-EntityX(cam,1)
        dy#=EntityY(mesh)-EntityY(cam,1)
        dz#=EntityZ(mesh)-EntityZ(cam,1)
        yw#=VectorYaw(dx#,dy#,dz# )
        pt#=VectorPitch(dx#,dy#,dz# )

        cospt#=Cos(pt#)
        SinYw#=-Sin(yw)
        CosYw#=-Cos(yw)
        DrawImage MaskedImage(0),0,0
       
                For i=0 To Levels
                        AddX=SinYw*DecalDepth*(Levels-i)*cospt
                        AddY=CosYw*DecalDepth*(Levels-i)*cospt
                        DrawImage MaskedImage(i),addx,addy
                Next
       
        CopyRect 0,0,DecalSize,DecalSize,0,0,0,TextureBuffer(tex)



       
;global update
        UpdateWorld
        RenderWorld
;fps counter
        If FPSTimer>MilliSecs() Then
        fpsc=fpsc+1
        Else
        fps=fpsc*2
        fpsc=0
        FPSTimer=MilliSecs()+500
        EndIf
;hud
        Text 100,25,"WSAD to move, mouse to look, F1  WireFrame ("+wf+"). "+"FPS: "+fps+". Tris rendered:"+TrisRendered()
        Text 100,45,"Space to change control mode  ("+controls+")"
        Text 100,65,"up/down - change height ("+DecalDepth#+")"

Flip 0
Forever


Function Process(cam,mesh)



End Function



.CreateAlphaBmp
;Load image : alpha.bmp
If FileSize("alpha.bmp") Return
Print "Write alpha.bmp"
Restore Alpha_image_data

img=CreateImage(64,64)
SetBuffer ImageBuffer(img)
For y=0 To 63
        For x=0 To 63 Step 4
                Read FourPixels

                ColorLevel=FourPixels Shr 24
                Pixel= (ColorLevel Shl 16) Or (ColorLevel Shl 8) Or ColorLevel
                WritePixel(x,y,Pixel)

                ColorLevel=(FourPixels Shr 16) And 255
                Pixel= (ColorLevel Shl 16) Or (ColorLevel Shl 8) Or ColorLevel
                WritePixel(x+1,y,Pixel)

                ColorLevel=(FourPixels Shr 8) And 255
                Pixel= (ColorLevel Shl 16) Or (ColorLevel Shl 8) Or ColorLevel
                WritePixel(x+2,y,Pixel)

                ColorLevel=FourPixels And 255
                Pixel= (ColorLevel Shl 16) Or (ColorLevel Shl 8) Or ColorLevel
                WritePixel(x+3,y,Pixel)

        Next
Next
UnlockBuffer ImageBuffer(img)
SetBuffer BackBuffer()

SaveBuffer(ImageBuffer(img),"Alpha.bmp")
FreeImage(img)

.Alpha_image_data
Data $FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF
Data $FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFEFEFD,$FCFCFBFB,$FBFBFBFB,$FCFCFDFE,$FEFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF
Data $FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FEFDFCFB,$F9F7F5F4,$F4F4F4F5,$F7F9FBFC,$FDFEFFFE,$FEFDFDFC,$FCFCFCFC,$FCFCFDFD,$FEFEFFFF,$FFFFFFFF,$FFFFFFFF
Data $FFFFFFFF,$FFFEFEFD,$FDFDFDFD,$FDFDFDFD,$FDFEFEFE,$FDFCF9F6,$F2EFECEA,$E9E9EBED,$F0F3F7FA,$FCFEFEFD,$FCFBF9F8,$F7F6F6F6,$F7F8F9FB,$FCFDFEFF,$FFFFFFFF,$FFFFFFFF
Data $FFFFFFFF,$FEFDFCFB,$FAF8F7F6,$F5F5F5F6,$F7F9FAFB,$FAF8F4F0,$EAE5E1DE,$DDDDDFE3,$E8EDF3F7,$FBFDFEFC,$FAF7F4F1,$EFEDEDED,$EEF0F3F6,$F9FCFDFE,$FFFFFFFF,$FFFFFFFF
Data $FFFFFFFF,$FEFCFAF7,$F5F2EFEC,$EBEAEAEA,$EBEDF0F1,$F0EDE9E4,$DDD7D2CF,$CED0D4D9,$E0E8EFF5,$FAFDFDFB,$F7F3EEEA,$E6E3E1E2,$E3E6EAEF,$F4F8FCFD,$FEFFFFFF,$FFFFFFFF
Data $FFFFFFFF,$FDFBF7F3,$EEE9E5E0,$DDDBDADA,$DBDEE1E3,$E2DFDAD4,$CCC5C1BE,$BEC2C7CF,$D8E3ECF4,$F9FDFDFA,$F5EFE8E2,$DCD7D4D4,$D6DADFE6,$EDF3F8FC,$FDFEFFFF,$FFFFFFFF
Data $FFFFFFFF,$FDF9F4EE,$E8E0D9D2,$CDC9C7C6,$C7CACED0,$CFCCC6C0,$B8B1ADAC,$AEB3BAC4,$D0DCE7F0,$F6FBFBF8,$F2EBE2DA,$D1CBC6C5,$C7CBD1DA,$E3ECF3F8,$FCFDFEFF,$FFFFFFFF
Data $FFFFFFFF,$FCF8F1EA,$E2D9CFC6,$BFB9B5B3,$B3B5B9BB,$B9B5AFA9,$A29C999A,$9EA4AEB9,$C7D5E1EB,$F1F6F7F4,$EEE6DCD2,$C7BEB8B5,$B6BAC1CB,$D7E2ECF3,$F8FCFDFE,$FFFFFFFF
Data $FFFFFFFF,$FCF6EEE5,$DACFC2B6,$ACA49E9B,$9A9CA0A1,$A09C9690,$8A868588,$8E97A2AF,$BECCD9E4,$EBF0F2EF,$E9E1D7CB,$BEB2A9A4,$A3A7AFBA,$C8D5E2EC,$F3F8FCFD,$FEFFFFFF
Data $FFFFFFFE,$FAF3EADF,$D2C3B4A5,$998E8782,$7F818586,$84817B76,$726F7075,$7D8894A1,$B1C1CED9,$E1E7EAE9,$E4DCD2C5,$B6A79B94,$91949BA7,$B6C7D6E3,$EDF4F9FC,$FEFFFFFF
Data $FFFFFFFE,$F9F1E6D9,$C9B8A695,$86797069,$6566696A,$6965605D,$5A5A5D64,$6E798693,$A4B3C1CC,$D5DCE1E2,$DFD8CEC0,$B09E9085,$80818894,$A4B7C9D9,$E5EFF6FB,$FDFFFFFF
Data $FFFFFFFD,$F8EEE2D3,$C1AE9A86,$74665A52,$4E4D5050,$4E4B4745,$45464B54,$5E6B7884,$94A3B0BC,$C5CDD4D8,$D8D3CABD,$AC988679,$71707581,$92A6BBCD,$DDE9F2F9,$FCFFFFFF
Data $FFFFFFFD,$F6ECDECE,$BBA7927D,$6B5B4F45,$403F403E,$3C383332,$32353B45,$505C6874,$83909DA9,$B3BDC6CC,$CECBC4B7,$A6907D6D,$625F646F,$8095ACC2,$D4E3EEF6,$FCFFFFFF
Data $FFFFFFFC,$F6EBDDCC,$B9A48E79,$67574A40,$39363532,$2E2A2524,$25282F39,$444F5A64,$727E8A96,$A0ACB6BF,$C3C2BCB0,$9E887361,$5450535E,$6F859EB6,$CBDCEAF4,$FBFFFFFF
Data $FFFFFFFC,$F5EADCCB,$B8A48E79,$67574A3F,$3833302B,$25201B19,$1A1E242E,$38434C55,$606C7783,$8E9AA6B1,$B7B8B3A8,$97816B58,$4944454F,$5F7690A9,$C0D4E4F0,$F9FEFEFF
Data $FFFFFFFC,$F5EADDCD,$BAA7927F,$6D5D5044,$3B352F28,$211B1412,$12151B24,$2D353D44,$4E59636F,$7B8895A2,$A9ACA89E,$8E78634F,$3F393942,$5167829C,$B5CBDDEB,$F5FCFDFE
Data $FFFFFFFC,$F5EBDFD0,$BFAD9A89,$78695C4F,$453C342A,$2119110E,$0D0F131A,$22282E34,$3C45505B,$68758390,$989B9990,$816D5946,$362F2E36,$445A758F,$A9C1D5E5,$F1FAFCFE
Data $FFFFFFFC,$F6EDE2D5,$C5B5A494,$8576695C,$51473D31,$261C140E,$0B0A0D11,$161B1F23,$2B333D49,$5663707D,$8588867E,$715F4C3B,$2C26252C,$3A4F6984,$9FB8CEE0,$EEF7FBFD
Data $FFFFFFFC,$F7EFE5DA,$CCBDAE9F,$90837567,$5B504437,$2A1F150E,$0908080B,$0E101316,$1D252E39,$45525E69,$7173716A,$5F504032,$26212229,$384C657F,$9AB3C9DC,$EBF5FAFD
Data $FEFEFEFB,$F6EFE7DC,$D0C2B4A7,$998C7E70,$6356483A,$2D21160E,$08050405,$07080A0D,$131A222C,$38434E57,$5D5F5D57,$4E43372D,$2422242C,$3B4E667F,$98B0C6D9,$E8F4F9FD
Data $FEFDFDFA,$F5EEE6DC,$D0C4B7AA,$9C8F8172,$64564839,$2C20160D,$07030202,$02030407,$0C131B25,$2F3A434A,$4F504F4A,$443C342E,$29292D35,$43556B82,$99B0C5D7,$E6F2F8FD
Data $FDFCFBF8,$F3EDE5DC,$D2C6BAAE,$A1938475,$65564738,$2A1E140C,$06020000,$00000104,$090F1720,$29323A40,$44454441,$3D393633,$32353A43,$51627589,$9FB3C7D8,$E6F1F8FD
Data $FDFBF9F5,$F0EAE3DB,$D1C7BBAF,$A2948474,$63534334,$261B110A,$05020000,$00000205,$090F171E,$272E3439,$3C3E3E3C,$3B3B3B3D,$3F454C55,$62718294,$A7B9CBDA,$E7F1F8FD
Data $FCFAF7F3,$EEE8E0D8,$CEC4B9AC,$9F918170,$5E4D3D2E,$22170E08,$00000000,$00000205,$0A10171E,$262C3236,$393B3C3C,$3E404449,$4F57606A,$768493A2,$B2C2D0DE,$E9F2F8FD
Data $FCF9F5F1,$EBE5DDD4,$CBC1B6A9,$9B8C7B6A,$58473729,$1C120A00,$00000000,$00000206,$0A10171E,$252B3135,$383B3D3F,$43495058,$616B7580,$8C99A5B2,$BFCCD8E3,$ECF4F9FD
Data $FBF8F4EF,$E9E2D9D0,$C6BCAFA1,$9282715F,$4D3C2C1F,$150C0000,$00000000,$00000306,$0B10171E,$252B3035,$393D4145,$4C545E69,$74808C97,$A2ADB8C2,$CDD6DFE8,$EFF5FAFD
Data $FBF8F3EE,$E8E0D6CC,$C2B7A99B,$8B7A6856,$44332519,$0F080000,$00000000,$00000306,$0B10171D,$242A3036,$3A40454C,$555F6C79,$8794A1AC,$B7C1CAD2,$DAE1E7ED,$F3F7FBFD
Data $FBF8F3EE,$E7DFD5CB,$C0B5A797,$87766351,$3F2F2115,$0C050000,$00000000,$00000306,$0B10161C,$23292F35,$3A414850,$5B677685,$95A4B2BF,$CAD3DBE1,$E7EBEFF3,$F7FAFCFE
Data $FBF8F4EF,$E8E0D7CC,$C1B6A797,$8674624F,$3D2D1F14,$0B000000,$00000000,$00000306,$0A0F151B,$22282E34,$39404851,$5E6C7D8E,$A0B0C0CD,$D9E2E9EE,$F2F4F6F9,$FBFCFDFE
Data $FCF9F5F0,$EBE3DAD0,$C5BAAB9A,$8875624F,$3D2C1E13,$0A000000,$00000000,$00000306,$0A0E141A,$20252B31,$373E4650,$5D6C7E90,$A3B6C7D5,$E2EBF2F6,$F9FBFCFC,$FDFEFEFF
Data $FCFAF7F2,$EEE7DFD5,$CBBFB09E,$8B786350,$3C2B1D12,$0A000000,$00000000,$00000205,$080D1117,$1C21272C,$3138404A,$5767798D,$A1B4C7D6,$E4EEF6FA,$FDFEFEFF,$FFFFFFFF
Data $FDFBF8F5,$F1ECE4DC,$D1C6B5A3,$8F7B6550,$3C2A1C11,$09000000,$00000000,$02030609,$0D11161A,$1F23262A,$2E333A43,$4F5E7083,$97ABBDCE,$DCE8F1F6,$FAFCFDFE,$FFFFFFFF
Data $FDFCFAF8,$F5F1EBE3,$D9CDBCA9,$947E6750,$3C291B10,$08030000,$00000103,$05070B0F,$14191D21,$25282B2D,$2F32373F,$48556476,$899CB0C1,$D1DFE9F1,$F6FAFCFE,$FFFFFFFF
Data $FEFDFCFB,$F9F6F1EA,$E0D3C1AD,$967F6750,$3B281A0F,$08030000,$00010205,$080C1116,$1C22272B,$2E313232,$3234373C,$444F5C6B,$7D90A3B5,$C6D5E2EB,$F2F7FBFD,$FFFFFFFF
Data $FEFEFDFC,$FAF7F3EB,$E0D2C0AB,$947C644E,$39271910,$09050202,$01020407,$0B11171F,$262D3338,$3B3E3E3D,$3C3C3D41,$464F5967,$77889AAD,$BECEDCE6,$EFF5FAFD,$FFFFFFFF
Data $FEFDFCFA,$F8F5EFE7,$DBCDBAA4,$8D765F4A,$37271A11,$0B080504,$03030509,$0E151E27,$303A4147,$4C4F4F4E,$4B4A4A4C,$4F545C67,$758595A6,$B8C8D7E2,$ECF4F9FD,$FFFFFFFF
Data $FEFCFAF7,$F3EFE8DE,$D1C2AF9A,$836E5946,$34261B13,$0E0B0807,$0505070B,$1119242F,$3A454E55,$5A5D5E5C,$5A575757,$595D636B,$778594A4,$B4C5D3DF,$E9F2F8FD,$FFFFFFFF
Data $FDFBF7F2,$EDE6DDD2,$C3B39F8B,$76635141,$33271E18,$14110F0C,$0908090D,$131D2835,$424E5962,$686C6D6B,$69676666,$66696D74,$7E8A97A5,$B4C4D2DE,$E8F1F8FD,$FFFFFFFF
Data $FDF9F4EE,$E6DED3C6,$B7A69481,$6E5D4F42,$362D2520,$1D1A1713,$0F0D0D0F,$151F2B38,$4654606A,$71767877,$76747474,$75777A80,$89939EAA,$B8C6D3DE,$E8F1F8FD,$FFFFFFFF
Data $FCF8F1EA,$E1D7CBBC,$AC9C8A79,$685B5046,$3D36302B,$2825201C,$16121012,$171F2B38,$4755626C,$747A7C7E,$7E7E7F81,$83878A8F,$97A0A9B3,$BECAD6E0,$EAF2F8FD,$FFFFFFFF
Data $FCF7EFE7,$DCD1C4B5,$A5948475,$675D554E,$47413D39,$35312B25,$1E181514,$171F2A36,$43525F6A,$747A7F83,$85888B8F,$93989CA1,$A8AFB7BF,$C8D2DBE4,$ECF4F9FD,$FFFFFFFF
Data $FCF6EEE5,$D9CDBFB0,$A1928376,$6B645E5A,$55514D49,$45403931,$28211B19,$1A1F2731,$3D4B5762,$6C747A80,$868C9299,$A0A6ACB2,$B9C0C6CC,$D3DAE2E9,$EFF5FAFD,$FFFFFFFF
Data $FCF6EDE4,$D8CCBEB0,$A194887D,$75706D6B,$6763605C,$5750493F,$352C2520,$1E20252C,$36414C56,$60697179,$828B959F,$AAB3BCC4,$CBD1D6DB,$DFE4E9EE,$F3F7FBFD,$FFFFFFFF
Data $FCF6EEE5,$DACEC1B4,$A79C918A,$84817F7F,$7B78746F,$6A62594F,$44393029,$24232529,$2F373F48,$525B646F,$7B8895A3,$B1BDC8D2,$DAE0E5E8,$EBEEF1F4,$F7FAFCFE,$FFFFFFFF
Data $FCF7EFE7,$DDD2C7BC,$B1A8A09B,$97959595,$928E8984,$7C746B60,$54483E34,$2C272524,$262A2F36,$3E485361,$6F8091A2,$B4C3D1DD,$E6EDF1F4,$F5F6F7F9,$FBFCFDFE,$FFFFFFFF
Data $FCF8F1EA,$E2D9CFC6,$BEB7B1AE,$ABABABAB,$A8A49E98,$90877D72,$66594E42,$372F2924,$22222428,$2F384453,$63768A9E,$B2C5D5E3,$EEF5FAFC,$FCFCFCFD,$FDFEFEFF,$FFFFFFFF
Data $FDF9F4EE,$E8E0D9D2,$CCC7C4C2,$C1C0C1C0,$BDB8B2AA,$A2998F84,$796D6054,$463B322A,$24212022,$272F3B4B,$5C70859A,$B0C4D6E5,$F0F8FDFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF
Data $FDFBF7F3,$EEE9E5E0,$DCD9D7D7,$D6D5D5D4,$D0CAC3BB,$B2AAA197,$8C817466,$574A3F34,$2B252122,$262D3A4A,$5C71869B,$B1C5D7E6,$F1F9FDFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF
Data $FEFCFAF7,$F5F2EFEC,$EAE9E8E8,$E7E6E5E4,$DFD9D2CA,$C2BAB2A9,$A095887A,$6A5B4E41,$362E2928,$2B323F4F,$6175899E,$B3C7D8E7,$F2F9FDFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF
Data $FEFDFCFB,$FAF8F7F6,$F5F4F4F4,$F4F3F2F0,$ECE6DFD7,$D0C9C2BB,$B3A99D8E,$7D6E5F52,$463D3736,$39404E5E,$6F8194A7,$BACCDCEA,$F4FAFEFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF
Data $FFFEFEFD,$FDFDFDFD,$FDFDFDFD,$FDFCFAF9,$F5EFE9E2,$DBD5D0CA,$C4BBAFA1,$91817365,$59514B4A,$4C53616F,$7F90A1B1,$C2D2E0ED,$F5FBFEFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF
Data $FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FEFDFCFB,$F8F4EFE9,$E4E0DBD7,$D3CBC0B3,$A3948679,$6E666160,$62697683,$92A0AEBC,$CAD8E5EF,$F7FCFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF
Data $FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FEFEFDFD,$FBF8F4F0,$ECE9E6E3,$E0D9D0C3,$B4A6998E,$837C7877,$7A808C98,$A5B1BCC7,$D3DEE9F2,$F8FDFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF
Data $FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFEFEFE,$FDFBF8F5,$F3F1EFED,$EBE5DDD2,$C4B8ACA2,$98928E8E,$9095A0AA,$B4BEC7CF,$D9E3EBF3,$F9FDFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF
Data $FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FEFDFBF9,$F7F6F4F4,$F3EEE7DD,$D1C7BDB4,$ADA8A6A6,$A8ADB6BE,$C7CED4DA,$E1E8EFF5,$FAFDFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF
Data $FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FEFDFCFB,$FAF9F8F8,$F8F4EEE6,$DCD4CCC5,$BFBCBBBC,$BFC3CAD1,$D8DDE0E4,$E9EEF3F7,$FBFDFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF
Data $FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FEFEFDFD,$FCFCFBFB,$FBF8F4ED,$E5DFD9D4,$D0CECED0,$D3D6DCE2,$E6EAECEE,$F1F4F7FA,$FCFEFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF
Data $FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFEFEFE,$FEFEFEFE,$FEFCF8F3,$EDE8E4E0,$DEDDDEE0,$E3E6EBEF,$F2F5F5F6,$F7F9FBFC,$FDFEFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF
Data $FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFDFBF7,$F3F0EDEA,$E9E9EAEC,$EEF1F5F8,$FAFCFCFC,$FCFDFDFE,$FEFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF
Data $FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFEFCFA,$F7F5F4F2,$F1F1F2F4,$F5F7FAFC,$FEFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF
Data $FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFEFDFC,$FBFAF9F8,$F8F8F8F9,$FAFBFCFD,$FEFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF
Data $FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFEFE,$FDFDFDFD,$FDFDFDFD,$FDFDFEFE,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF
Data $FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF

Return


.CreateTexBmp
;Load image : tex.bmp
If FileSize("tex.bmp") Return
Print "Write tex.bmp"
Restore Tex_image_data
Dim Palete(15)
For i=0 To 15
        Read Palete(i)
Next

img=CreateImage(64,64)
SetBuffer ImageBuffer(img)
For y=0 To 63
        For x=0 To 63 Step 8
                Read EightPixels
                For i=0 To 7
                        ColorIndex=( EightPixels Shr (i*4)) And 15
                        WritePixel(x+i,y,Palete(ColorIndex))
                Next

        Next
Next
UnlockBuffer ImageBuffer(img)
SetBuffer BackBuffer()

SaveBuffer(ImageBuffer(img),"tex.bmp")
FreeImage(img)

.Tex_image_data

Data  $FFAD9E88,$FFE7DFCE,$FFDBCCB4,$FFD4C0A3,$FFC0AB8E,$FFC9B89D,$FFBCA07C,$FFA78867,$FFA7947B,$FFB3A894,$FF877A67,$FF988C79,$FF968067,$FF6A6152,$FF796A57,$FF5B5043

Data  $31222210,$53236540,$22233335,$43225323,$33332236,$11122233,$54121111,$42543111
Data  $31222156,$53233505,$22122225,$45312222,$33333555,$11322233,$34222121,$36763222
Data  $53332553,$55323443,$21122124,$53563223,$33345435,$22333332,$55322222,$56442112
Data  $26423334,$63355342,$21123353,$45565353,$53333525,$33335325,$35232225,$44622221
Data  $28312548,$64555553,$32235455,$44453255,$22223554,$53322135,$32753554,$44222222
Data  $34223235,$54645555,$56555655,$00052334,$32235490,$53221233,$54A45355,$32211122
Data  $43223223,$32545534,$54554545,$88055535,$33259900,$53322332,$00494594,$22863334
Data  $42123212,$53555535,$45409945,$B8804454,$233598B8,$55323332,$80909006,$44346870
Data  $53232411,$05444553,$05900008,$BBB80940,$133498BB,$43355332,$0C0B8044,$31675040
Data  $34522C51,$00445553,$800098B8,$CCCAC940,$233408BC,$74555532,$CCBBB808,$51005C47
Data  $55355681,$04445445,$80080BB8,$AAAAC088,$25598BCA,$87435532,$BCCAA809,$3055697B
Data  $55335252,$86446445,$9908BBB8,$AAAAABB8,$34900BAA,$00333332,$CAEAD853,$5743908B
Data  $35533234,$88040464,$088BB8BB,$AEEAACB8,$5988BCAA,$88333223,$AEEEE849,$753350BB
Data  $45543133,$00094446,$08088888,$EAAAACBB,$908BBCAA,$90353235,$EDDEBC00,$542498CA
Data  $53452253,$98808666,$80008080,$AAAEAABB,$0BBBCAAA,$8B553239,$DDDEBA88,$66500BAE
Data  $55032445,$88088664,$80089908,$ACACAAB0,$BBBAEAAA,$C0055500,$FDDABBEE,$3340BAED
Data  $55055546,$80088765,$00090098,$ABCBCAB0,$BCAAAAAA,$9CB06580,$FFEABAA0,$5448BEDD
Data  $32385371,$44408765,$00908088,$CACBBC00,$BEAAAAAA,$BC8CE00B,$FFEABEC8,$440BAEDF
Data  $35253005,$55546654,$00000080,$CCACBB80,$AAAAAAAB,$C8CC0AAA,$FFEEAACA,$440BEEDF
Data  $48524545,$44534466,$09000009,$BBCCBB00,$CAAACCAB,$008050AC,$FDDACCAB,$448AEDFF
Data  $54347554,$44439643,$80800099,$BCCBBC00,$BBAABBBB,$890949BB,$FDDABACC,$99BAEEDF
Data  $45446535,$94450070,$88800094,$BCB8BB08,$BBCAABBB,$8000000B,$DDEEBACB,$48BCAEDD
Data  $45665323,$54554686,$88088095,$BBC0AB08,$BCACBBBB,$B08888BB,$DEEEABBB,$00BAEEED
Data  $56666333,$55345477,$80889045,$BBB80BB0,$CBBABBBB,$B8BB8BAA,$EEEEAABB,$48BADDEE
Data  $44876233,$55554080,$00009905,$BB00BBB8,$BBBBABBB,$ACCCBBAA,$AEEEAAAA,$408BDEEE
Data  $05632332,$90040604,$80099909,$B800C8B8,$AABBBABB,$AABCCCAA,$CAAEEAEA,$498CAEEA
Data  $44046553,$88000009,$B8099000,$BBBBB8BB,$EACBBBBB,$AEACABCE,$BCCEEEAA,$040CEABB
Data  $67C44645,$B8000008,$B8999B00,$CFABAB8B,$EABBBBAA,$EEAAABCE,$8BBEEEAA,$4490CE08
Data  $77684446,$C8800040,$BB898BCB,$DDBBAEAB,$AACAABCB,$EEABCAEA,$808EAAAA,$44490C0A
Data  $668C7445,$B8800440,$B8BBAEEB,$EABBBAB0,$CCEAEAAB,$EEAAAAAB,$00EAAEAE,$44450030
Data  $40778456,$CC099444,$000BBCBC,$AABCA000,$ACACCAAC,$EEEAAAAC,$8EAEEEEE,$04544354
Data  $56466466,$B8004455,$80BBBBBB,$AACACB8B,$AADAAAAE,$EEEEEDAA,$4ABBEAED,$65545354
Data  $55045345,$8C066445,$808BBBAB,$CABEACBB,$CAEAAEEA,$DEEEDBAE,$40EAAEDD,$35555556
Data  $33464555,$CC400445,$B0BAACAB,$AABCABBB,$ECCBCBAC,$DEEEABCC,$8BAAEDDD,$45355400
Data  $35355235,$CB084432,$AAAABCCB,$EECBCCCB,$DBACBBCA,$EDEACBBA,$BCCAEDDE,$53554008
Data  $33333233,$EB004353,$BBBAAEBB,$AECBCAAB,$B0BBACCA,$EEABBBCE,$8AEEDDEE,$55554080
Data  $25555445,$CB980002,$BBCAEB88,$DAAABBB8,$0808BAAA,$AAAB08A0,$BAAEEEEE,$55545480
Data  $55535355,$088C4904,$8BB8AC08,$EAACBBBB,$880BBAAE,$BB8BBBC8,$BAAAEEAB,$35444888
Data  $63284233,$B8CA0547,$8CBBBBB8,$EAACBBBB,$800BAAAE,$B8BCC88B,$AAAAAECB,$22540088
Data  $84342333,$AB987C88,$BBBBBCAB,$EEABCCBB,$90B0BCAA,$B887BCC8,$ACCCABCB,$2355400C
Data  $85453533,$BA848A47,$BBBB8BAB,$DDAACBCB,$88008CAA,$8C890800,$BCEAAAB0,$5355548B
Data  $66685355,$8CA90057,$8888C8BA,$AEACCBCB,$7080BEEE,$88090888,$BBAB8CB0,$22355000
Data  $70445254,$B0A8090C,$0908AB8C,$CBCAEBBB,$80BBEDEA,$B888B8BC,$00B88CB0,$53344400
Data  $74232222,$0499C007,$0B900080,$CBBCB088,$8BAACAEC,$8BCCC0EE,$40808B88,$44594840
Data  $C7222256,$90408047,$900940B5,$BCB00098,$EEEABCAA,$BBAAACBC,$5408A8BB,$224E0444
Data  $094C384C,$00884406,$949440B0,$BB880990,$AEACCAAC,$CAAEEEAA,$33474408,$74776522
Data  $00431043,$09854535,$94549840,$B0909999,$EEAACBB0,$CAEEDDEE,$32565408,$48466322
Data  $C7225021,$54944534,$55042444,$80809994,$EABB88BB,$BAEEDDEE,$2235550B,$12252233
Data  $53401222,$34444466,$53643433,$00009044,$ECCB80BC,$AEEDDDEE,$2233540B,$22253333
Data  $25451232,$56445473,$54545522,$80009445,$DABAB888,$AAEEDEEE,$23333598,$12332222
Data  $36805222,$45535422,$46553233,$00909465,$EEB88B80,$ACEEEDEE,$2352230C,$22232233
Data  $23820513,$53556523,$45555543,$08446666,$AAAB8800,$8BCAAEEA,$54212588,$33332123
Data  $32831555,$53633522,$23355353,$80C05453,$AACBB098,$088BCAAA,$63123449,$33333225
Data  $53344323,$34414312,$35322323,$95945523,$CBBB0944,$908BBBBB,$33323559,$22223533
Data  $33350222,$2384B513,$33333333,$53234533,$BB8B8045,$90888BCB,$55535455,$32211674
Data  $12150225,$46432432,$52222333,$55335555,$8BB00055,$454900BB,$85165535,$32333245
Data  $52257223,$36653253,$85323333,$44335553,$88000445,$53545998,$83153233,$22555536
Data  $66060422,$15744444,$43332132,$25554435,$80944445,$25445590,$32532232,$33243335
Data  $54553232,$34547455,$32545322,$44563553,$04455346,$22235540,$25522222,$23345322
Data  $35523232,$5663C734,$35356535,$25332222,$05553204,$11123335,$23211222,$55335421
Data  $44645322,$55667864,$23533554,$13311121,$35533342,$11111153,$23211112,$05312252
Data  $34535322,$55556565,$53322533,$22521122,$35333251,$11111122,$23211121,$3C631223
Data  $23532222,$54545336,$22222333,$12222133,$53332152,$11112133,$23311111,$23541212
Data  $22222223,$53234567,$22321254,$22123343,$33332253,$11122223,$56211111,$52542111

Return

Другие

Друзья