打印本文 打印本文 关闭窗口 关闭窗口
VB.NET实现DirectDraw9 (2) 动画
作者:武汉SEO闵涛  文章来源:敏韬网  点击数4032  更新时间:2009/4/23 19:00:44  文章录入:mintao  责任编辑:mintao
p;    End If

    End Sub

 

    Sub initDDraw()

        dev.SetCooperativeLevel(Me, CooperativeLevelFlags.FullscreenExclusiveAllowModex)

        dev.SetDisplayMode(1024, 768, 16, 0, False)

 

        ''''Primarybuffer的设置

        desc1 = New SurfaceDescription

        desc1.SurfaceCaps.VideoMemory = True

        desc1.SurfaceCaps.PrimarySurface = True

        desc1.SurfaceCaps.Flip = True

        desc1.SurfaceCaps.Complex = True

        desc1.BackBufferCount = 1

 

        PS = New Surface(desc1, dev)

 

        desc2 = New SurfaceDescription

        desc2.SurfaceCaps.BackBuffer = True

        BS = PS.GetAttachedSurface(desc2.SurfaceCaps)

 

        BS.ForeColor = System.Drawing.Color.Blue

        BS.FontTransparency = True

        ''''''''OK只要把PrimaryBuffer跟BackBuffer设置好就算初始化完成,其他的图像都往上贴

 

 

    End Sub

 

    Sub LoadSurfaces()

        ''''''''''''读取其他图层

        '''''''''''' 不要把Surface想得那么神秘,就是一个BMP附加上了更多的属性而已,这样理解简单很多

        desc3 = New SurfaceDescription

        desc3.SurfaceCaps.OffScreenPlain = True             ''''幕后的

        desc3.Height = BS.SurfaceDescription.Height         ''''大小

        desc3.Width = BS.SurfaceDescription.Width

        S1 = New Surface(FN1, desc3, dev)                   ''''读取

 

        desc4 = New SurfaceDescription

        desc4.SurfaceCaps.OffScreenPlain = True             ''''直接读

        S2 = New Surface(FN2, desc4, dev)

 

        Dim key As ColorKey                                 ''''用来设置透明的

        key.ColorSpaceHighValue = 0

        key.ColorSpaceLowValue = 0

        S2.SetColorKey(ColorKeyFlags.SourceDraw, key)       ''''设置透明色

        ''''''''''''''''''''设置矩形位置信息

        ''''''''''''

        RB.Width = BS.SurfaceDescription.Width

        RB.Height = BS.SurfaceDescription.Height

 

        R1.Width = S1.SurfaceDescription.Width

        R1.Height = S1.SurfaceDescription.Height

 

        R2.Width = S2.SurfaceDescription.Width

        R2.Height = S2.SurfaceDescription.Height

上一页  [1] [2] [3] [4] [5]  下一页

打印本文 打印本文 关闭窗口 关闭窗口