游戏开发论坛

 找回密码
 立即注册
搜索
查看: 1458|回复: 1

D3D 2D材?(PNG File)如何?定ColorKey

[复制链接]

414

主题

611

帖子

621

积分

高级会员

Rank: 4

积分
621
发表于 2006-4-17 22:29:00 | 显示全部楼层 |阅读模式
D3D 2D材?(PNG File)如何?定ColorKey?
D3DXCreateTextureFromFileEx可以?定ColorKey,但是我必?知道哪一???色要?定?橥缚
可是PNG(或TGA,DDS)的?D?n格式我要如何知道他的Colorkey呢?

BOOL DoInit()
{
  D3DPRESENT_PARAMETERS d3dpp;
  D3DDISPLAYMODE        d3ddm;
  BYTE *Ptr;

#define PNG_WIDTH 256.0f
#define PNG_HEIGHT 256.0f

  sVertex Verts[4] = {
      {  0.0f,  0.0f, 1.0f, 1.0f, 0.0f, 0.0f },
      { PNG_WIDTH,  0.0f, 1.0f, 1.0f, 1.0f, 0.0f },
      {  00.0f, PNG_HEIGHT, 1.0f, 1.0f, 0.0f, 1.0f },
      { PNG_WIDTH, PNG_HEIGHT, 1.0f, 1.0f, 1.0f, 1.0f }
    };

  // Do a windowed mode initialization of Direct3D
  if((g_pD3D = Direct3DCreate8(D3D_SDK_VERSION)) == NULL)
    return FALSE;
  if(FAILED(g_pD3D->GetAdapterDisplayMode(D3DADAPTER_DEFAULT, &d3ddm)))
    return FALSE;
  ZeroMemory(&d3dpp, sizeof(d3dpp));
  d3dpp.Windowed = TRUE;
  d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD;
  d3dpp.BackBufferFormat = d3ddm.Format;
  d3dpp.EnableAutoDepthStencil = FALSE;
  if(FAILED(g_pD3D->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, g_hWnd,
                                  D3DCREATE_SOFTWARE_VERTEXPROCESSING,
                                  &d3dpp, &g_pD3DDevice)))
    return FALSE;

  // Create the vertex buffer and set data
  g_pD3DDevice->CreateVertexBuffer(sizeof(sVertex)*4, 0,                                VERTEXFVF, D3DPOOL_DEFAULT, &g_pVB);
  g_pVB->Lock(0,0, (BYTE**)&amptr, 0);
  memcpy(Ptr, Verts, sizeof(Verts));
  g_pVB->Unlock();

  // Load the texture map
  D3DXCreateTextureFromFile(g_pD3DDevice, "Image1.png", &g_pTexture);

  return TRUE;
}

72

主题

447

帖子

454

积分

中级会员

Rank: 3Rank: 3

积分
454
QQ
发表于 2006-4-19 18:14:00 | 显示全部楼层

Re:D3D 2D材?(PNG File)如何?定ColorKey

你给这些代码都没用  D3DXCreateTextureFromFile里面默认的keycolor是RGB(0,0,0)
要修改就用D3DXCreateTextureFromFileEx()

这里面有很多的sprite的东西
http://www.dingge.com/forum/index.asp?boardid=46
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-24 07:04

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表