游戏开发论坛

 找回密码
 立即注册
搜索
查看: 5270|回复: 8

dx9下的3d绘图怎样设为全屏模式?

[复制链接]

1

主题

3

帖子

0

积分

新手上路

Rank: 1

积分
0
发表于 2005-8-28 23:31:00 | 显示全部楼层 |阅读模式
同上,找的几个例子全部是窗口模式,我想设为全屏模式,按esc键再返回窗口模式,请高手指点

55

主题

331

帖子

337

积分

中级会员

Rank: 3Rank: 3

积分
337
发表于 2005-8-28 23:58:00 | 显示全部楼层

Re:dx9下的3d绘图怎样设为全屏模式?

HRESULT InitialiseD3D(HWND hWnd, UINT nWidth, UINT nHeight)
{
   .................... // 省略代码若干

    D3DPRESENT_PARAMETERS d3dpp;
    ZeroMemory(&d3dpp, sizeof(d3dpp));


/* //窗口模式:
    d3dpp.Windowed = TRUE;
    d3dpp.SwapEffect = D3DSWAPEFFECT_COPY_VSYNC;
    d3dpp.BackBufferFormat = d3ddm.Format;
*/

    //全屏模式
    d3dpp.Windowed = FALSE;
    d3dpp.BackBufferCount = 1;
    d3dpp.BackBufferFormat = d3ddm.Format;
    d3dpp.BackBufferWidth = d3ddm.Width;
    d3dpp.BackBufferHeight = d3ddm.Height;
    d3dpp.hDeviceWindow = hWnd;
    d3dpp.SwapEffect = D3DSWAPEFFECT_COPY_VSYNC;
    d3dpp.FullScreen_RefreshRateInHz = D3DPRESENT_RATE_DEFAULT;
    d3dpp.FullScreen_PresentationInterval = D3DPRESENT_INTERVAL_ONE;

   //设置深度缓冲
    d3dpp.AutoDepthStencilFormat=D3DFMT_D16;  //选择深度缓冲为 D3DFMT_D16
   d3dpp.EnableAutoDepthStencil=TRUE;               //深度缓冲是否可用:TRUE

    //Create a Direct3D device.
    if(FAILED(g_pD3D->CreateDevice(
                  D3DADAPTER_DEFAULT,
                  D3DDEVTYPE_HAL,
                  hWnd,
                  D3DCREATE_SOFTWARE_VERTEXPROCESSING,                                          &d3dpp,           // d3dpp 在上面已经设置好了
                                                                   &g_pD3DDevice)))  //创建了D3D设备之后将设备地址
                                                     //赋予g_pD3DDevice
    {
        return E_FAIL;
    }
   

55

主题

331

帖子

337

积分

中级会员

Rank: 3Rank: 3

积分
337
发表于 2005-8-28 23:59:00 | 显示全部楼层

Re:dx9下的3d绘图怎样设为全屏模式?

代码一发到 BBS 上风格都变了。真难改呀。@_@

1

主题

3

帖子

0

积分

新手上路

Rank: 1

积分
0
 楼主| 发表于 2005-9-5 23:58:00 | 显示全部楼层

Re:dx9下的3d绘图怎样设为全屏模式?

我要的是c#代码啊!拜托!

59

主题

984

帖子

1200

积分

金牌会员

Rank: 6Rank: 6

积分
1200
发表于 2005-9-6 18:57:00 | 显示全部楼层

Re:dx9下的3d绘图怎样设为全屏模式?

你看看我原来贴的教程吧,有几个程序都是全屏的

1

主题

3

帖子

0

积分

新手上路

Rank: 1

积分
0
 楼主| 发表于 2005-9-6 20:01:00 | 显示全部楼层

Re:dx9下的3d绘图怎样设为全屏模式?

请楼上兄弟详细说说

59

主题

984

帖子

1200

积分

金牌会员

Rank: 6Rank: 6

积分
1200
发表于 2005-9-10 21:52:00 | 显示全部楼层

Re:dx9下的3d绘图怎样设为全屏模式?

public const int ScreenWidth = 1024;
public const int ScreenHeight = 768;

public void InitializeGraphics()
                {

                        PresentParameters presentParams = new PresentParameters();
                        presentParams.EnableAutoDepthStencil = true;
                        presentParams.AutoDepthStencilFormat = DepthFormat.D16;
                        presentParams.SwapEffect = SwapEffect.Discard;

                        Format current = Manager.Adapters[0].CurrentDisplayMode.Format;

                        if(Manager.CheckDeviceType(0,DeviceType.Hardware,current,current,false))
                        {
                                presentParams.Windowed = false;
                                presentParams.BackBufferFormat = current;
                       
                                presentParams.BackBufferWidth = ScreenWidth;
                                presentParams.BackBufferHeight = ScreenHeight;
                        }
                        else
                        {
                                presentParams.Windowed = true;
                        }

                        device = new Device(0,DeviceType.Hardware,this,CreateFlags.HardwareVertexProcessing,presentParams);
}


protected override void OnKeyUp(KeyEventArgs e)
                {
                        if(e.KeyCode == Keys.Escape)
                                this.Close();
                        base.OnKeyUp (e);
                }

8

主题

71

帖子

76

积分

注册会员

Rank: 2

积分
76
发表于 2005-10-21 16:50:00 | 显示全部楼层

Re:dx9下的3d绘图怎样设为全屏模式?

后边的DX操作代码都好说
关键在于 程序创建全屏窗口
C#要么用API创建 要么用一个窗口覆盖桌面

33

主题

90

帖子

96

积分

注册会员

Rank: 2

积分
96
发表于 2005-10-27 10:39:00 | 显示全部楼层

Re:dx9下的3d绘图怎样设为全屏模式?

杭州海之童急聘3D图形底层开发、游戏逻辑开发,有意向的请QQ联系:23046282,或者直接发送简历&作品到我们公司邮箱,hire@hitone.net.cn
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-1-22 10:01

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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