本文整理汇总了C++中GLFrame::MoveUp方法的典型用法代码示例。如果您正苦于以下问题:C++ GLFrame::MoveUp方法的具体用法?C++ GLFrame::MoveUp怎么用?C++ GLFrame::MoveUp使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类GLFrame
的用法示例。
在下文中一共展示了GLFrame::MoveUp方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: setupRC
void setupRC()
{
expCounter = counterLoader();
//BG:
glClearColor(0.0f, 0.0f, 0.0f, 0.0f);
//Enable depth testing so things won't look effed up:
glEnable(GL_DEPTH_TEST);
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_SRC_COLOR);
//Initialize stock shaders from GLTools:
shaderManager.InitializeStockShaders();
//Move cam back:
cameraFrame.MoveForward(-30.0f);
cameraFrame.MoveRight(-5.0f);
cameraFrame.MoveUp(-8.0f);
newDeskButton.init(20, 80, 165, 70, "Assets/button_new_desk165x70.tga");
removeDeskButton.init(208, 80, 175, 67, "Assets/button_remove_desk175x67.tga");
exportButton.init(403, 80, 168, 67, "Assets/button_export168x67.tga");
M3DVector4f deskShine = {0.5, 0.5, 0.5, 1.0};
M3DVector4f deskColor = {0.0f, 0.0f, 0.5f, 1.0f};
hlGrid.init(0.0f, 0.0f, 0.0f, C_DM/2);
cRoom.init();
stuDesks.init(deskColor, deskShine, C_DM/2);
}
示例2: beingAttacked
void LeadingRole::beingAttacked()
{
if(state == normalState)
{
state = beingAttackedState;
ySpeed = 0.5;
xSpeed = 0.3;
}
if(state == beingAttackedState)
{
ySpeed = ySpeed-0.1;
frame.MoveUp(ySpeed);
frameCamera.MoveUp(ySpeed*scaleY);
if(faceRight == true)
{
frame.MoveForward(-xSpeed);
frameCamera.MoveRight(xSpeed*scaleX);
}
else
{
frame.MoveForward(-xSpeed);
frameCamera.MoveRight(-xSpeed*scaleX);
}
bool collision = collisionGround();
if(collision == true)
{
frame.MoveUp(-ySpeed);
frameCamera.MoveUp(-ySpeed*scaleY);
while(collision == true)
{
frame.MoveUp(0.1);
frameCamera.MoveUp(0.1*scaleY);
collision = collisionGround();
}
xSpeed = 0;
ySpeed = 0;
state = normalState;
//cout << "normal" << endl;
}
}
}
示例3: jump
void LeadingRole::jump()
{
if(state == normalState)
{
ySpeed = 0.8;
state = jumpState;
rightHandRotate[0] = 45;
leftLegRotate[0] = leftHandRotate[0] = -rightHandRotate[0];
rightLegRotate[0] = rightHandRotate[0];
}
else if(state == jumpState)
{
ySpeed = ySpeed-0.1;
}
frame.MoveUp(ySpeed);
frameCamera.MoveUp(ySpeed*scaleY);
bool groundCollision = false;
for(int i=0; i<groundObject.size(); i++)
{
//cout << test2.boundingBox.yMin << ";" << groundObject[i].boundingBox.yMax << endl;
if(checkCollisionByObjectInGame(*this, groundObject[i]))
groundCollision = true;
}
if(groundCollision == true)
{
frame.MoveUp(-ySpeed);
frameCamera.MoveUp(-ySpeed*scaleY);
if(ySpeed < 0)
{
state = normalState;
rightHandRotate[0] = 0;
leftLegRotate[0] = leftHandRotate[0] = -rightHandRotate[0];
rightLegRotate[0] = rightHandRotate[0];
return;
}
ySpeed = 0;
}
//glutTimerFunc(33, jump, i+1);
//glutPostRedisplay();
}
示例4: handleInput
void handleInput(CStopWatch &inputTimer)
{
// Exit
if (in.keyPressed(sf::Keyboard::Escape))
exit(0);
// Camera movement
float elapsedTime = inputTimer.GetElapsedSeconds() * 1.5f;
inputTimer.Reset();
if (mouseActive)
{
if (in.keyPressed(sf::Keyboard::W))
cameraFrame.MoveForward(camSpeed*elapsedTime);
if (in.keyPressed(sf::Keyboard::S))
cameraFrame.MoveForward(-camSpeed*elapsedTime);
if (in.keyPressed(sf::Keyboard::A))
cameraFrame.MoveRight(camSpeed*elapsedTime);
if (in.keyPressed(sf::Keyboard::D))
cameraFrame.MoveRight(-camSpeed*elapsedTime);
if (in.keyPressed(sf::Keyboard::Space))
cameraFrame.MoveUp(camSpeed*elapsedTime);
if (in.keyPressed(sf::Keyboard::LControl))
cameraFrame.MoveUp(-camSpeed*elapsedTime);
}
else
{
if (in.keyPressed(sf::Keyboard::W))
cameraFrame.MoveUp(camSpeed*elapsedTime);
if (in.keyPressed(sf::Keyboard::S))
cameraFrame.MoveUp(-camSpeed*elapsedTime);
if (in.keyPressed(sf::Keyboard::A))
cameraFrame.MoveRight(camSpeed*elapsedTime);
if (in.keyPressed(sf::Keyboard::D))
cameraFrame.MoveRight(-camSpeed*elapsedTime);
}
}
示例5: SetupRC
// This function does any needed initialization on the rendering
// context.
void SetupRC(void)
{
// Background
glClearColor(0.0f, 0.0f, 0.0f, 1.0f );
glEnable(GL_DEPTH_TEST);
viewFrame.MoveForward(-155.0f);
viewFrame.MoveUp(20.0f);
grassShader = gltLoadShaderPairWithAttributes("Grass.vs", "Grass.fs",
1,
GLT_ATTRIBUTE_VERTEX, "vVertex");
locMVP = glGetUniformLocation(grassShader, "mvpMatrix");
glUseProgram(grassShader);
glUniform1i(glGetUniformLocation(grassShader, "length_texture"), 0);
glUniform1i(glGetUniformLocation(grassShader, "orientation_texture"), 1);
glUniform1i(glGetUniformLocation(grassShader, "grasspalette_texture"), 2);
glUniform1i(glGetUniformLocation(grassShader, "grasscolor_texture"), 3);
glUniform1i(glGetUniformLocation(grassShader, "bend_texture"), 4);
static const GLfloat grass_blade[] =
{
-0.3f, 0.0f,
0.3f, 0.0f,
-0.20f, 1.0f,
0.1f, 1.3f,
-0.05f, 2.3f,
0.0f, 3.3f
};
// Greate a vertex array object and a vertex buffer for the quad
// including position and texture coordinates
glGenVertexArrays(1, &vao);
glBindVertexArray(vao);
glGenBuffers(1, &vertexBuffer);
glBindBuffer(GL_ARRAY_BUFFER, vertexBuffer);
glBufferData(GL_ARRAY_BUFFER, sizeof(grass_blade), grass_blade, GL_STATIC_DRAW);
glVertexAttribPointer(GLT_ATTRIBUTE_VERTEX, 2, GL_FLOAT, GL_FALSE, 0, NULL);
glEnableVertexAttribArray(GLT_ATTRIBUTE_VERTEX);
//
glGenTextures(1, &length_texture);
glBindTexture(GL_TEXTURE_2D, length_texture);
GLint w, h, c;
GLenum f;
void * bits = gltReadTGABits("length.tga", &w, &h, &c, &f);
glTexImage2D(GL_TEXTURE_2D, 0, GL_RED, w, h, 0, GL_BGR, GL_UNSIGNED_BYTE, bits);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
free(bits);
glGenTextures(1, &orientation_texture);
glActiveTexture(GL_TEXTURE1);
glBindTexture(GL_TEXTURE_2D, orientation_texture);
bits = gltReadTGABits("orientation.tga", &w, &h, &c, &f);
glTexImage2D(GL_TEXTURE_2D, 0, GL_RED, w, h, 0, GL_BGR, GL_UNSIGNED_BYTE, bits);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
free(bits);
glGenTextures(1, &grasspalette_texture);
glActiveTexture(GL_TEXTURE2);
glBindTexture(GL_TEXTURE_1D, grasspalette_texture);
glTexImage1D(GL_TEXTURE_1D, 0, GL_RGB8, 1024, 0, GL_RGB, GL_UNSIGNED_BYTE, grasspalette_data);
glTexParameteri(GL_TEXTURE_1D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_1D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
glGenTextures(1, &grasscolor_texture);
glActiveTexture(GL_TEXTURE3);
glBindTexture(GL_TEXTURE_2D, grasscolor_texture);
bits = gltReadTGABits("color.tga", &w, &h, &c, &f);
glTexImage2D(GL_TEXTURE_2D, 0, GL_RED, w, h, 0, GL_BGR, GL_UNSIGNED_BYTE, bits);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
free(bits);
glGenTextures(1, &bend_texture);
glActiveTexture(GL_TEXTURE4);
glBindTexture(GL_TEXTURE_2D, bend_texture);
bits = gltReadTGABits("bend.tga", &w, &h, &c, &f);
glTexImage2D(GL_TEXTURE_2D, 0, GL_RED, w, h, 0, GL_BGR, GL_UNSIGNED_BYTE, bits);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
free(bits);
}
示例6: SetupRC
///////////////////////////////////////////////////////////////////////////////
// This function does any needed initialization on the rendering context.
// This is the first opportunity to do any OpenGL related tasks.
void SetupRC()
{
GLbyte *pBytes;
GLint nWidth, nHeight, nComponents;
GLenum format;
shaderManager.InitializeStockShaders();
// Black background
glClearColor(0.0f, 0.0f, 0.0f, 1.0f );
glEnable(GL_DEPTH_TEST);
glLineWidth(2.5f);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
glHint(GL_LINE_SMOOTH_HINT, GL_NICEST);
transformPipeline.SetMatrixStacks(modelViewMatrix, projectionMatrix);
cameraFrame.MoveForward(-15.0f);
cameraFrame.MoveUp(6.0f);
cameraFrame.RotateLocalX(float(m3dDegToRad(20.0f)));
MakeCube(cubeBatch);
MakeFloor(floorBatch);
// Make top
topBlock.Begin(GL_TRIANGLE_FAN, 4, 1);
topBlock.Normal3f(0.0f, 1.0f, 0.0f);
topBlock.MultiTexCoord2f(0, 0.0f, 0.0f);
topBlock.Vertex3f(-1.0f, 1.0f, 1.0f);
topBlock.Normal3f(0.0f, 1.0f, 0.0f);
topBlock.MultiTexCoord2f(0, 1.0f, 0.0f);
topBlock.Vertex3f(1.0f, 1.0f, 1.0f);
topBlock.Normal3f(0.0f, 1.0f, 0.0f);
topBlock.MultiTexCoord2f(0, 1.0f, 1.0f);
topBlock.Vertex3f(1.0f, 1.0f, -1.0f);
topBlock.Normal3f(0.0f, 1.0f, 0.0f);
topBlock.MultiTexCoord2f(0, 0.0f, 1.0f);
topBlock.Vertex3f(-1.0f, 1.0f, -1.0f);
topBlock.End();
// Make Front
frontBlock.Begin(GL_TRIANGLE_FAN, 4, 1);
frontBlock.Normal3f(0.0f, 0.0f, 1.0f);
frontBlock.MultiTexCoord2f(0, 0.0f, 0.0f);
frontBlock.Vertex3f(-1.0f, -1.0f, 1.0f);
frontBlock.Normal3f(0.0f, 0.0f, 1.0f);
frontBlock.MultiTexCoord2f(0, 1.0f, 0.0f);
frontBlock.Vertex3f(1.0f, -1.0f, 1.0f);
frontBlock.Normal3f(0.0f, 0.0f, 1.0f);
frontBlock.MultiTexCoord2f(0, 1.0f, 1.0f);
frontBlock.Vertex3f(1.0f, 1.0f, 1.0f);
frontBlock.Normal3f(0.0f, 0.0f, 1.0f);
frontBlock.MultiTexCoord2f(0, 0.0f, 1.0f);
frontBlock.Vertex3f(-1.0f, 1.0f, 1.0f);
frontBlock.End();
// Make left
leftBlock.Begin(GL_TRIANGLE_FAN, 4, 1);
leftBlock.Normal3f(-1.0f, 0.0f, 0.0f);
leftBlock.MultiTexCoord2f(0, 0.0f, 0.0f);
leftBlock.Vertex3f(-1.0f, -1.0f, -1.0f);
leftBlock.Normal3f(-1.0f, 0.0f, 0.0f);
leftBlock.MultiTexCoord2f(0, 1.0f, 0.0f);
leftBlock.Vertex3f(-1.0f, -1.0f, 1.0f);
leftBlock.Normal3f(-1.0f, 0.0f, 0.0f);
leftBlock.MultiTexCoord2f(0, 1.0f, 1.0f);
leftBlock.Vertex3f(-1.0f, 1.0f, 1.0f);
leftBlock.Normal3f(-1.0f, 0.0f, 0.0f);
leftBlock.MultiTexCoord2f(0, 0.0f, 1.0f);
leftBlock.Vertex3f(-1.0f, 1.0f, -1.0f);
leftBlock.End();
// Create shadow projection matrix
GLfloat floorPlane[] = { 0.0f, 1.0f, 0.0f, 1.0f};
m3dMakePlanarShadowMatrix(shadowMatrix, floorPlane, vLightPos);
// Load up four textures
glGenTextures(4, textures);
// Wood floor
pBytes = gltReadTGABits("floor.tga", &nWidth, &nHeight, &nComponents, &format);
glBindTexture(GL_TEXTURE_2D, textures[0]);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
glTexImage2D(GL_TEXTURE_2D,0,nComponents,nWidth, nHeight, 0,
format, GL_UNSIGNED_BYTE, pBytes);
//.........这里部分代码省略.........
示例7: draw
void LeadingRole::draw()
{
if(timeCount%100 == 0 && health<maxHealth)
{
health+=10;
}
if(state == jumpState)
{
jump();
}
else if(state == beingAttackedState)
{
beingAttacked();
}
else if(state == attackState1 || state == attackState2)
{
attack();
}
else
{
ySpeed = ySpeed-0.1;
frame.MoveUp(ySpeed);
frameCamera.MoveUp(ySpeed*scaleY);
bool groundCollision = collisionGround();
if(groundCollision == true)
{
frame.MoveUp(-ySpeed);
frameCamera.MoveUp(-ySpeed*scaleY);
ySpeed = 0;
}
}
if(moveS == 0)
{
walkFoward(0.15f);
}
else if(moveS == 1)
{
walkFoward(-0.15f);
}
glEnable(GL_TEXTURE_2D);
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA);
extern GLuint textures[1];
int textureNum = getTextureNumMap()["leadingRole"];
glBindTexture(GL_TEXTURE_2D, textures[textureNum]);
glPushMatrix();
//health line
glPushMatrix();
glTranslatef(0, 1, -0.5);
glColor3f(1, 0, 0);
double lineLength = 1.2*health/maxHealth;
glBegin(GL_QUADS);
glVertex3d(0, -0.1, 0);
glVertex3d(0, -0.1, lineLength);
glVertex3d(0, 0.1, lineLength);
glVertex3d(0, 0.1, 0);
glEnd();
glColor3f(1, 1, 1);
glPopMatrix();
glmDraw(head, GLM_SMOOTH | GLM_TEXTURE);
glPushMatrix();
glTranslatef(0.045, -0.38, -0.32);
glmDraw(body, GLM_SMOOTH | GLM_TEXTURE);
glPopMatrix();
glPushMatrix();
glTranslatef(-0.325,-0.68,-0.09);
glScalef(0.8, 0.8, 0.8);
glTranslatef(0.2, 0.3, 0);
glRotatef(rightHandRotate[0], 1, 0, 0);
glTranslatef(-0.2, -0.3, 0);
glmDraw(rightHand, GLM_SMOOTH | GLM_TEXTURE);
glPushMatrix();
glTranslatef(-0.025,-0.33,0.75);
glmDraw(axe, GLM_SMOOTH | GLM_TEXTURE);
glPopMatrix();
glPopMatrix();
glPushMatrix();
glTranslatef(0.33,-0.036,-0.07);
glScalef(1.47, 1.47, 1.47);
glTranslatef(-0, -0.25, 0);
glRotatef(leftHandRotate[0], 1, 0, 0);
glTranslatef(0, 0.25, 0);
glmDraw(leftHand, GLM_SMOOTH | GLM_TEXTURE);
//.........这里部分代码省略.........