Direct3DRM - 透明

<戻る

ここに載せてあるソースコードは、参考のために載せてあります
サンプルコードは、一番下にLZHとしてあります



		 	
Option Explicit

Private Sub Form_Load()
    Dim frame(1)    As Direct3DRMFrame3
    Dim mesh(1)     As Direct3DRMMeshBuilder3
    Dim tex         As Direct3DRMTexture3
    
    '下記はframe()とmesh()の説明です
    '配列0は、手前で回転している透明の立方体です
    '配列1は、奥で回転している赤い立方体です
    
    With RMCanvas1
        
        '小窓でDirect3Dを使用することを設定します
        .StartWindowed
        'フレームの生成をします
        Set frame(0) = .D3DRM.CreateFrame(.SceneFrame)
        Set frame(1) = .D3DRM.CreateFrame(.SceneFrame)
        'メッシュを生成します
        Set mesh(0) = .CreateBoxMesh(3, 3, 3)
        Set mesh(1) = .CreateBoxMesh(3, 3, 3)
        
        'テクスチャに画像を読み込みます
        Set tex = .CreateUpdateableTexture(64, 64, App.Path & "\image1.bmp")
        '透明色を有効にする
        tex.SetDecalTransparency D_TRUE
        '透明色を設定します(ここでは黒)
        tex.SetDecalTransparentColor vbBlack
        'メッシュにテクスチャを貼り付けます
        mesh(0).SetTexture tex
        
        '立方体を赤にします
        mesh(1).SetColorRGB 127, 0, 0
        
        'メッシュをフレームにくっつけます
        frame(0).AddVisual mesh(0)
        'フレームに回転ベクトルを与えます
        frame(0).SetRotation Nothing, 1, 1, 1, 0.04
        
        'メッシュをフレームにくっつけます
        frame(1).AddVisual mesh(1)
        'フレームに回転ベクトルを与えます
        frame(1).SetRotation Nothing, 1, 0, 1, 0.01
        'フレームの位置を設定します
        frame(1).SetPosition Nothing, 0, 0, 5
    End With
    Timer1.Interval = 1
End Sub

Private Sub Form_Resize()
    'RmCanvasコントロールのサイズを調整します
    RMCanvas1.Move 0, 0, Me.ScaleWidth, Me.ScaleHeight
End Sub

Private Sub Timer1_Timer()
    '結果を描画します
    RMCanvas1.Update
End Sub



		
		          

<戻る

SampleDX04.lzh


http://hp.vector.co.jp/authors/VA015521/