Пример #1
0
void Camera::updateFPS(float timeDelta) {
    FPS++;
    if (getMilliSec() - lastTimeMS >= 1000) {
        lastTimeMS = getMilliSec();
        lastFPS = FPS;
        FPS = 0;
    }
}
Пример #2
0
void UIButton::update(float timeDelta) {
    float _alpha = mAlpha;
    float _height = mHeight;
    float _width = mWidth;

    mTimeAccu += timeDelta;

    if (isAnimation) {
        long curTimeMs = getMilliSec();
        float factor = (float)(curTimeMs - timeMsAniStart) / timeMsTotalForAni;
        if (aniStatus == UI_ANIM_IN) {
            _alpha = mAlpha * factor;
            _height = mHeight * sin(factor * 90 * PI / 180);
            _width = mWidth * sin(factor * 90 * PI / 180);
            if (curTimeMs - timeMsAniStart >= timeMsTotalForAni) {
                isAnimation = false;
            }
        }
        if (aniStatus == UI_ANIM_OUT) {
            factor = 1.0f - factor;
            _alpha = mAlpha * factor;
            _height = mHeight * sin(factor * 90 * PI / 180);
            _width = mWidth * sin(factor * 90 * PI / 180);
            if (curTimeMs - timeMsAniStart >= timeMsTotalForAni) {
                isAnimation = false;
                mIsVisible = false;
            }
        }
    } else if (nodeStatus == NODE_HOVER) {
        _height = mHeight * (0.96f + 0.04f * cos(mTimeAccu / 90.0f));
        _width = mWidth * (0.96f + 0.04f * cos(mTimeAccu / 90.0f));
    }

    uint32_t textureID = -1;
    if (nodeStatus == UINode::NODE_IDLE)
        textureID = textureID_idle;
    else if (nodeStatus == UINode::NODE_HOVER)
        textureID = textureID_hover;
    else if (nodeStatus == UINode::NODE_PRESS)
        textureID = textureID_press;

    float offset_x = (mWidth - _width) / 2.0f;
    float offset_y = (mHeight - _height) / 2.0f;

    vertices[0].x = mPosX + offset_x;
    vertices[0].y = mPosY + offset_y;
    vertices[1].x = mPosX + offset_x + _width;
    vertices[1].y = mPosY + offset_y;
    vertices[2].x = mPosX + offset_x + _width;
    vertices[2].y = mPosY + offset_y + _height;
    vertices[3].x = mPosX + offset_x;
    vertices[3].y = mPosY + offset_y + _height;

    if (nodeStatus == NODE_HOVER && mTimeAccu >= 600) {
        strcpy(UI::uiHintText, mText);
        UI::hintTextPosX = UI::getMouseX();
        UI::hintTextPosY = UI::getMouseY();
    }
}
Пример #3
0
/* get time in string format
 * default format is:
 *		"hh:mm::ss'ddd",
 * where:
 *		hh - hour,
 *		mm - minures,
 *		ss - seconds,
 *		ddd - miliseconds.
 */
rfc::String rfc::Time::getTimeString() const {
	/*
	if (isInfinity)
		return QString("infinity");
	*/

	return
		String::toString(getHours())	+ QString(":")
	+	String::toString(getMinutes())	+ QString(":")
	+	String::toString(getSeconds())	+ QString("'")
	+	String::toString(getMilliSec());
} /* end of 'Time::getTimeString' function */
Пример #4
0
Camera::Camera() {
    anim = false;
    distance = 10.0f;
    distanceTo = distance;
    distanceDelta = 0.0f;
    rotate = Quaternion::fromEuler(0, 0, 0);
    camCenter = Vector3(0, 0, 0);
    lastTimeMS = getMilliSec();
    FPS = 0;
    lastFPS = 0;
    ANIM_TIME_MS = 300.0;
    animTime = 0.0f;
    rotChange = false;
    centerChange = false;
    distChange = false;
    std::cout << "Camera Camera()" << std::endl;
}
Пример #5
0
void UINode::appearIn(float timeMs)
{
    isAnimation = true;
    timeMsAniStart = getMilliSec();
    timeMsTotalForAni = timeMs;
    aniStatus = UI_ANIM_IN;
    mIsVisible = true;
    if(mChildNodes.size()>0)
    {
        for(mChildIter Child = mChildNodes.begin(); Child != mChildNodes.end(); Child++)
        {
            (*Child)->isAnimation = isAnimation;
            (*Child)->timeMsAniStart = timeMsAniStart;
            (*Child)->timeMsTotalForAni = timeMsTotalForAni;
            (*Child)->aniStatus = aniStatus;
            (*Child)->mIsVisible = mIsVisible;
        }
    }
}
Пример #6
0
void UINode::appearOut(float timeMs)
{
    isAnimation = true;
    timeMsAniStart = getMilliSec();
    timeMsTotalForAni = timeMs;
    aniStatus = UI_ANIM_OUT;
    nodeStatus = NODE_IDLE;
    std::cout<<"UINode::appearOut "<<mChildNodes.size()<<std::endl;
    if(mChildNodes.size()>0)
    {
        for(mChildIter Child = mChildNodes.begin(); Child != mChildNodes.end(); Child++)
        {
            (*Child)->isAnimation = isAnimation;
            (*Child)->timeMsAniStart = timeMsAniStart;
            (*Child)->timeMsTotalForAni = timeMsTotalForAni;
            (*Child)->aniStatus = aniStatus;
            (*Child)->nodeStatus = NODE_IDLE;
        }
    }
}