游戏开发论坛

 找回密码
 立即注册
搜索
查看: 9709|回复: 36

请问大家怎样提高渲染速度

[复制链接]

132

主题

1341

帖子

1341

积分

金牌会员

Rank: 6Rank: 6

积分
1341
发表于 2005-7-30 21:14:00 | 显示全部楼层 |阅读模式
渲染了一个只有仙剑三某场景一般复杂的场景,帧速居然为"0.025fps/s"!但仙三居然可以能在我的烂机上数十帧一秒!不明白这是怎样做到的,我的程序已经把灯光关了,没有打开alphablend,VB是只读,没有纹理过滤,连diffuse都删了,但还是很慢,请问有没有办法加速?(渲染的时VB和Indxe)谢谢大家赐教 [em1]

8

主题

239

帖子

239

积分

中级会员

Rank: 3Rank: 3

积分
239
发表于 2005-7-30 21:33:00 | 显示全部楼层

Re:请问大家怎样提高渲染速度

如果没有挑选机制肯定慢,你上4叉或8叉了吗?

85

主题

824

帖子

878

积分

高级会员

Rank: 4

积分
878
QQ
发表于 2005-7-30 22:45:00 | 显示全部楼层

Re:请问大家怎样提高渲染速度

单次渲染尽可能多的多边型

60

主题

1319

帖子

1319

积分

金牌会员

Rank: 6Rank: 6

积分
1319
发表于 2005-7-31 00:21:00 | 显示全部楼层

Re:请问大家怎样提高渲染速度

能不能把代码贴出来看看,部分也好

132

主题

1341

帖子

1341

积分

金牌会员

Rank: 6Rank: 6

积分
1341
 楼主| 发表于 2005-7-31 10:42:00 | 显示全部楼层

Re: Re:请问大家怎样提高渲染速度

ljm: Re:请问大家怎样提高渲染速度

能不能把代码贴出来看看,部分也好

struct Vertex{D3DXVECTOR3 pos,nor;float u,v;}
创建:
pdev->CreateVertexBuffer( nMesh*sizeof(Vertex),
D3DUSAGE_WRITEONLY , D3DFVF_XYZ|D3DFVF_NORMAL|D3DFVF_TEX1, D3DPOOL_MANAGED, &VB,NULL );

pdev->CreateIndexBuffer (nIndex*sizeof(WORD),D3DUSAGE_WRITEONLY,D3DFMT_INDEX16,D3DPOOL_MANAGED,&Index,NULL);

pdev->SetFVF( D3DFVF_XYZ|D3DFVF_NORMAL|D3DFVF_TEX1 );//|D3DFVF_DIFFUSE,为了加速
        D3DXMATRIXA16 matWorld;
        D3DXMatrixIdentity(&matWorld);
        pdev->SetTransform( D3DTS_WORLD, &matWorld );
        for(int i=0;i<Count;i++)
        {
                pdev->SetTexture (0,Texture);
                pdev->SetIndices (Sub.Index );
                pdev->SetStreamSource( 0,VB, 0, sizeof(Vertex) );
                pdev->DrawIndexedPrimitive (D3DPT_TRIANGLELIST,0,0,nMesh,0,nFace);

132

主题

1341

帖子

1341

积分

金牌会员

Rank: 6Rank: 6

积分
1341
 楼主| 发表于 2005-7-31 10:51:00 | 显示全部楼层

Re:请问大家怎样提高渲染速度

没有用上空间分割,不明白如果用上这么复杂的东西速度会低还是降

8

主题

239

帖子

239

积分

中级会员

Rank: 3Rank: 3

积分
239
发表于 2005-7-31 10:55:00 | 显示全部楼层

Re:请问大家怎样提高渲染速度

pdev->SetTexture (0,Texture);
pdev->SetStreamSource( 0,VB, 0, sizeof(Vertex) );
放loop外面应该好点吧

8

主题

182

帖子

268

积分

中级会员

Rank: 3Rank: 3

积分
268
发表于 2005-7-31 11:02:00 | 显示全部楼层

Re: 请问大家怎样提高渲染速度

你不是每次渲染时才创建vertexbuffer的吧?

132

主题

1341

帖子

1341

积分

金牌会员

Rank: 6Rank: 6

积分
1341
 楼主| 发表于 2005-7-31 11:26:00 | 显示全部楼层

Re:请问大家怎样提高渲染速度

to 7楼:
但除了大型场景,还有角色。

to 8楼:
不是,是调入模型名的时候才创建。

莫非因为没有空间分割,而令速度打这么大的节扣?

13

主题

978

帖子

978

积分

高级会员

Rank: 4

积分
978
发表于 2005-7-31 15:52:00 | 显示全部楼层

Re:请问大家怎样提高渲染速度

背裁做了没有?
视锥裁减也是很必要的。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-1-20 03:22

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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