首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网络游戏 >

[d3d]怎样使用"+=1"语句解决方案

2012-05-09 
[d3d]怎样使用+1语句在渲染过程中,我要检测到某个条件成立时,让一个变量在原基础上加1,如下面这样:if (

[d3d]怎样使用"+=1"语句
在渲染过程中,我要检测到某个条件成立时,让一个变量在原基础上加1,如下面这样:

if ( a = true ) var += 1 ;

可是,条件满足后,变量每帧都会增加1,怎样使它只增加一次?
谢谢!

[解决办法]
不会做游戏,但这里比较笨的方法是再用一个变量,表示var是否在某帧加1,如果加了以后就不再加
[解决办法]
如果情况多,可以做一个结构
struct _A
{
 bool add1;
 int var;
}

add1 用来标记是否不需要加了,var用来+1
然后做一个 map 用来标记 map<key, _A> , key是你的用来分类的对象
[解决办法]
只加1次,那用BOOL不更好?
[解决办法]
需要再加一个变量,标记是否已经加过了。

我感觉你需要的并不是 “检测到某个条件成立时,让一个变量在原基础上加1”
如果是条件成立就加1,你每帧都加1肯定是对的。


你需要的应该是 “检测到某个条件由不成立变为成立时,让一个变量在原基础上加1”
保存上次的状态,如果上次状态为不成立,当前为成立是加1,然后把当前状态付给上次的状态。
[解决办法]
你咋吧逻辑和渲染掺乎到一块了?
逻辑更新里加一后设个条件不再更新就是了。

热点排行