3
하스켈의 SDL 바인딩을 사용하여 표면에 스프라이트를 블릿하고 싶지만 스프라이트의 표면에 투명 색상을 정의하는 방법을 모르겠습니다. 나는 하스켈에서 동일한을 달성 할 수있는 방법Haskell SDL Binding : 스프라이트를 투명한 색상으로 블 리팅하는 방법은 무엇입니까?
ball.Transparent<-true
ball.TransparentColor<-Color.FromArgb (0, 255, 0)
어떤 생각하십시오 Sdldotnet - 도서관에서
module Main where
import Graphics.UI.SDL as SDL
import Graphics.UI.SDL.Image as SDLi
main = do
SDL.init [SDL.InitVideo]
screen <- SDL.setVideoMode 500 500 32 []
SDL.fillRect screen Nothing (SDL.Pixel 0x00FFFFFF)
ball <- SDLi.load "30ball.png"
SDL.blitSurface ball Nothing screen Nothing
SDL.flip screen
delay 2000
SDL.quit
내가 좋아하는 뭔가 볼의 속성을 설정할 수 있습니다, 다음은 지금까지 코드는 SDL 바인딩?
module Main where
import Graphics.UI.SDL as SDL
import Graphics.UI.SDL.Image as SDLi
main = do
SDL.init [SDL.InitVideo]
screen <- SDL.setVideoMode 500 500 32 []
SDL.fillRect screen Nothing (SDL.Pixel 0x00FFFFFF)
ball <- SDLi.load "30ball.bmp"
b2 <- convertSurface ball (surfaceGetPixelFormat screen) []
t <- mapRGB (surfaceGetPixelFormat b2) 0 255 0
setColorKey b2 [SrcColorKey, RLEAccel] t
SDL.blitSurface b2 Nothing screen Nothing
SDL.flip screen
delay 2000
SDL.quit
고마워요! 그것은 setColorKey를 추가하고 표면을 변환 한 후에 작동했습니다! – martingw