DDSCL_NORMAL的问题,急

sprewellkobe 2004-04-28 10:08:53
我将
pdd->SetCooperativeLevel(Handle,DDSCL_NORMAL);

但此后
DDSCAPS ddscaps;
ddsd.dwSize=sizeof(ddsd);
ddsd.dwFlags=DDSD_CAPS|DDSD_BACKBUFFERCOUNT;
ddsd.ddsCaps.dwCaps=DDSCAPS_PRIMARYSURFACE|DDSCAPS_FLIP|DDSCAPS_COMPLEX;
ddsd.dwBackBufferCount=1;
ddrval=pdd->CreateSurface(&ddsd,&ps,NULL);这就报错

但如果开始设定全屏独占就没事
我查了DXSDK,实在找不到哪个参数与NORMAL模式冲突

还望高手指教!谢
...全文
81 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
allsword 2004-04-28
  • 打赏
  • 举报
回复
有什么问题请参考SDK中自带的例子:inawin,brouhaha
allsword 2004-04-28
  • 打赏
  • 举报
回复
//ddsd.dwFlags=DDSD_CAPS|DDSD_BACKBUFFERCOUNT;
if ( FAILED( lpDD->SetCooperativeLevel( hwnd, DDSCL_NORMAL ) ) )
{
return Fail( hwnd, "Couldn't set cooperative level.\n" );
}

// Create the primary surface.
ddsd.dwSize = sizeof( ddsd );
ddsd.dwFlags = DDSD_CAPS;
ddsd.ddsCaps.dwCaps = DDSCAPS_PRIMARYSURFACE;
//在窗口模式中,不好用back buffer,
//但可用offscreen + blt模拟
sprewellkobe 2004-04-28
  • 打赏
  • 举报
回复
没人回答吗??顶!
sprewellkobe 2004-04-28
  • 打赏
  • 举报
回复
收到!多谢!多谢!结帐!

6.1的SDK里面有例子,写的很清楚,多谢again
allsword 2004-04-28
  • 打赏
  • 举报
回复
//lpDD->CreateSurface( &ddsd, &lpDDSPrimary, NULL )后
// Create the first off-screen surface.
ddsd.dwFlags = DDSD_CAPS | DDSD_HEIGHT |
DDSD_WIDTH | DDSD_CKSRCBLT;
ddsd.ddsCaps.dwCaps = DDSCAPS_OFFSCREENPLAIN;
ddsd.dwHeight = 100;
ddsd.dwWidth = 100;
// Set the source color key to green.
ddsd.ddckCKSrcBlt.dwColorSpaceLowValue = dwGreen;
ddsd.ddckCKSrcBlt.dwColorSpaceHighValue = dwGreen;

if ( FAILED( lpDD->CreateSurface( &ddsd, &lpDDSOffOne, NULL ) ) )
{
return Fail( hwnd, "Couldn't create off-screen one.\n" );
}

//建立offscreen后load
// Load our images.
if ( !LoadImage( lpDDSOffOne, "my.bmp" ) )
{
return Fail( hwnd, "Couldn't load offscreen one.\n" );
}

///////////////////////////////////////////////////////////////
//接下来blt图
lpDDSPrimary->Blt( NULL, lpDDSOffOne, NULL,
DDBLT_WAIT | DDBLT_KEYDEST,
NULL );
sprewellkobe 2004-04-28
  • 打赏
  • 举报
回复
谢谢!

顺便问一下,这两个例子是哪版本的SDK,我的是DX8,没有这两个例子

还有,我查了一下SAMPLE里面的WINDOW MODE,里面的显示细节用的CDisplay,我用的不是VC IDE,所以不太明白你说的不用backfuffer还怎么flip呢?

8,304

社区成员

发帖
与我相关
我的任务
社区描述
游戏开发相关内容讨论专区
社区管理员
  • 游戏开发
  • 呆呆敲代码的小Y
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧