游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3880|回复: 7

ShadowMap是不是很伤fps

[复制链接]

33

主题

159

帖子

272

积分

中级会员

Rank: 3Rank: 3

积分
272
QQ
发表于 2011-3-21 16:09:00 | 显示全部楼层 |阅读模式
我是从MainLoop里面取时间值,计算理论fps
空程序的理论fps在本机上是630左右
今天加了个512*512的ShadowMap 800*600的窗口
结果fps掉到了118,要知道我才放了两个模型上去啊.
去掉post后fps也只有130左右,
为了减少压栈时间,我把每帧要用到的函数全做成了callback
想不到这样都掉的这么多.
真不知道是不是win32的程序框架出了问题

2万

主题

2万

帖子

6万

积分

论坛元老

Rank: 8Rank: 8

积分
66489
QQ
发表于 2011-3-21 17:28:00 | 显示全部楼层

Re:ShadowMap是不是很伤fps

shadow maps要画多次啊!而且最后画的那次还要比较。当然会成倍的降。

2

主题

429

帖子

435

积分

中级会员

Rank: 3Rank: 3

积分
435
发表于 2011-3-21 21:36:00 | 显示全部楼层

Re:ShadowMap是不是很伤fps

为了减少压栈时间,我把每帧要用到的函数全做成了callback
想不到这样都掉的这么多.
==========================
callback ? 是想说全局函数?还是inline ?
大的游戏引擎,函数调用栈深度能到2,30层。函数压栈的消耗比起其它模块的消耗根本微不足道。

119

主题

1367

帖子

1393

积分

金牌会员

Rank: 6Rank: 6

积分
1393
发表于 2011-3-22 09:01:00 | 显示全部楼层

Re:ShadowMap是不是很伤fps

shadowmap差不多要掉一半的帧数是正常的,但帧数的下降也并非线性的,楼主最好多对比检查一下瓶颈在哪里,最好能计算出各部分的绘制时间,用一些性能分析工具也是可以的

9

主题

132

帖子

145

积分

注册会员

Rank: 2

积分
145
QQ
发表于 2011-3-22 09:44:00 | 显示全部楼层

Re:ShadowMap是不是很伤fps

  不知道你显卡好不, 我这边g9600, 场景带shadowmap 500批次+, fps 200 左右.

33

主题

159

帖子

272

积分

中级会员

Rank: 3Rank: 3

积分
272
QQ
 楼主| 发表于 2011-3-22 12:06:00 | 显示全部楼层

Re:ShadowMap是不是很伤fps

我把每帧用的函数,只要是每帧用的并且模块较大的,不管类内类外,全做成函数指针,用指针接口访问.
但确实不清楚效果比压栈快还是慢,函数指针虽然可以常驻内存但是建在堆里,访问堆的速度要慢于访问栈.
望解答

9

主题

132

帖子

145

积分

注册会员

Rank: 2

积分
145
QQ
发表于 2011-3-22 15:49:00 | 显示全部楼层

Re:ShadowMap是不是很伤fps

    栈不用分配内存, 明显快。 访问速度应该是差不多的, 一帧内不要有太多系统级调用,像malloc, free这种。

0

主题

243

帖子

357

积分

中级会员

Rank: 3Rank: 3

积分
357
发表于 2011-3-30 08:46:00 | 显示全部楼层

Re:ShadowMap是不是很伤fps

CPU消耗的优化对shadowmap的效率没太大直接影响吧。。。内存操作函数调用什么的完全可以忽略不计。。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-6-8 05:55

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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